SFDCのToDoアラームを、プロセスビルダー+フローで作成
ワークフロールールを作成し、ワークフローアクションでToDoを実装すれば、
ToDoアラームの自動作成は簡単に実現できるんですが・・・。
「レコードを更新しても、1度自動作成されたToDoのアラーム日は更新されない!!不便!!」
ということで。
プロセスビルダーとフローを組み合わせれば、レコードを更新する度、ToDoも更新することができます。
【使用方法】レコードの、ある日付を基準に、n日前(またはn日後)にToDoアラームを自動作成する時に使用。その日付を更新すると、ToDoのアラーム日も自動更新される。
▼今回の例▼
旅行アプリケーションにて、予約情報レコード、日時項目「搭乗時間(行き)」を登録したら、「搭乗時間(行き)」の3日前に、「旅行の3日前です」というアラームを表示するToDoを自動作成しておきたい。
そこで、もし「搭乗時間(行き)」が変更になった場合、ToDoのアラーム日も自動変更したい。
①. 自動起動フローを作成
②. 基準となる日付、ToDoアラーム先を取得
③. ToDoの件名を格納する定数を作成
④. ToDoが既に作成されているか検索
以下の条件で検索(AND)
・件名が一致
・ToDoを紐づけるレコード(WhatId)が当該レコードに一致
⑤. リソースに、アラーム日を作成
搭乗時間(行き)の3日前 ※DateTime→Dateへの変換をしています
⑥. 意思決定を作成
⑦. ToDoが既に作成されている場合、ToDoレコードの更新をする
ToDo項目値に以下を設定
項目 | 値 |
---|---|
ActivityDate | アラーム日 |
OwnerId | アラーム通知先 |
⑧. ToDoがまだ作成されていない(ToDoレコードの取得がnullで失敗した)場合、ToDoレコードの作成をする
ToDo項目値に以下を設定
項目 | 値 |
---|---|
ActivityDate | アラーム日 |
IsReminderSet | ポップアップを出す場合=True |
Priority | 優先度 |
ReminderDateTime | アラーム日 |
Status | ToDo作成時の状況 |
Subject | 件名 |
WhatId | ToDoを作成するレコードのID |
OwnerId | アラーム通知先 |
⑨. フローを繋ぎ、保存
⑩. プロセスビルダーを作成
⑪. オブジェクトを選択してプロセスを開始するタイミングを指定
⑫. このアクショングループの条件を定義
⑬. アクションを選択して定義
▼▼実際に動きを確認▼▼
ToDoがまだ作成されていない場合
1-1. {搭乗時間(行き)}を登録します。
1-2. 期待通りの日にアラームが設定されます。
ToDoが既に作成されている場合(1-2の続きから)
2-1. {搭乗時間(行き)}を変更します。
2-2. きちんとアラーム日も更新されます。
【memo】
以上、レコードを更新する度、プロセスビルダーが起動し、フローでToDoの更新をしていく処理でした。
レコードの所有者が変わったときも、ToDoが前任に残ったままにならないのでとても便利だと思います。
ちょっと手間はかかっても、ユーザーが使いやすい機能にしたくてがんばりました(o^―^o)
以上
※途中、何度かエラー吐いて画像撮り直しているのでフローバージョンが前後しているところありますが気にしないでください。。。(笑)