Flow Builder の概要
学習の目的
この単元を完了すると、次のことができるようになります。
- フローのビルディングブロックについて説明する。
- フロー要素のカテゴリを挙げる。
Flow Builder のハンズオン
今すぐ Trailhead Playground を起動し、この単元の Flow Builder を操作する手順を一緒に実行してみましょう。Trailhead Playground を見つけるには、ハンズオン Challenge のある単元またはバッジ (このバッジの「フロー変数について」単元など) を開き、Challenge までスクロールダウンして、[Launch (起動)] をクリックします。たとえば、ハンズオン Challenge はこのバッジの「フロー変数について」単元で見つけることができます。
Flow Builder ユーザーインターフェース
フロー作成作業は Flow Builder で行います。
Flow Builder にアクセスするには、[設定] に移動して、[クイック検索] ボックスに Flows
と入力し、[フロー] を選択します。フローを作成するために、[New Flow (新規フロー)] をクリックします。その後、[Start from Scratch (最初から開始)] を選択して [Next (次へ)] をクリックします。
[Select Type (種別の選択)] ウィンドウには、作成可能なフローの種別が表示されます。この種別のほとんどに聞き覚えがありませんか? 各種別は、このモジュールで前述した自動化タイプと一致しています。
フロー種別を選択して、[Create (作成)] をクリックすると Flow Builder が表示されます。では、その構成要素を見てみていきましょう。
ツールボックス (1)
ツールボックスには、フローで作成した要素とリソースが一覧表示されています。フローで使用する変数、数式、選択肢などのリソースを作成することもできます。
キャンバス (2)
キャンバスは、要素を追加してフローを作成する作業エリアです。要素をキャンバスに追加すると、フローの図が作成されます。
ボタンバー (3)
ボタンバーにはフローに関する次のような情報が表示されます。
- フローが有効かどうか
- フローが保存されたのはどれぐらい前か
- フローに警告やエラーがあるかどうか
また、ボタンバーにはフローを制御できる次の機能も用意されています。
-
を使用してツールボックスを表示します。ツールボックスを非表示にするには、再度クリックします。
-
[要素を選択] を使用して複数の要素を選択すると、その要素をフロー内の別の場所にコピーできます。
-
[Undo (元に戻す)] および [Redo (やり直し)]
-
をクリックすると、エラーと警告メッセージが表示されます。もう一度クリックすると [Errors and Warnings (エラーと警告)] ペインが非表示になります。
-
を使用して [Version Properties (バージョンのプロパティ)] ウィンドウを開きます。ここで、このフローバージョンの名前を変更し、その実行方法を設定できます。
-
[自動レイアウト] / [自由形式] を使用して、フローのレイアウトスタイルを選択します (追加機能があるため、可能な限り [自動レイアウト] 使用することをお勧めします。また、このバッジのサンプルはすべて [自動レイアウト] を使用しています)。
- レコードトリガーフローで、[テストを表示] を使用して、フロー実行時に自動的に実行されるテストシナリオを作成します。このようなテストでは、フローが意図したとおりに動作していることを確認し、そうでない場合はカスタムエラーメッセージが表示されます。
-
[Save (保存)] と [Save as a New Version (新しいバージョンとして保存)]
-
[有効化] を使用して、フローの現在のバージョンをユーザーに表示するバージョンにします (1 つのフローに複数のバージョンを設定できるため、最新バージョンでなくても特定のバージョンを有効にすることができます)。
最後に、ボタンバーにはフローを実行するための 2 つのボタン ([実行] と [デバッグ]) もあります。
-
[実行] で、開いているフローの最後に保存されたバージョンを実行します。まだ保存していない変更がある場合は、その変更は実行には含まれません。
-
[デバッグ] では、フローの最後に保存されたバージョンにサンプルデータを入力し、実行時の動作を確認しながらテストすることができます。これにより、フローが期待どおりに動作していることを確認できます。
フローのビルディングブロック
フローには、要素、コネクタ、リソースという 3 つのビルディングブロックが使用されています。
-
要素は、処理を実現するためのキャンバス上のノードです。要素をキャンバスに追加するには をクリックします。
-
コネクタ は実行時にフローがたどるパスを定義するキャンバス上の線です。次にどの要素を実行すべきかをフローに指示します。
-
リソース は、キャンバス上には表示されず、フローの要素で参照されるコンテナです。各リソースには、値または値に解決される数式が含まれています。たとえば、フローで取引先の ID を検索して、その ID を変数に保存し、後でその変数を使用して更新する取引先をフローに指示できます。
要素
各要素はフローに実行する処理を指示するステップであり、要素の種別ごとに異なる処理が実行されます。フロー要素には、次の 3 つの種別があると考えてください。
要素種別 |
説明 |
---|---|
インタラクション |
ユーザーと対話する
|
データ |
データと対話する
|
ロジック |
フロー自体と対話する |
要素の各種別を詳しく見ていきましょう。
インタラクション要素
フローでは、画面上に質問や情報を提示したり、さまざまな種類のコミュニケーションを送信したりすることでユーザーと対話できます。画面要素とアクション要素を使用すると、このようなインタラクションが可能になります。
画面要素では、ユーザーにデータを表示することやユーザーから情報を収集することができます。標準コンポーネントの宝庫から選択して、ユーザーがフローとやり取りする方法をカスタマイズします。テキストや画像を表示したり、ユーザーにテキストを入力するように求めたり、ユーザーにラジオボタンやドロップダウンから選択させたり、他にもさまざまなことができます。さらに、画面要素を使用して、ユーザーにファイルのアップロードを要求することも可能です。
その上、フロー画面でさらにインタラクションオプションが必要な場合は、サードパーティのコンポーネントをインストールしたり、開発者と協力してカスタムコンポーネントを作成したりすることもできます。
アクション要素ではさまざまなことが実行できますが、特筆すべきなのは、フローでユーザー、同僚、顧客、さらには外部システムにまで働きかけることが可能である点です。この要素では、Chatter 投稿の作成、メールの送信、レコードの承認申請、モバイル通知の送信、送信メッセージのプッシュを行うことができます。また、フローでさらに操作を実行する必要がある場合は、開発者に Apex でカスタムアクションを作成してもらうことも可能です。
最後に、サブフロー要素を使用すると、自動起動されたフローを他のフローから呼び出すことができます。この要素は、ユーザーと対話するのではなく、他のフローと対話します。
データ要素
データ要素は、フローに Salesforce データベース内のレコードと対話するように指示します。データ要素を使用して、Salesforce レコードの検索、作成、更新、削除を行います。一度に 1 つのレコードを操作することも、一度に多数のレコードを操作することもできます。
ロジック要素
必要なデータを収集したら、どうすればよいでしょうか? ロジック要素を使用すると、そのデータを評価し、ビジネス要件に従って操作できます。実行できる操作は、次のとおりです。
- フローがたどることのできる複数のパスを作成し、フローが各パスをたどる際の条件を定義する。
- 後でフローで使用できるように、一時データを更新する。
- ループパスを作成して、データのグループを処理する。
- 指定された時刻までフローを一時停止する。
- データのコレクションのコンテンツや順序を変更する。
ロジックはフローでのみ機能します。ロジック要素を使用してフロー内のデータを変更すると、結果データにアクセスできるのはフローの実行が終了するまでの間のみになります。データをフローの外部に保存し、フローの実行後にアクセスするには、データ要素またはデータを外部システムに送信するアクションを使用します。
コネクタ
コネクタは、実行時にフローがたどるパスを定義します。次にどの要素を実行すべきかをフローに指示します。コネクタには、特定の状況下でフローに異なるパスをたどるように指示するさまざまなタイプがありますが、ほとんどの場合、フローはコネクタに従ってある要素から次の要素へと進みます。このようなその他のコネクタについては、他のフローバッジで学習できます。
フローのリソース
リソースは、フローの過程で参照するコンテナです。リソースは必要に応じて作成することができますが、多くの要素で自動的に作成されます。各リソースには、1 つの値、数式、書式設定済みのテキストブロック、すべての値を含むレコード全体、またはレコードのコレクションを保存できます。変数と呼ばれる最も一般的なリソース種別については、次の単元で詳しく説明します。
キーボードショートカット
キーボードショートカットを使用すると、フローをすばやく操作できます。Windows のキーボードショートカットは次のとおりです。
アクション |
キーボードショートカット |
---|---|
ズームイン |
CTRL + = キー |
ズームアウト |
CTRL + - キー |
サイズに合わせてズーム |
CTRL + Alt + 1 キー |
ズームして表示 |
CTRL + Alt + 0 キー |
Switch focus to another panel (別のパネルにフォーカスを切り替え) |
F6 |
Mac のキーボードショートカットは次のとおりです。
アクション |
キーボードショートカット |
---|---|
ズームイン |
Command + = キー |
ズームアウト |
Command + - キー |
サイズに合わせてズーム |
Command + Option + 1 キー |
ズームして表示 |
Command + Option + 0 キー |
Switch focus to another panel (別のパネルにフォーカスを切り替え) |
F6 |
フローの明確化
フローで利用する要素の種別の概要を学んだところで、Flo からの要望に戻りましょう。彼女は今すぐ Flow Builder で作業したい衝動に駆られていますが、フローの作成を開始する前に、要件を計画に対応付けることが最善であるとわかっています。
要件 |
使用する要素の種類 |
---|---|
ユーザーから情報 (取引先責任者の名、姓、取引先) を収集し、一致する取引先責任者が存在する場合の対処法を尋ねる。 |
インタラクション (画面) |
一致する取引先責任者レコードを検索する。 |
データ (レコードを取得) |
一致するレコードが見つかったかどうかを確認し、対応するパスに従う。 |
ロジック (決定) |
一致が存在しない場合、取引先責任者を作成する。 |
データ (レコードを作成) |
一致が存在する場合、取引先責任者を更新する。 |
データ (レコードを更新) |
分岐をまとめて再結合し、Chatter でフローが実行した処理を確認する。 |
インタラクション (アクション) |
フローが完了したことを確認する。 |
インタラクション (画面) |
リソース