更新特定字段时触发更新触发器

use*_*080 6 salesforce apex-code

如何在更新之前触发更新触发器只更新一个或某些特定字段,并在其他字段更新时不触发,因为它会导致其他对象中出现重复记录

Jer*_*oss 15

触发器不是那样的粒度.在更新前触发器中,使用Trigger.NewTrigger.OldMap变量来比较每个新记录,以查看您感兴趣的字段是否已更改.

for (Opportunity newOpp : Trigger.new) {
    Opportunity oldOpp = Trigger.oldMap.get(newOpp.Id);
    if (oldOpp.Name != newOpp.Name) {
        // do something
    }
}
Run Code Online (Sandbox Code Playgroud)