⚡
行動の被招集者をテキスト項目に一覧化するフロー詳細
フロー全体図
リソース
オブジェクト、項目
- オブジェクト:行動
- 項目:同行者(API参照名:
doukousya__c
)
- 項目:同行者(API参照名:
変数
- var_update_doukousya
- 被招集者氏名を保存するための変数
- データ型:テキスト
- デフォルト値:
{!$GlobalConstant.EmptyString}
[1]
数式
- var_eventAttendee_Name
- 被招集者ユーザ氏名を
var_update_doukousya
にカンマ区切りで追加するための数式 - データ型:テキスト
- 数式:
{!var_update_doukousya} & {!get_eventAttendee_record.Name} & ","
- 被招集者ユーザ氏名を
- var_event_OwnerName
- 行動所有者ユーザ氏名を
var_update_doukousya
に追加するための数式 - データ型:テキスト
- 数式:
{!var_update_doukousya} & {!get_eventOwner_record.Name}
- 行動所有者ユーザ氏名を
- var_update_doukousya_100
-
var_update_doukousya
の内容を、同行者項目に最大100文字割り当てるための数式 - データ型:テキスト
- 数式:
IF(LEN({!var_update_doukousya}) > 100, LEFT({!var_update_doukousya}, 100), {!var_update_doukousya})
-
EventRelationデータ取得ブロック
1. 開始要素
行動レコードが新規作成または更新された場合に実行。
トリガ
- フローをトリガする条件:レコードが作成または更新された
- フローを実行:レコードが保存された後[2]
オブジェクトを選択
- オブジェクト:行動
- 条件の要件:すべての条件に一致(AND)
項目 | 演算子 | 値 |
---|---|---|
IsChild[3] | 次の文字列と一致する | False |
- 更新されたレコードでフローを実行するタイミング:レコードを更新し、条件の要件に一致するたび
2. レコードを取得(行動の被招集者を取得)
トリガされた行動レコードに設定された被招集者を全て取得。
- API参照名:get_event_attendee
- オブジェクト:行動リレーション(EventRelation)
- 行動の要件:すべての条件に一致(AND)
項目 | 演算子 | 値 |
---|---|---|
EventId | 次の文字列と一致する | {!$Record.Id} |
- 並び替え順:並び替えなし
- 保存するレコード数:すべてのレコード
- レコードデータの保存方法:すべての項目を自動的に保存
被招集者ユーザ情報抽出処理ブロック
3. ループ(被招集者ごとに処理)
2で取得した被招集者からユーザ氏名を取り出すためのループ。
- API参照名:loop_eventAttendee
- コレクション変数:
{!get_event_attendee}
- コレクションを反復処理するための方向:最初の項目から最後の項目へ[4]
矢印の方向
- 項目ごと:4. 決定(ユーザか否か判定)
- 最後の項目の後:7. 決定(被招集者有無チェック)
4. 決定(ユーザか否か判定)
被招集者にはユーザの他に取引先責任者、リード、リソースが設定可能なため、ユーザ以外を弾く処理をここで実施する。
結果として「ユーザあり」「ユーザなし」を用意。
- API参照名:decision_UserRecord
ユーザあり
- API参照名:yes_UserRecord
- 結果を実行する条件の要件:すべての条件に一致(AND)
項目 | 演算子 | 値 |
---|---|---|
{!loop_eventAttendee.RelationId} |
次の文字列で始まる | 005 |
- 結果を実行するタイミング:条件の要件を満たす場合
ユーザなし
「ユーザあり」の条件を満たさない場合の結果。
矢印の方向
- ユーザあり:5. レコードを取得(被招集者のユーザレコード取得)
- ユーザなし:3. ループ(被招集者ごとに処理)
5. レコードを取得(被招集者のユーザレコード取得)
ユーザ氏名を取得するために、ユーザレコードIdからレコード情報を取得。
- API参照名:get_eventAttendee_record
- オブジェクト:ユーザ
- 行動の要件:すべての条件に一致(AND)
項目 | 演算子 | 値 |
---|---|---|
Id | 次の文字列と一致する | {!loop_eventAttendee.RelationId} |
- 並び替え順:並び替えなし
- 保存するレコード数:最初のレコードのみ
- レコードデータの保存方法:すべての項目を自動的に保存
6. 割り当て(被招集者名を同行者に追加)
被招集者ユーザ氏名をカンマ区切りで変数var_update_doukousya
に追加。
- API参照名:assign_doukousya_from_Attendee
変数 | 演算子 | 値 |
---|---|---|
var_update_doukousya | 次の文字列と一致する | {!var_eventAttendee_Name} |
被招集者ユーザ情報抽出後処理ブロック
7. 決定(被招集者有無チェック)
被招集者ユーザ情報抽出処理ブロックにてユーザが1件以上取得できた場合と0件の場合で処理を分けるために配置。
結果として「同行者あり」「同行者なし」を用意。
- API参照名:decision_eventAttendee
同行者なし
- API参照名:No_Attendee
- 結果を実行する条件の要件:すべての条件に一致(AND)
リソース | 演算子 | 値 |
---|---|---|
{!var_update_doukousya} |
次の文字列で始まる | {!$GlobalConstant.EmptyString} |
- 結果を実行するタイミング:条件の要件を満たす場合
同行者あり
「同行者なし」の条件を満たさない場合の結果。
矢印の方向
- 同行者あり:8. レコードを取得(行動所有者のレコードを取得)
- 同行者なし:10. 割り当て(同行者項目更新)
8. レコードを取得(行動所有者のレコードを取得)
行動リレーション(EventRelation)に被招集者ユーザが登録されている場合は同行者項目に行動所有者ユーザの氏名を追加する要件のため、行動所有者ユーザ氏名取得のために行動所有者のレコードを取得。
- API参照名:get_eventOwner_record
- オブジェクト:ユーザ
- 行動の要件:すべての条件に一致(AND)
項目 | 演算子 | 値 |
---|---|---|
Id | 次の文字列と一致する | {!$Record.OwnerId} |
- 並び替え順:並び替えなし
- 保存するレコード数:最初のレコードのみ
- レコードデータの保存方法:すべての項目を自動的に保存
9. 割り当て(同行者に行動所有者名追加)
行動所有者ユーザ氏名を変数var_update_doukousya
に追加。
- API参照名:assign_doukousya_from_Owner
変数 | 演算子 | 値 |
---|---|---|
{!var_update_doukousya} |
次の文字列と一致する | {!var_event_OwnerName} |
10. 割り当て(同行者項目更新)
変数var_update_doukousya
の内容を、同行者項目に最大100文字割り当て。
- API参照名:update_doukousya
変数 | 演算子 | 値 |
---|---|---|
{!$Record.doukousya__c} |
次の文字列と一致する | {!var_update_doukousya_100} |
11. レコードを更新(行動レコード更新)
トリガとなった行動レコードの同行者項目を更新。
- 更新するレコードを検索してその値を設定する方法:レコードまたはレコードコレクションからの ID およびすべての項目値を使用
- 更新するレコード:
{!$Record}
Discussion