フローのリソースと変数の概要
学習の目的
この単元を完了すると、次のことができるようになります。
- Flow Builder で使用できるリソースを挙げる。
- フロー変数とは何かを説明する。
始める前に
このモジュールを受講する前に、「簡単なフローの作成」プロジェクトを完了する必要があります。ここで説明する概念は、そのプロジェクトで作成したフローに依存しています。
フローのリソース
フローのリソースとは、メールテンプレートや数式の差し込み項目に似たプレースホルダのことです。メールの先頭に「Hi, {!$User.FirstName}」 (こんにちは、{!$User.FirstName} さん) と記述したとします。{!$User.FirstName} はプレースホルダなので、メールが送信されるときにはユーザの実際の名が表示されます。フローの各ステップ (キャンバスに追加される要素) で、手動で値を入力する代わりにフローのリソースを参照できます。
Flow Builder で使用できる基本的なフローリソースの種類を見ていきましょう。
定数: 税率などの固定値を表します。選択肢、選択リスト選択肢セット、またはレコード選択肢セット画面コンポーネント内のオプションを表します。選択肢リソースでは、各オプションの表示ラベルと値を明示的に設定します。
一方、選択肢セットでは、組織内の絞り込まれたレコードのリストを使用するか、選択リスト (または複数選択リスト) 項目の値を使用して選択肢が生成されます。
例: [New Contact (新規取引先責任者)] フローの画面では、ユーザは関連する取引先を選択するように促されます。
組織内の各取引先に個別のオプションを作成する代わりに、レコード選択肢セットによってオプションが生成されます。
組織内の各取引先レコードにオプションを生成するために、レコード選択肢セットではデフォルトの検索条件が使用されます。すべての選択肢は 2 つのコンポーネントで構成されます。画面コンポーネントに表示される表示ラベルと、その選択肢がフローの別の場所で参照されるときに使用される値です。このレコード選択肢セットは、画面コンポーネントに各オプションの取引先名が表示されるように設定されています。
フローユーザが取引先を選択すると、次のことが実行されます。
- 画面コンポーネントの値が選択肢の値、つまり選択された取引先 ID に設定される (1)。
- 選択された取引先 ID が {!contact} レコード変数に保存される (2)。
変数について
変数という言葉を聞くと、代数の授業や Apex などの手ごわそうな言語でのコード記述を思い浮かべるかもしれませんが、変数はフローを作成するときに理解しておくべき重要なものです。ご安心ください。プログラミング (または数学) の経験は必要ありません。
簡単に言えば、変数はまだわかっていない値のためのプレースホルダです。すべてのフローリソースはプレースホルダですが、変数のみがフローの途中に変更できます。「変数」と呼ばれる所以です。実際、Flow Builder には、変数の値を更新するためだけの割り当て要素が含まれています。
変数を作成する状況は?
特定の条件に基づいて値が変化する可能性がある場合に変数を使用します。値が、フローが実行されるレコードによって異なる場合や、フロー内のロジックの結果によって異なる場合などです。
Salesforce レコードの項目を直接参照することはできないため、項目値は変数を使用してフロー内に保存する必要があります。フローにデータを取得できるフロー要素 ([レコードを取得] 要素や [Chatter に投稿] コアアクション) では、常にデータを変数に保存するように促されます。
例: 「割引計算機能の構築」プロジェクトでは、フローによって商談の [割引] 項目を更新します。ただし、すべての商談に同じ割引が適用されるわけではなく、割引は関連する取引先の収益によって決まります。変数は、割引率のプレースホルダとして機能し、フローロジックに基づいて異なるパーセントに設定されます。次にフローはその変数を使用して商談の割引を更新します。
これで Flow Builder で使用できるリソースについて理解が深まったので、次は実際に変数を作成してみましょう。