シンプルな連動選択リストの画面フロー([項目]タブを使用)

シンプルな連動選択リストの画面フロー([項目]タブを使用)

連動選択リストって、なんか楽しいですよね
シンプルな連動選択リストの画面フロー([項目]タブを使用)
56
シンプルな連動選択リストの画面フロー([項目]タブを使用)
Admin
2023/07/24 18:40:14
「画面フローで連動選択リストを配置したい」と言われたとき、「面倒なことになったぜ😟」と思ったのですが、「[項目]タブから項目を追加すると簡単」という情報をいただき、シンプルな画面フローを作ってみたら大丈夫だったので、何かの参考になればと思い、皆さまに共有いたします。
情報提供いただいたN.Sさん、ありがとうございます!


やりたいこと

・選択リスト「選択リストA」「選択リストB」のみを編集するアクションを設定したい。
・「選択リストA」と「選択リストB」は項目の設定連動で連動関係が設定されており、アクション実行時にもこの連動関係を維持したい。
連動関係設定画面です



対処法

画面フローを作成し、[項目]タブから選択リスト項目を配置して、連動関係を維持したまま編集できるようにする。


設定手順

1.画面フローの作成


1-1.【新規フロー】をクリックします。


1-2.「画面フロー」を選択して【作成】をクリックします。


1-3.「開始」の下の「〇」をクリックし、続けて「+」をクリックして、「画面」要素を追加します。


1-4.[項目]タブをクリックして、レコード変数の項目にカーソルをあて、「+新規リソース」をクリックします。



1-5.レコード変数 「recordId」を作成します。
※取得したい項目が含まれていれば、「recordId」以外のレコード変数やループ要素を使用できますので、状況に応じて設定してください。
※「ツールボックス」より、「画面」要素を追加する前にこちらの変数を作成しておくこともできます。
API参照名:recordId
データ型:レコード
オブジェクト:該当のオブジェクト(画面の例は適当に作ったカスタムオブジェクトです)
フロー外部での可用性:入力で使用可能



1-6.選択リスト項目を画面に配置します。
レコード変数を選択すると、項目を選択できるようになります。
連動関係が設定されている選択「選択リストA」「選択リストB」を画面にドラッグ&ドロップして配置します。


1-7.「画面のプロパティ」を設定して、【完了】をクリックします。
ヘッダー、フッターの設定は状況に応じて設定してください。
(今回の例ではデフォルトのままいじっておりません)


1-8.「画面」要素の下の「〇」をクリックし、続けて「+」をクリックして、「レコードを更新」要素を追加します。


1-9.「レコードを更新」要素を設定し、【完了】をクリックします。
表示ラベル:レコードを更新 ※わかりやすい表示であればOKです。
API参照名:UpdateRecord ※組織の命名ルールに従ってください。
更新するレコードを検索してその値を設定する方法
このオブジェクト種別のレコードを更新:該当のオブジェクトを選択
〇〇レコードを絞り込みレコードを更新する条件の要件:すべての条件に一致(AND)
項目:Id
演算子:次の文字列と一致する
:recordID>カスタムオブジェクトID
〇〇の項目値をレコードに設定
項目:PickListA__c(選択リストA) ← :recordId >選択リストA
項目:PickListB__c(選択リストB) ← :recordId >選択リストB

あとは、フロー自体を保存して、フローの作成は終了です。
ご自身で設定の際はテストをしっかり行ってください。


2.カスタムアクションの作成とページレイアウトへの追加

画面フローを呼び出すアクションを作成します。

2-1.[オブジェクトマネージャ>該当のオブジェクト>ボタン、リンク、およびアクション]の画面を開き、【新規アクション】をクリックします。


2-2.アクションを設定し、【保存】をクリックします。
アクション種別:フロー
フロー:作成したフローを選択します。
標準の表示ラベル種別:ーなしー ※わかりやすくなるように設定してください。
表示ラベル:※わかりやすいラベルにしてください。・
名前:※命名ルールに従って、わかりやすい名前にしてください。
説明:※必須ではありませんが、他の人がわかるように説明を入力することをおすすめします。


3.ページレイアウトへのアクションの配置


3-1.[オブジェクトマネージャ>該当のオブジェクト>ページレイアウト]の画面で、アクションを追加したいページレイアウトを選択します。
ページレイアウト名をクリックすると編集画面が開きます


3-2.画面上部のパレットの「モバイルおよび Lightningのアクション」から、作成したアクションをレイアウトの「Salesforce モバイル および Lightning のアクション」の部分にドラッグ&ドロップして、レイアウトを保存します。




完成形はこちら


テストしてみます

アクションをクリックすると


選択リストの編集画面が表示されます。
選択リストAの値に連動して、選択リストBで選択可能な値が変化しています。
連動関係が保たれたままです。


選択した値でレコードが更新されました!



ひとこと

「画面フローで選択リストの連動関係を設定する」で調べると、「連動選択リストコンポーネント」を使用したこちらのヘルプページが出てくるので、ちょっと面倒だなと思っていたのですが、既存オブジェクトの選択リスト項目を使う場合は、[項目]を使用することでわりと簡単に設定できました。
やってみないとわからないものですね。レコード変数(またはループ要素)から項目を参照できる[項目]タブ、まだまだ仲良くなれていないので、どういうことができるのか検証していきたいです。



参考

◇ SALESFORCE ヘルプ >ドキュメント >SALESFORCE SUMMER '20 リリースノート
> Lightning ページまたはクイックアクションからフローを起動するときにレコードを渡す

◇ SALESFORCE ヘルプ >ドキュメント >ビジネスプロセスの自動化 >フロー画面入力コンポーネント: 連動選択リスト
◇ SALESFORCE ヘルプ >ドキュメント >ビジネスプロセスの自動化 >フロー画面でのレコード項目の直接配置


関連記事

実験:フローで取引先を【関連情報と共にコピー】してみた
※recordIdについては、こちら↑の記事の要所要所に説明があります(まとめられておらずすみません)。

フロー画面でのレコードタイプによる選択リストの絞り込みを試してみた
「項目の連動関係」を変更セットで送信するには??
選択リスト値のデフォルト設定、一番強いのは?

gilde tech(for Salesforce)」に入会しませんか?
登録すると、「gilde tech」に掲載されているSalesforceのノウハウを全部閲覧できるだけでなく、自分が知っている知識を発信し、他の会員と交流することもできます。
またSalesforceの知識習得に役立つイベント情報も得ることができます。
是非ここで得た知識を業務に活かしてください!
56
コメント