Skip to main content

カスタムボタンから自動起動フローを実行する

学習の目的

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

  • カスタムボタンからフローにデータを送信する。
  • 動的アクションを使用してカスタムボタンを Lightning レコードページに追加する。
Note

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

始める前に

この単元は、前の単元の続きです。「自動起動フローを作成する」単元の手順を完了していない場合は、まずそちらに取り組んでください。そうしなければ、この単元の手順に従って作業を進めることができません。

メモ

メモ

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

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

入力変数に値を割り当てる

作成したボタンにはフローの URL が含まれていますが、ボタンが配置されているレコードの情報は含まれていません。具体的には、caseId = {!Case.Id} のように、サポート技術者が必要とする項目の値と対応する入力変数を組み合わせて送信する必要があります。

この形式は見覚えがあるはずです。割り当て要素で変数に値を割り当てるために使用する「変数 演算子 値」という形式と同じです (ただし、ここでは「Equals (次の文字列と一致する)」という言葉の代わりに = 記号を使用しています)。この例では、caseId は入力変数の API 参照名、Case.Id は入力変数に割り当てる値が含まれているレコード項目です。= 演算子は割り当て要素と同じように動作し、入力変数の現在の値を、= 記号の後に続く値に置換します。

“”

Clone Closed Case (クローズケースをコピー) フローで作成した入力変数を覚えていますか? このシナリオでは、それを入力変数割り当てとして、ボタンの URL に追加する必要があります。形式は次のようになります。

フローの入力変数

レコード項目

割り当て*

caseId

Case.Id

caseId={!Case.Id}

caseSubject

Case.Subject

caseSubject={!Case.Subject} 

caseAccountId

Case.AccountId

caseAccountId={!Case.AccountId} 

caseType

Case.Type

caseType={!Case.Type}

*割り当ての形式にはスペースを使用しません。

カスタムボタンの URL に URL パラメーターを追加する

フローに変数割り当てを送信するには、これらの値の割り当てをパラメーターとして、フロー URL に追加する必要があります。URL パラメーターは、サーバー (この場合は Salesforce) に追加情報を渡します。パラメーターは、次のように URL の末尾に付け、URL とは疑問符で区切ります。

/flow/Clone_Closed_Case?<URL parameter>

複数の URL パラメーターは、次のように & で区切ります。

/flow/Clone_Closed_Case?<URL parameter 1>&<URL parameter 2>

これで基本は理解できました。順調ですね。では、カスタムボタンを更新しましょう。

  1. ケースオブジェクトの [Clone Closed Case (クローズケースをコピー)] ボタンがまだ開いていない場合は開きます。
  2. URL エディターで、URL の末尾に、この後に続くテキストはパラメーターであることを Salesforce に示す ? を追加します。
  3. ケース ID 入力変数の API 参照名 caseId を入力します
  4. [Insert Operator (演算子の挿入)] をクリックし、[= Equal (= 次と等しい)] を選択します。
  5. [Insert Field (項目の挿入)] 選択リストで、入力変数が受け取る項目 [Case ID (ケース ID)] を選択します
    {! と } で囲んだ項目名が挿入されます。この特別な形式は、差し込み項目表記と呼ばれ、その項目の値を URL に差し込むことを Salesforce に示します。
    以下の説明に対応する URL。
    これで、URL は
    /flow/Clone_Closed_Case?caseId={!Case.Id} になりました。
    • /flow/Clone_Closed_Case はフローの専用 URL です。
    • caseId はフローの入力変数のうちの 1 つの API 参照名です。
    • {!Case.Id} はケースオブジェクトの ID 項目を差し込むことを Salesforce に示す表記です。
    • [Insert Field (項目の挿入)] 選択リストによって追加されたスペースは、必ず削除してください。URL にスペースを含めないようにします。
  1. 残りの入力変数に値を割り当てるパラメーターを追加します。
    • caseSubject
    • caseAccountId
    • caseType
  1. 最初のパラメーターを除き、各パラメーターの前に & 記号を入力します。これは、その後に別のパラメーターが続くことを Salesforce に示します。URL は次のようになるはずです (強調表示を除く)。
    4 つのパラメーターは、caseId={!Case.Id}&amp;caseSubject={!Case.Subject}&amp;caseAccountId={!Case.AccountId}&amp;caseType={!Case.Type} と記述されます。
  2. [構文を確認] をクリックします。
    構文チェッカーは、URL 内の差し込み項目や数式関数のエラーを報告します。差し込み項目に問題がある場合は、該当する項目を選択し、[Insert Field (項目の挿入)] リストから再度選択してみてください。

戻り先ページを定義する

最後に、フローの終了時に自動的に読み込まれるページを指定できます。それにはどうすればよいでしょうか? retURL という別の URL パラメーターを使用します。

  1. URL の末尾に &retURL=/ を入力します。
  2. [Insert Field (項目の挿入)] 選択リストで、フロー終了時に読み込むレコードの ID [Case ID (ケース ID)] を選択します。
    ほとんどの場合、これはフローが実行されるレコードの ID です。ID の差し込み項目が URL の末尾にあること確認してください。
    この場合、ユーザーがボタンをクリックしたレコードに戻りたいので、最終的な URL は次のようになります。
    /flow/Clone_Closed_Case?caseId={!Case.Id}&caseSubject={!Case.Subject}&caseAccountId={!Case.AccountId}&caseType={!Case.Type}&retURL=/{!Case.Id}
Note

この例の retURL 値はどう機能するのでしょうか? Salesforce は完全な URL を探していますが、追加したのはレコード ID だけですよね? ここには特別なテクニックが使われています。先頭に / を付けると、その ID が相対 URL に変換されます。Salesforce がレコード ID (/0018Z00002ijo06QAA など) だけで構成された相対 URL を受け取ると、ユーザーに直接そのレコードを表示します。

  1. [Check Syntax (構文を確認)] をクリックします。
    “”
Note

[Check Syntax (構文を確認)] ボタンは、フロー URL や入力変数が間違っていないかを確認するものではありません。ボタンが意図したとおりに動作することを確認するには、Sandbox でフローとボタンを作成し、十分にテストしてください。

  1. ボタンを保存します。

カスタムボタンを配置する

次に、サポートチームがボタンを使用できるようにボタンを配置する必要があります。ボタンを表示する方法は 2 つあります。このモジュールでは動的アクションを使用する方法を学びます。従来のページレイアウトによる方法を使用する場合は、「Lightning Experience のカスタマイズ」バッジの単元「カスタムボタンとカスタムリンクの作成」の手順に従ってください。

Note

Lightning ページで動的アクションを使用すると、その Lightning ページでは動的アクションが永続的に有効になります。動的アクションが有効になっていると、従来のページレイアウトにあるボタンやアクションは無視され、その Lightning ページのボタンやアクションを設定するには、Lightning アプリケーションビルダーを使用する必要があります。

  1. オブジェクトマネージャーで、[Case (ケース)] オブジェクトを開きます。
  2. [Lightning Record Pages (Lightning レコードページ)] をクリックし、[New (新規)] をクリックして新しいレコードページを作成します。
    1. Label (表示ラベル): Case Record Page (ケースレコードページ)
    2. Object (オブジェクト): Case (ケース)
    3. [Clone Salesforce Default Page (Salesforce のデフォルトページをコピー)][Case Grouped View Default (デフォルトのケースグループビュー)] の順に選択します。
    4. [Done (完了)] をクリックします。
      以下の手順に対応する Lightning アプリケーションビルダー。強調表示パネルとプロパティペインの [Upgrade Now (アップグレードに関するお問い合わせ)] ボタンが強調表示されている。
  1. 強調表示パネルをクリックします。
  2. 強調表示パネルのプロパティペインで、[Upgrade to Dynamic Actions (動的アクションへのアップグレード)] の下にある [Upgrade Now (アップグレードに関するお問い合わせ)] をクリックします。
  3. [Migrate (移行)] ボックスをクリックし、[Next (次へ)] をクリックします。
  4. [Case Layout (ケースレイアウト)] を選択し、[Finish (完了)] をクリックします。
    Lightning レコードページで動的アクションが有効になると、そのページでは強調表示パネルのボタン定義に従来のページレイアウトは使用されなくなります。代わりに、強調表示パネルサイドバーで各ボタンを個別に設定します。
    動的アクションと [Add Action (アクションを追加)] ボタンを表示するためにアップグレードされた強調表示パネルのプロパティペイン。
  5. プロパティペインで [Add Action (アクションを追加)] をクリックします。
  6. [Search Actions (アクションを検索)] に clone (コピー) と入力し、[Clone Closed Case (クローズケースをコピー)] を選択して [Done (完了)] をクリックします。
  7. [Clone Closed Case (クローズケースをコピー)] ボタンをリストの最上部にドラッグします。
  8. [保存] をクリックします。
  9. ページを有効にし、[Desktop and phone (デスクトップおよび電話)] の組織のデフォルトに設定します。

新しいボタン [Clone Closed Case (クローズケースをコピー)] が強調表示されているケースレコード。

これで、ボタンから実行するフローを作成できました。この勢いのまま次の単元に進み、フローについて引き続き学習しましょう。

リソース

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

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

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