MENU
Abo
某SIer勤務。
ITエンジニアです。
日々の学びをつらつらと書いています。
保有資格:
Salesforce認定アドミニストレーター  
Salesforce認定Platformデベロッパー
Salesforce認定上級Platformデベロッパー
カテゴリー
アーカイブ

【Salesforce】レコードトリガーの複数回起動制御

仕事メンバーからこんな質問がありました。

質問:起動条件が「項目Aが変更されたら」となっているレコードトリガーの処理内で項目Aを更新した際、再度そのトリガーは起動するのか?

回答としては、

起動条件が「項目Aが変更されたら」と設定されている場合、そのフローが実行されるのは項目Aの値が初めて変更されたときのみ

です。

トリガーの動作

トリガーの動作について詳細にみてみましょう。

レコードトリガーは、レコードの挿入、更新、削除などのデータ操作時に自動的に呼び出されるプログラムです。レコードトリガーフローでは、レコードの作成、更新、削除などのアクションが発生したときにフローが起動します。

  1. 初回のトリガー実行
  2. 項目Aが変更されると、フローが初めて実行されます。
  3. フロー内で項目Aを更新する処理が含まれている場合、その更新が実行されます。
  4. フローが実行中に項目Aが更新されても、同じフローが再度起動することはありません。
    • フローの実行が完了するまで、新たなフローの起動は抑制されます。

結論

フロー内で項目Aを更新する処理があっても、実行中のフローがその更新によって再度起動することはありません。

しかし、フロー実行完了後に項目Aが再度変更されると、フローは再び起動します。

無限ループを防ぐための設計がちゃんと備わっているんですね。

以上です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

某SIer勤務。
Salesforceエンジニアです。
日々の学びをつらつらと書いています。
Certified Administrator
Certified Platform DeveloperⅠ
Certified Platform DeveloperⅡ
Certified Sales Cloud Consultant

コメント

コメントする

CAPTCHA