カスタムボタンから自動起動フローを実行する
学習の目的
この単元を完了すると、次のことができるようになります。
- カスタムボタンからフローにデータを送信する。
- 動的アクションを使用してカスタムボタンを Lightning レコードページに追加する。
始める前に
この単元は、前の単元の続きです。「自動起動フローを作成する」単元の手順を完了していない場合は、まずそちらに取り組んでください。そうしなければ、この単元の手順に従って作業を進めることができません。
入力変数に値を割り当てる
作成したボタンにはフローの 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>
これで基本は理解できました。順調ですね。では、カスタムボタンを更新しましょう。
- ケースオブジェクトの [Clone Closed Case (クローズケースをコピー)] ボタンがまだ開いていない場合は開きます。
- URL エディターで、URL の末尾に、この後に続くテキストはパラメーターであることを Salesforce に示す
?を追加します。
- ケース ID 入力変数の API 参照名
caseIdを入力します -
[Insert Operator (演算子の挿入)] をクリックし、[= Equal (= 次と等しい)] を選択します。
- [Insert Field (項目の挿入)] 選択リストで、入力変数が受け取る項目 [Case ID (ケース ID)] を選択します
{! と } で囲んだ項目名が挿入されます。この特別な形式は、差し込み項目表記と呼ばれ、その項目の値を URL に差し込むことを Salesforce に示します。
これで、URL は/flow/Clone_Closed_Case?caseId={!Case.Id}になりました。
-
/flow/Clone_Closed_Caseはフローの専用 URL です。
-
caseIdはフローの入力変数のうちの 1 つの API 参照名です。
-
{!Case.Id}はケースオブジェクトの ID 項目を差し込むことを Salesforce に示す表記です。
- [Insert Field (項目の挿入)] 選択リストによって追加されたスペースは、必ず削除してください。URL にスペースを含めないようにします。
- 残りの入力変数に値を割り当てるパラメーターを追加します。
- caseSubject
- caseAccountId
- caseType
- 最初のパラメーターを除き、各パラメーターの前に & 記号を入力します。これは、その後に別のパラメーターが続くことを Salesforce に示します。URL は次のようになるはずです (強調表示を除く)。

-
[構文を確認] をクリックします。
構文チェッカーは、URL 内の差し込み項目や数式関数のエラーを報告します。差し込み項目に問題がある場合は、該当する項目を選択し、[Insert Field (項目の挿入)] リストから再度選択してみてください。
戻り先ページを定義する
最後に、フローの終了時に自動的に読み込まれるページを指定できます。それにはどうすればよいでしょうか? retURL という別の URL パラメーターを使用します。
- URL の末尾に
&retURL=/を入力します。
- [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}
-
[Check Syntax (構文を確認)] をクリックします。
- ボタンを保存します。
カスタムボタンを配置する
次に、サポートチームがボタンを使用できるようにボタンを配置する必要があります。ボタンを表示する方法は 2 つあります。このモジュールでは動的アクションを使用する方法を学びます。従来のページレイアウトによる方法を使用する場合は、「Lightning Experience のカスタマイズ」バッジの単元「カスタムボタンとカスタムリンクの作成」の手順に従ってください。
- オブジェクトマネージャーで、[Case (ケース)] オブジェクトを開きます。
-
[Lightning Record Pages (Lightning レコードページ)] をクリックし、[New (新規)] をクリックして新しいレコードページを作成します。
- Label (表示ラベル):
Case Record Page(ケースレコードページ) - Object (オブジェクト): Case (ケース)
-
[Clone Salesforce Default Page (Salesforce のデフォルトページをコピー)]、[Case Grouped View Default (デフォルトのケースグループビュー)] の順に選択します。
-
[Done (完了)] をクリックします。
![以下の手順に対応する Lightning アプリケーションビルダー。強調表示パネルとプロパティペインの [Upgrade Now (アップグレードに関するお問い合わせ)] ボタンが強調表示されている。](https://res.cloudinary.com/hy4kyit2a/f_auto,fl_lossy,q_70/learn/modules/autolaunched-scheduled-flows/run-autolaunched-flow-from-custom-button/images/ja-JP/f865e8a5f88c4505c026ce0088a1be94_kix.p9kho8d7gafd.png)
- 強調表示パネルをクリックします。
- 強調表示パネルのプロパティペインで、[Upgrade to Dynamic Actions (動的アクションへのアップグレード)] の下にある [Upgrade Now (アップグレードに関するお問い合わせ)] をクリックします。
-
[Migrate (移行)] ボックスをクリックし、[Next (次へ)] をクリックします。
-
[Case Layout (ケースレイアウト)] を選択し、[Finish (完了)] をクリックします。
Lightning レコードページで動的アクションが有効になると、そのページでは強調表示パネルのボタン定義に従来のページレイアウトは使用されなくなります。代わりに、強調表示パネルサイドバーで各ボタンを個別に設定します。![動的アクションと [Add Action (アクションを追加)] ボタンを表示するためにアップグレードされた強調表示パネルのプロパティペイン。](https://res.cloudinary.com/hy4kyit2a/f_auto,fl_lossy,q_70/learn/modules/autolaunched-scheduled-flows/run-autolaunched-flow-from-custom-button/images/ja-JP/b4b9929e9b8507ae0dba375679f9785a_kix.21u1nbmzctbf.png)
- プロパティペインで [Add Action (アクションを追加)] をクリックします。
- [Search Actions (アクションを検索)] に
clone(コピー) と入力し、[Clone Closed Case (クローズケースをコピー)] を選択して [Done (完了)] をクリックします。
- [Clone Closed Case (クローズケースをコピー)] ボタンをリストの最上部にドラッグします。
-
[保存] をクリックします。
- ページを有効にし、[Desktop and phone (デスクトップおよび電話)] の組織のデフォルトに設定します。
![新しいボタン [Clone Closed Case (クローズケースをコピー)] が強調表示されているケースレコード。](https://res.cloudinary.com/hy4kyit2a/f_auto,fl_lossy,q_70/learn/modules/autolaunched-scheduled-flows/run-autolaunched-flow-from-custom-button/images/ja-JP/e3d80eb90234333d34e848156a66dfc7_kix.eyoc65lrlx2p.png)
これで、ボタンから実行するフローを作成できました。この勢いのまま次の単元に進み、フローについて引き続き学習しましょう。
リソース
- Trailhead: Lightning Experience のカスタマイズ
- Trailhead: Lightning アプリケーションビルダー
- Salesforce Help: Create Dynamic Actions in Lightning App Builder (Lightning アプリケーションビルダーでの動的アクションの作成)
