【salesforce】一定時間経過するとレコードを追加する方法
開発者フォーラムにこんな投稿がありました。
一定期間が経過するとレコードを追加する といったことは可能でしょうか。
一定期間が経過するとレコードを追加する といったことは可能でしょうか。
取引先オブジェクトを作成後、~日経過した時点で、関連するレコードを追加するというものです。
上記だけならプロセスビルダーで可能ですが、
~日経過時点で取引先オブジェクトの項目を評価し、条件を満たしてなければ作成しないという
挙動を行おうとするとプロセスビルダーでは対処できず・・
なぜか投稿できないので、こちらに解決方法を書きます。
フローとプロセスビルダーで解決できます。
大まかな流れはこんな感じ。
1.取引先レコードが作られるとプロセスビルダーがフローを動かす。
2.フローが◯日間待機する。
3.取引先先レコードの判定する項目を持ってくる。
4.項目を判定して、trueならレコードを作る。
作るフローはこんな流れ。
最初の待機はこんな感じ。
アラーム:絶対時刻、基準時刻:
システム変数とグローバル変数→SFlow→CurrentDateTime
オフセット数:◯日や◯時間など◯に当てはまる数字
オフセット単位:日や時間と日本語で入れるらしいです、多分。
次にレコードの検索です。取引先をIDで検索します。検索はAccount、項目はIDで、値は後ほど設定するプロセスビルダーで検索用のIDを渡す変数を新規作成します。そして、レコードの項目の割り当てについては、判定条件を抽出します。今回はテストとして、チェックボックス一つがtrueかどうかで判断することにしたので、その変数をまた割り当てます。
取引先IDの変数はこのように設定。IDなのでデータ型はテキスト、入力/出力種別は入力のみです。
判定する項目を持ってくる変数は今回こう作ります。基本的に項目とデータ型を一致させて、入力のみにします。基本的に名前の付け方はなんでもいいです。チェックボックスの場合はtrue or falseなのでBooleanを選びます。BooleanってJAVAなどでも出てくる単語ですね。(私はJAVAを殆ど知らないのですが)
次に決定についてですが、先ほどの変数が指定の値だった場合はyesの結果を返すようにリソースと値を決めます。今回はBoolean形式なのでグローバル定数でtrueを選びます。
そして最後にレコードの作成。今回は取引先と参照関係になっているオブジェクトにレコードを作ることにしました。この時作るレコードは参照関係があってもなくても関係ないです。なんでも作れます。あとは次の項目値を使用からは項目と値(変数)の割り当てを行ってください。変数に入れる値はプロセスビルダーを作るときに決めるので、今はとりあえず作ってください。
あとは最初の画像のように線を引いていってください。そして、待機の右上の緑矢印をクリックして、スタートにするのを忘れずに。名前をつけて保存して有効化してください。
次はプロセスビルダーの設定です。
作成からスタートして(今回は変更はいれませんでした)、作成したレコードはすべからくルール適用時のアクションを設定します。
フローを選択して、各変数に対して、どの項目の情報をいれるか値の設定を行っていきます。
これで完成です。とりあえず時間差で項目の判断をして作成を行っているので、うまく出来ていると思います。