tyoshikawa1106のブログ

- Force.com Developer Blog -

SFDC:Apexトリガーと主従関係の積み上げ集計

主従関係のオブジェクトで従オブジェクトが積み上げ集計に影響無いような条件で更新されたときに主オブジェクトのApexトリガーが実行されるか確認してみました。


こんな感じのトリガーで検証します。
f:id:tyoshikawa1106:20150204041435p:plain


従オブジェクトが新規登録された場合です。

f:id:tyoshikawa1106:20150204042235p:plain


主オブジェクトの積み上げ集計項目が更新されるので、主オブジェクトのUpdateトリガーが実行されます。

f:id:tyoshikawa1106:20150204042320p:plain


従オブジェクトで積み上げ集計に影響の無いような更新を行った場合です。

f:id:tyoshikawa1106:20150204042448p:plain


主オブジェクトは更新されないため、Apexトリガーが実行されることはありません。

f:id:tyoshikawa1106:20150204042750p:plain


従オブジェクトの主オブジェクトを変更した場合です。

f:id:tyoshikawa1106:20150204043138p:plain


積み上げ集計に影響されるレコードは2レコードになるため、2件のレコードがUpdateトリガーで実行されます。

f:id:tyoshikawa1106:20150204043126p:plain


ということで積み上げ集計項目の更新でもApexトリガは実行されますが、項目の値が変更されないように従オブジェクトを更新した場合は、Apexトリガーは実行されません。