What Happens When Roll-Up Summary Invokes DML on Parent?

DEX403 - Lesson 13: Save Order of Execution

📄 第 336 页 🎬 视频课程

课程章节介绍

让我们来聊聊当汇总摘要在父母记录上触发TLR(Trigger Logic Recalculation,触发器逻辑重新计算)时会发生什么。首先,想象一下你正在看一部动画片,动画片里有一个角色在做一些动作,然后突然,另一个角色也开始动起来了。这就像Salesforce中的流程一样,一个动作可以引发另一个动作。 在Salesforce中,当你对某个记录进行修改时,比如更新一个字段,这个动作可能会触发一个流程,我们称之为“当前流程”。这个流程可能会包含一系列的步骤,比如更新其他记录、发送通知等。但是,如果在这个过程中,你触发了TLR,也就是说,你修改了父记录,那么Salesforce会重新计算所有相关的触发器逻辑。 这里有一个关键点:任何可以修改记录的步骤都可以通过执行顺序启动另一个过程。也就是说,一个流程的结束可能是另一个流程的开始。但是,这里有一个小细节需要注意:如果这个新启动的流程是“衍生”出来的,那么它不会包括提交和提交后的操作。也就是说,它不会立即把更改保存到数据库中,而是等到整个流程结束后再一起提交。 最后,我们在这里用“当前流程”这个词,而不是更专业的“Apex Transaction”,因为我们现在还没有深入讨论Apex Transaction。不过别担心,下一个主题我们会详细解释这个概念。 所以,简单来说,当你在Salesforce中修改记录并触发TLR时,就像是在看一部动画片,一个动作引发另一个动作,但所有的更改都会等到最后一起提交。希望这个解释能帮助你更好地理解这个过程!