What Happens When Another DML Save Operation is Performed?

DEX450 - Module 10: The Save Order of Execution and Apex Transactions

📄 第 272 页 🎬 视频课程

课程章节介绍

让我们来聊聊当你执行另一个TLR(Trigger、Lightning组件、或Record-Triggered Flow)保存操作时会发生什么。首先,想象一下你正在看一个动画,这个动画会展示整个过程的流程。当你点击保存按钮时,系统不会立即提交你的更改,而是会等到所有相关的操作都完成之后,也就是在OOE(Order of Execution,执行顺序)结束时,才会真正提交这些更改。 现在,重点来了:任何可以修改记录的步骤,比如更新字段或者创建新记录,都可能触发另一个过程。这些被触发的流程我们称之为“衍生”流程。但是,这些衍生流程有一个特点,它们不会包括提交和提交后的操作。也就是说,它们不会立即把更改保存到数据库中,也不会执行那些只有在记录提交后才能进行的操作。 为了方便理解,我们在这里使用“当前流程”这个短语,而不是更专业的“Apex Transaction”。这是因为我们还没有深入讨论Apex Transaction的概念,但别担心,下一个主题我们会详细解释这一点。 所以,简单来说,当你执行一个保存操作时,系统会按照一定的顺序处理所有相关的步骤,包括可能触发的其他流程,但最终所有的更改都会在OOE结束时一起提交。希望这个解释能帮助你更好地理解这个过程!