Help us understand the problem. What is going on with this article?

Salesforce ToDoアラームの自動更新

SFDCのToDoアラームを、プロセスビルダー+フローで作成

ワークフロールールを作成し、ワークフローアクションでToDoを実装すれば、
ToDoアラームの自動作成は簡単に実現できるんですが・・・。



「レコードを更新しても、1度自動作成されたToDoのアラーム日は更新されない!!不便!!:frowning2:


ということで。
プロセスビルダーとフローを組み合わせれば、レコードを更新する度、ToDoも更新することができます。

【使用方法】レコードの、ある日付を基準に、n日前(またはn日後)にToDoアラームを自動作成する時に使用。その日付を更新すると、ToDoのアラーム日も自動更新される。



▼今回の例▼
旅行アプリケーションにて、予約情報レコード、日時項目「搭乗時間(行き)」を登録したら、「搭乗時間(行き)」の3日前に、「旅行の3日前です」というアラームを表示するToDoを自動作成しておきたい。
そこで、もし「搭乗時間(行き)」が変更になった場合、ToDoのアラーム日も自動変更したい。

①. 自動起動フローを作成

image.png

②. 基準となる日付、ToDoアラーム先を取得

image.png

③. ToDoの件名を格納する定数を作成

image.png

④. ToDoが既に作成されているか検索

以下の条件で検索(AND)
・件名が一致
・ToDoを紐づけるレコード(WhatId)が当該レコードに一致
image.png
image.png

⑤. リソースに、アラーム日を作成

搭乗時間(行き)の3日前   ※DateTime→Dateへの変換をしています
image.png

⑥. 意思決定を作成

image.png

⑦. ToDoが既に作成されている場合、ToDoレコードの更新をする

ToDo項目値に以下を設定

項目
ActivityDate アラーム日
OwnerId アラーム通知先

image.png

⑧. ToDoがまだ作成されていない(ToDoレコードの取得がnullで失敗した)場合、ToDoレコードの作成をする

ToDo項目値に以下を設定

項目
ActivityDate アラーム日
IsReminderSet ポップアップを出す場合=True
Priority 優先度
ReminderDateTime アラーム日
Status ToDo作成時の状況
Subject 件名
WhatId ToDoを作成するレコードのID
OwnerId アラーム通知先

image.png
image.png

⑨. フローを繋ぎ、保存

image.png

⑩. プロセスビルダーを作成

image.png

⑪. オブジェクトを選択してプロセスを開始するタイミングを指定

image.png

⑫. このアクショングループの条件を定義

条件:搭乗時間(行き)≠ null
image.png

⑬. アクションを選択して定義

フロー変数に、レコードIdを渡す設定を忘れずに。
image.png

▼▼実際に動きを確認▼▼

  1. ToDoがまだ作成されていない場合

    1-1. {搭乗時間(行き)}を登録します。
    image.png
    1-2. 期待通りの日にアラームが設定されます。
    tempsnip2.png

  2. ToDoが既に作成されている場合(1-2の続きから)

    2-1. {搭乗時間(行き)}を変更します。
    image.png
    2-2. きちんとアラーム日も更新されます。
    tempsnip3.png

【memo】

以上、レコードを更新する度、プロセスビルダーが起動し、フローでToDoの更新をしていく処理でした。
レコードの所有者が変わったときも、ToDoが前任に残ったままにならないのでとても便利だと思います。

ちょっと手間はかかっても、ユーザーが使いやすい機能にしたくてがんばりました(o^―^o)



以上

※途中、何度かエラー吐いて画像撮り直しているのでフローバージョンが前後しているところありますが気にしないでください。。。(笑)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした