Skip to main content

Integration Procedure Designer の詳細を知る

学習の目的

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

  • 管理パッケージ用 Omnistudio の Integration Procedure Designer について説明する。
  • Group 要素と Action 要素の操作方法を説明する。

Integration Procedure Designer の概要

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

では、Integration Procedure Designer の機能を見ていきましょう。最初はパネルとペインです。 

[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 の要素

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

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

Group

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

ブロックの種類

実行する内容

Cache Block 

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

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

Conditional Block

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

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

Loop Block

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

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

Try-Catch Block

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

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

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

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

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

Actions

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

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

これらのアクションについては、Salesforce ヘルプの「Integration Procedure Action」を参照してください。

このスクリーンショットの例では、Response Action 要素を使用して、コール元のツールにどのデータを返すべきかを Integration Procedure に指示しています。Response Action によって返されるデータが制限され、Omnistudio Data Mapper Transform Action のノードにあるデータのみが送信されます。

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

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

リソース

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

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

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