フローにおいて、複数選択リストで選択された値をコレクション変数に変換し、それらの値を用いて特定のアクションを実行したいシナリオについて解説します。
例として、Contact (取引先責任者) オブジェクトに関連する "Skills" (スキル) カスタムオブジェクトがあり、取引先責任者レコードを表示する複数選択リストからユーザーが選択した値を使用して、複数の取引先責任者レコードに選択した値の "Skills" (スキル) レコードを作成するフローを想定して作成します。
画面フローにて、画面要素(API参照名:Screen)を配置し「複数選択リスト」コンポーネント(API参照名:Skills)を配置して、取引先責任者レコードに関連して作成する必要があるスキルをユーザーが選択できる画面が設定されていると仮定します。
■ステップ 1: 新規変数 "SelectedSkillValues" を作成する
■ステップ 2: 割り当て要素 [ 選択された値を SelectedSkillValues に代入する ] を設定する
・変数: {!SelectedSkillValues}
・演算子: 次の文字列と一致する
・値: [Screen] > [Skills] の順にクリック
・変数: {!SelectedSkillValues}
・演算子: 追加
・値: ;
注意: ";" は最初の値の検出に使用されるため、文字列の最後に ";" を追加して、最後の値も問題なく取得できるようにします。
■ステップ 3: 決定要素 [ SelectedSkillValues が空白かどうか判断する ] を設定する
■ステップ 4: 新規数式リソース "SingleSkillFormula" を作成する
TRIM( SUBSTITUTE( LEFT( {!SelectedSkillValues} , FIND(";", {!SelectedSkillValues} )), ";", ""))
■ステップ 5: 新規変数 "SingleSkillValue" を作成する
■ステップ 6: 新規コレクション変数 "SkillCollection" を作成する
■ステップ 7: 割り当て要素 [ 最初の単一値をリストに追加する ] を追加する
・変数: {!SingleSkillValue}
・演算子: 次の文字列と一致する
・値: {!SingleSkillFormula}
・変数: {!SkillCollection}
・演算子: 追加
・値: {!SingleSkillValue}
■ステップ 8: 新規数式リソース "UpdateSelectedSkillValues" を作成する
MID({!SelectedSkillValues},FIND(";", {!SelectedSkillValues})+1,LEN({!SelectedSkillValues})- LEN(LEFT({!SelectedSkillValues}, FIND(";",{!SelectedSkillValues})))+1)
注意: 上記の式 "UpdatedSelectedSkillValues" は "SelectedSkillValues" の更新されたデータを返すだけですが、"SelectedSkillValues" にまだ保存されていないため、"SelectedSkillValues" を保存する割り当て要素を追加します。
■ステップ 9: 割り当て要素 [ SelectedSkillValue をリセットする ] を追加する
・変数: {!SelectedSkillValues}
・演算子: 次の文字列と一致する
・値: {!UpdateSelectedSkillValues}
ここまでのフローは、コレクション変数 (SkillCollection) に最初の値を追加し、リストへの追加後、選択したスキル値 (SelectedSkillValues) から最初の値を削除するように設定されています。これにより、選択したスキル値変数の 2 番目の値が最初の値になります。ここで、このプロセスを繰り返し実行し、2 番目、3 番目、4 番目の値を最初の値と同じように処理し、最終的にはすべての選択された値を処理するために何らかのループが必要です。
■ステップ 10: 割り当て要素 [ SelectedSkillValue をリセットする ] の下の (+) をクリックして [要素に接続] をクリックし、決定要素 [ SelectedSkillValues が空白かどうか判断する ] を選択する
以上で終了です。全体のフローは次のようになります。
ステップ 10: の設定により決定要素はループのように動作し、"SelectedSkillValues" 変数が空になるまで、選択された値をコレクションに追加し続けます。
上記設定後、[Blank] の分岐先にてコレクション "SkillCollection" をループすることで、取引先責任者に関連するスキルレコードを作成することができます。
004221000

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.