Skip to main content
3 月 5 日~ 6 日にサンフランシスコで開催される TDX (Salesforce+ でも配信) で「Developer Conference for the AI Agent Era (AI エージェント時代に向けた開発者向けカンファレンス)」にぜひご参加ください。お申し込みはこちら

画面フローを構築する

学習の目的

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

  • 簡単な画面フローを作成する。
  • シンプルな画面コンポーネントを使用して質問をする。
  • フロー画面に誘導情報を追加する。
メモ

メモ

日本語で受講されている方へ
Challenge は日本語の Trailhead Playground で開始し、かっこ内の翻訳を参照しながら進めていってください。Challenge での評価は英語データを対象に行われるため、英語の値のみをコピーして貼り付けるようにしてください。日本語の組織で Challenge が不合格だった場合は、(1) この手順に従って [Locale (地域)] を [United States (米国)] に切り替え、(2) [Language (言語)] を [English (英語)] に切り替えてから、(3) [Check Challenge (Challenge を確認)] ボタンをクリックしてみることをお勧めします。

翻訳版 Trailhead を活用する方法の詳細は、自分の言語の Trailhead バッジを参照してください。

メモ

このバッジは、Flow Builder のスキルを習得するための過程の一部です。「Flow Builder を使用したフローの作成」トレイルでは、初めから終わりまで Flow Builder について学習します。このトレイルで推奨されるバッジの順序に従えば、プロセスの自動化に関する確固たるスキルが身に付き、Flow Builder のエキスパートになります。

ハンズオン Challenge

Flow Builder のハンズオン

ではここで Trailhead Playground を起動して、このモジュールの手順を実行してみましょう。Trailhead Playground を開くには、ハンズオン Challenge までスクロールダウンし、[起動] をクリックします。また、ハンズオン Challenge を実行するときにも Playground を使用します。

前の単元で計画したフローの詳細が下表にまとめられています。この単元では、このフローを構築します。

画面要素

ケース項目

必要な情報

使用する画面コンポーネント

説明

通話者による問題の詳しい説明

ロングテキスト

件名

エージェントによる問題の要約 (ケース件名に使用)

短いテキスト

状況

通話結果: 問題が解決したか否か

Toggle

数式: True の場合は [Status (状況)] = [Closed (クローズ)]。それ以外の場合は [Status (状況)] = [New (新規)]

[レコードを作成] 要素

ケース項目

必要な情報

使用するリソース

取引先 ID

現在のレコードに関連付けられている取引先

テキスト変数 

入力で使用可能

取引先責任者 ID

現在の取引先責任者レコード

テキスト変数

入力で使用可能

画面フローを作成して画面要素を追加する

まず、画面フローを作成して画面を追加します。

  1. Flow Builder で、画面フローを作成します。
  2. 画面要素を追加します。
  3. [Screen Properties (画面のプロパティ)] ペインで、[Label (表示ラベル)] に Questions (質問) と入力します。
    この表示ラベルは Flow Builder キャンバスに表示され、ユーザーには表示されません。ユーザーにはフローの名前が画面の上部に表示されます。
    上記の手順に対応する [新規画面] ウィンドウの [画面のプロパティ] ペイン。

誘導テキストを追加する

続いて、画面に必要なものを追加していきます。質問する前に、サポートエージェントがお客様との会話を進めるためのスクリプトを用意します。サポートチームが適切に対応できるようにすることが目的であるため、まず誘導テキストを設定します。

  1. [コンポーネント] リストから [表示テキスト] を画面キャンバスにドラッグします。また、コンポーネントの名前をクリックすると、画面キャンバスの末尾にそのコンポーネントが追加されます。
    [コンポーネント] リストの下部にある [表示テキスト] コンポーネントと空の画面キャンバス。
メモ

画面に [Display Text (表示テキスト)] コンポーネントを追加したときに、右ペインが変化したことに気が付きましたか? コンポーネントを選択すると、プロパティペインにそのコンポーネントの情報と設定オプションが表示されます。コンポーネントが選択されていないときは、プロパティペインに現在の画面の情報と設定が示されます。

  1. [API Name (API 参照名)] に、SayThisText と入力します。
  2. API 参照名の下に、名前のないリッチテキスト項目があります。ここにユーザーに表示するテキストを入力します。次のように入力します。
    (Say this to the caller)
    Thank you for calling Pyroclastic, Inc. We’re sorry you’re having trouble with our products and we want to help you as quickly as possible. Can you please describe the problem you’re having?
  3. テキストの書式を変更して、フォントを Salesforce Sans、サイズを 14 にします。1 行目の書式を明るい赤の太字に変更して、他のテキストより目立つようにします。
    上記の手順に対応する [表示テキスト] プロパティペイン。

質問を追加する

次に、サポートエージェントが回答する質問を追加しましょう。

  1. サポートエージェントが通話者の問題を説明する十分なスペースを確保するために、ロングテキストコンポーネントを追加します。
    • [コンポーネント] リストから [ロングテキストエリア] を画面キャンバスにドラッグします。
    • [Label (表示ラベル)] に、Problem Description (問題の説明) と入力します。
    • [Long Text Area (ロングテキストエリア)] プロパティで、[API Name (API 参照名)] に ScreenDescription と入力します。
      そう、ここでは表示ラベルと API 表示名が一致しない画面コンポーネントを作成しているのですよね。フローのユーザーが理解しやすい表示ラベルと、自分や他のシステム管理者にわかりやすい API 表示名で画面コンポーネントを作成するのが妥当という場合もあります。
    • [Require (必須)] チェックボックスをオンにして、ユーザーがこの質問に回答しないとフローを完了できないようにします。
      ScreenDescription コンポーネントと上記の手順に対応する設定が表示されている画面キャンバスと [切り替え] プロパティ。
  1. エージェントがケース件名を入力する、テキストの質問を追加します。
    • [コンポーネント] リストから [テキスト] を画面キャンバスにドラッグします。
    • [Text (テキスト)] プロパティで、[Label (表示ラベル)] に Case Subject (ケース件名) と入力します。
    • [API Name (API 参照名)] に、ScreenSubject と入力します。
      後で混同しないように、ここでは一意の名前にしています。
    • [Require (必須)] チェックボックスをオンにします。
  1. サポートエージェントが通話中にお客様の問題を解決した場合は、ケースの作成と同時にクローズする切り替えを追加します。
    • [コンポーネント] リストから [切り替え] を画面キャンバスにドラッグします。
    • [API Name (API 参照名)] に、CloseCase と入力します。
    • [Label (表示ラベル)] に、Were you able to solve the customer's problem during this call? (連絡窓口) と入力します。
    • [Active Label ([Active (有効)] の表示ラベル)] に、Yes, Solved (はい、解決しました) と入力します。
    • [Inactive Label ([Inactive (無効)] の表示ラベル)] に、No, Not Solved (いいえ、解決していません) と入力します。
      CloseCase コンポーネントと上記の手順に対応する設定が表示されている画面キャンバスと [切り替え] プロパティ。
  1. [Done (完了)] をクリックして画面要素を閉じます。

これで 3 つの質問をする画面が出来上がりました。 

回答に基づいてケースを作成する

画面要素にユーザーが入力する [説明]、[件名]、[状況] ([Solved (解決済み)] または [Not Solved (未解決)]) が設定されました。次は、切り替えの [True] と [False] 値をそれぞれ [クローズ] と [New (新規)] に変換する数式を作成しますが、1 つ問題があります。(またです!)切り替えから直接ユーザーの選択肢を取得することができません。そのため、次の方法で切り替えの値プロパティを参照する必要があります。 

{!CloseCase.value}

また、現在の取引先責任者レコードの取引先 ID と取引先責任者 ID を使用するために、フローに各 ID を受け入れる変数が必要です。

  1. 数式リソースを作成します。
    • API 参照名: frmStatus
    • データ型: テキスト
    • 数式: IF({!CloseCase.value} = TRUE, "Closed", "New")
メモ

おそらくご存知のとおり、数式のベストプラクティスは、必要な結果を他の方法で取得できない場合にのみ使用することです。ここでは、そのルールを拡大解釈します。この場合、決定要素と 2 つの割り当て要素を使用するという方法がありますが、このシンプルなユースケースでは数式のほうがはるかに効率的に処理できます。

  1. 現在の取引先責任者の ID を受け取る変数を作成します。
    • API 参照名: inputContactId
    • データ型: テキスト
    • [Available for input (入力で使用可能)] を選択
  1. 現在の取引先責任者の取引先を受け取る変数を作成します。
    • API 参照名: inputAccountId
    • データ型: テキスト
    • [Available for input (入力で使用可能)] を選択
  1. 画面要素の後に、ケースを作成する [レコードを作成] 要素を追加します。
    • 表示ラベル: Create Case (取引先責任者を取得)
    • レコード項目値の設定方法: 手動
    • Object (オブジェクト): Case (ケース)
    • 項目値を設定:
      • Field (項目): Account ID (取引先 ID)、Value (値):inputAccountId
      • Field (項目): Contact ID (取引先責任者 ID)、Value (値):inputContactId
      • Field (項目): Description (説明)、Value (値):Questions (質問) > Problem Description (問題の説明)
      • Field (項目): Status、値: frmStatus
      • Field (項目): Subject (件名)、Value (値):Questions (質問) > Case Subject (ケース 件名)
  1. フローを保存します。[Label (表示ラベル)] に、Create Case for Contact (取引先責任者のケースを作成) と入力します。

ツールボックスとフローキャンバスは次のようになります。

上記の手順に対応するツールボックスと Flow Builder キャンバス。

リソース

ハンズオン Challenge

+500 ポイント

準備を始めましょう

この 単元 は各自のハンズオン組織で実行します。[起動] をクリックして開始するか、組織の名前をクリックして別の組織を選びます。

あなたの Challenge

画面フローを構築する
ユーザーに新しい商談の詳細の入力を求め、ユーザーの入力内容をもとに商談レコードを作成するフローを構築します。コンポーネントの順序は任意に設定してかまいません。このバッジの修了時には、実用的なフローが作成されます。
  • 画面フローを作成する
  • 数式を作成します。
    • API 参照名: TodayPlus90
    • Data Type (データ型): Date (日付)
    • Formula (数式): TODAY() + 90
  • 画面要素を追加します。
    • Label (表示ラベル): Opp Fields (商談項目)
    • API 参照名: Opp_Fields
  • [Opp Fields (商談項目)] 要素に [Display Text (表示テキスト)] コンポーネントを追加します。
    • API 参照名: requirement
    • Text (テキスト): You must have spoken with a potential customer about a Bot product before creating an opportunity. (ボット商品について見込み客と会話をした後で、商談を作成する必要があります。)
    • メモ: 画面コンポーネントは、画面キャンバス上の任意の場所に配置できます。コンポーネントの順序は採点の対象ではありません。
  • 日付コンポーネントを追加します。
    • Label (表示ラベル): Estimated Close Date (完了予定日)
    • API 参照名: Estimated_Close_Date
    • Require (必須): オン
    • Default Value (デフォルト値): TodayPlus90
  • 通貨コンポーネントを追加します。
    • Label (表示ラベル): Estimated Amount (推定金額)
    • API 参照名: Estimated_Amount
    • Decimal Places (小数部の桁数): 2
  • [Opp Fields (商談項目)] 要素の後に [Create Records (レコードを作成)] 要素を追加します。
    • 表示ラベル: Create Opp (商談を作成)
    • API 参照名: Create_Opp
    • How to set record field values (レコードの項目値の設定方法): Manually (手動)
    • Object (オブジェクト): Opportunity (商談)
    • 項目値を設定します (既存の値は削除してください)。
      • Amount (金額): Opp Fields (商談項目) > Estimated Amount (推定金額)
      • Close Date (完了日): Opp Fields (商談項目) > Estimated Close Date (完了予定日)
  • フローを保存します。
    • Label (表示ラベル): New Bot Opp (ボットの新規商談)
    • API 参照名: New_Bot_Opp
Salesforce ヘルプで Trailhead のフィードバックを共有してください。

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

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