😊
キャンペーンメンバーの状況を書き換えるフロー詳細
前提
キャンペーン作成時にキャンペーンメンバーの状況を以下の通り設定する。
- 連絡予定:デフォルト
- 連絡済み
- 出席予定:レスポンスあり
- 欠席予定:レスポンスあり
また、キャンペーン作成時に自動で作成される状況「送信」「レスポンスあり」は削除する。
フロー全体図
リソース
コレクション変数
- var_Responsed_Status
- 「レスポンスあり」として追加する状況のラベル
- データ型:テキスト
要素
1. 開始要素
キャンペーンレコードが作成された場合に実行。
- オブジェクト:キャンペーン(Campaign)
- フローをトリガする条件:レコードが作成された
- 条件の要件:なし
- フローを最適化:アクションと関連レコード
2. レコードを作成(デフォルト状況を作成)
デフォルト状況「連絡予定」を追加。
- 表示ラベル:Create Default Status
- API参照名:Create_Default_Status
- 作成するレコード数:1
- レコード項目の設定方法:個別のリソースおよびリテラル値を使用
- オブジェクト:キャンペーンメンバーの状況(CampaignMemberStatus)
キャンペーンメンバーの状況の項目値を設定
項目 | 値 |
---|---|
CampaignId | {!$Record.Id} |
IsDefault | True |
Label | 連絡予定 |
3. レコードを作成(設定なしの状況を作成)
状況「連絡済み」を追加。
- 表示ラベル:Create Normal Status
- API参照名:Create_Normal_Status
- 作成するレコード数:1
- レコード項目の設定方法:個別のリソースおよびリテラル値を使用
- オブジェクト:キャンペーンメンバーの状況(CampaignMemberStatus)
キャンペーンメンバーの状況の項目値を設定
項目 | 値 |
---|---|
CampaignId | {!$Record.Id} |
Label | 連絡済み |
4. 割り当て(レスポンスありの状況ラベル一覧を変数に割り当て)
レスポンスありの状況「出席予定」「欠席予定」を追加。
- 表示ラベル:Add Responsed Status
- API参照名:Add_Responsed_Status
キャンペーンメンバーの状況の項目値を設定
変数 | 演算子 | 値 |
---|---|---|
var_Responsed_Status | 追加 | 出席予定 |
var_Responsed_Status | 追加 | 欠席予定 |
5. ループ(レスポンスありの状況作成用ループ)
レスポンスありの状況「出席予定」「欠席予定」のレコードを作成するためのループ。
- 表示ラベル:Loop for Create Responsed Status
- API参照名:Loop_for_Create_Responsed_Status
- コレクション変数:var_Responsed_Status
- 方向:最初の項目から最後の項目へ
6. レコードを作成(レスポンスありの状況を作成)
レスポンスありの状況を1つずつ追加。
- 表示ラベル:Create Responsed Status
- API参照名:Create_Responsed_Status
- 作成するレコード数:1
- レコード項目の設定方法:個別のリソースおよびリテラル値を使用
- オブジェクト:キャンペーンメンバーの状況(CampaignMemberStatus)
キャンペーンメンバーの状況の項目値を設定
項目 | 値 |
---|---|
CampaignId | {!$Record.Id} |
hasResponded | True |
Label | {!Loop_for_Create_Responsed_Status} |
7. レコードを削除(既存の状況「レスポンスあり」を削除)
既存の状況のうち「レスポンスあり」を削除。
- 表示ラベル:Delete Responded Status
- API参照名:Delete_Responded_Status
- 削除するレコードを検索する方法:条件を指定
- オブジェクト:キャンペーンメンバーの状況(CampaignMemberStatus)
キャンペーンメンバーの状況レコードを絞り込み
- 削除するレコードの条件の要件:すべての条件に一致(AND)
項目 | 値 |
---|---|
CampaignId | {!$Record.Id} |
Label | レスポンスあり |
8. レコードを削除(既存の状況「送信」を削除)
既存の状況のうち「送信」を削除。
- 表示ラベル:Delete Sent Status
- API参照名:Delete_Sent_Status
- 削除するレコードを検索する方法:条件を指定
- オブジェクト:キャンペーンメンバーの状況(CampaignMemberStatus)
キャンペーンメンバーの状況レコードを絞り込み
- 削除するレコードの条件の要件:すべての条件に一致(AND)
項目 | 値 |
---|---|
CampaignId | {!$Record.Id} |
Label | 送信 |
備考
- 「キャンペーンメンバーの状況」レコード作成時は属性「デフォルト」「レスポンスあり」の有無で分ける必要があります。
属性ごとの状況が1つの場合は「レコードの作成」要素だけで済みますが、状況を追加したい場合は都度要素を追加する必要があるので、初めから4.~6.のようにループで作成するのもありかもしれません。(これだと変数割り当てで状況を書き加えれば済む。) - 「デフォルト」状況は必ず1つ必要なため、レコード作成前に状況「送信」 を削除することはできません。
Discussion