如果有人可以指导我检查更新调用中是否包含特定字段是否包含在更新前/后更新触发器中,我将非常感激。非常感谢。
如果有人可以指导我检查更新调用中是否包含特定字段是否包含在更新前/后更新触发器中,我将非常感激。非常感谢。
所有字段始终存在于触发器中,无论它们是否脏,要确定特定字段是否已被修改,您必须使用以下方法检索行的先前版本 oldMap
地图是一个 Map<ID, sObject>
并比较旧的和新的值。例如
trigger CaseOnParticularFieldUpdate on Case (before update) {
for (Case c: Trigger.new) {
Case oldCase = Trigger.oldMap.get(c.ID);
if (c.Field != oldCase.Field) {
// field was updated, do some magic here
}
}
}
所有字段始终存在于触发器中,无论它们是否脏,要确定特定字段是否已被修改,您必须使用以下方法检索行的先前版本 oldMap
地图是一个 Map<ID, sObject>
并比较旧的和新的值。例如
trigger CaseOnParticularFieldUpdate on Case (before update) {
for (Case c: Trigger.new) {
Case oldCase = Trigger.oldMap.get(c.ID);
if (c.Field != oldCase.Field) {
// field was updated, do some magic here
}
}
}
触发器将包括调用它的那个sobject的所有字段。您可以检查该对象中任何字段的先前(旧)值和当前(新)值,并可以对其进行比较并相应地执行操作。
希望它能帮到你。