Skip to main content

Integration Procedure Designer の詳細を知る

学習の目的

この単元を完了すると、次のことができるようになります。

  • Integration Procedure Designer とは何かを説明する。
  • Group 要素と Action 要素の操作方法を説明する。

Integration Procedure Designer の概要

OmniStudio の Integration Procedure Designer では、さまざまな要素を [Structure (構造)] パネルにドラッグし、その同じ画面で各要素のプロパティを設定するという方法で、Integration Procedure をすばやく設定できます。(効率的であることはすでに述べました)。

では、Integration Procedure Designer の機能を見ていきましょう。画期的なパネルやペインをご紹介します。 

メモ

このモジュールの手順はデモのみを目的としています。OmniStudio は、Trailhead Playground 組織では有効化されません。

[AVAILABLE COMPONENTS (コンポーネント)] パネル

[AVAILABLE COMPONENTS (コンポーネント)] パネルには [Groups (グループ)] 要素と [Actions (アクション)] 要素が表示されます。

[AVAILABLE COMPONENTS (コンポーネント)] パネル

[STRUCTURE (構造)] パネル

[AVAILABLE COMPONENTS (コンポーネント)] パネルから [STRUCTURE (構造)] パネルに要素をドラッグアンドドロップします。

[STRUCTURE (構造)] パネル

要素の [PROPERTIES (プロパティ)] ペイン

要素ごとに [PROPERTIES (プロパティ)] ペインがあり、各要素の JavaScript オブジェクト表記 (JSON) を編集するためのリンクが設定されています。

[PROPERTIES (プロパティ)] ペインと [Edit as JSON (JSON として編集)] 機能

[PREVIEW (プレビュー)] ペイン

[PREVIEW (プレビュー)] ペインでは、パラメーターを入力して Integration Procedure を実行し、正しく設定されているかどうかを確認できます。トラブルシューティングする場合は、[Errors/Debug Output (エラー/デバッグの出力)] を使用します。

[PREVIEW (プレビュー)] ペイン

Integration Procedure の要素

OmniScript や OmniStudio FlexCard の要素の使い方をすでにご存知かもしれませんが、Integration Procedure の要素は若干異なります。ここの要素はバックグラウンドで処理され、ユーザーが操作するものはありません。

実際にどのようなことが行われるのか見てみましょう。Integration Procedure の要素は Group と Action のいずれかです。 

Group

Integration Procedure では、関連するステップを Block 内のユニットとして分類できます。Integration Procedure には次の Block 種別があります。

ブロックの名前

実行する内容

Cache Block 

  • この Block 内のステップの出力をセッションまたは組織のキャッシュに保存して、すばやく取得できるようにする。
  • アクセス頻度は高いが、更新頻度の低いデータを保存する。この方法により、データベースへのラウンドトリップが減少し、パフォーマンスが向上する。
  • キャッシュせずにデータを更新できる。
  • キャッシュされたさまざまなデータに異なる有効期限を設定できる。

Integration Procedure で売上高は毎週キャッシュされるが、株価はキャッシュされない。

Conditional Block (ごく基本的な Block 種別)。

  • 指定した条件が true の場合に、Block を実行する。または、Block 内のステップを相互に排他的な一連のステップとして扱う。
  • 分岐ワークフロー (OmniScript の条件付きビューのように機能する) をサポートする。

価格と都道府県コードに基づいて、Integration Procedure が消費税を計算し、合計価格を報告する。 

Loop Block

  • データ配列の項目を反復処理し、項目ごとにこの Block 内の Action が繰り返されるようにする (各項目に個々の Action を設定しなくてもよい)。

ユーザーがカートに商品を追加するシナリオでは、Loop Block 内の 1 つの Remote Action で 4 つの商品をすべて追加できます。Loop Block がない場合は、4 つの商品をカートに追加するために、4 つの個別の Remote Action を実行する必要があります。

Try-Catch Block

  • Block 内でステップの実行を「試行」し、ステップが失敗した場合はエラーを「検出」する。
  • Block 内のステップが失敗した場合は、指定した出力を返すか、Apex クラスをコールする。

Integration Procedure で指定した LastName の取引先責任者を作成または削除する。LastName 項目が空白の場合はエラーメッセージが返される。

Integration Procedure の Group 要素

Block は他の Block 内にネストできます。たとえば、Loop Block を Try Catch Block または Cache Block 内にネストできます。

どの Block にも Execution Conditional Formula (実行条件式) という共通のプロパティがあります。 

  • この式が true に評価された場合または定義されていない場合に、Block が実行されます。
  • false に評価された場合は、Block がスキップされます。

Actions

次は、Action 要素を見ていきましょう。

Action 要素は各 Integration Procedure に欠かせないビルディングブロックです。アクションによって、データ値の設定、関数の実行、Data Mapper のコール、Apex クラスの呼び出し、メールの送信、REST エンドポイントの呼び出し、他の Integration Procedure の実行などを行うことができます。

また、ブロックを使用して、条件付き実行、キャッシュ、リスト処理、エラー処理のアクションをグループ化することもできます。アクションを追加するには、パレット (以下を参照) からアクションを Integration Procedure Structure の [Structure (構造)] パネルにドラッグします。

Integration Procedure の Action 要素

どの要素を使用するかはデータソースによって異なりますが、必要に応じて最後に Response Action を使用するようにしてください。Response Action 要素は、コール元のツールにどのデータを返すべきかを Integration Procedure に指示します。 

次の例では、Response Action によって返されるデータが制限され、Data Mapper Transform Action のノードにあるデータのみが送信されます。

Response Action で、Data Mapper Transform Action のノードにあるデータのみが送信される。

Integration Procedure Designer の詳細を学習したところで、いよいよ実際の動作を確認し、設計プロセスを順番に見ていきましょう。楽しみですよね! 次の単元では具体的なシナリオもいくつかご紹介します。 

Salesforce ヘルプで Trailhead のフィードバックを共有してください。

Trailhead についての感想をお聞かせください。[Salesforce ヘルプ] サイトから新しいフィードバックフォームにいつでもアクセスできるようになりました。

詳細はこちら フィードバックの共有に進む