Triggers Salesforce触发器:Trigger.isBefore何时返回true或false?取决于什么?
我经常在许多SFDC触发器中看到IsAfter和IsBefore方法,但我无法理解为这些方法提供真值或假值的逻辑! 所以,一般来说,我有Trigger.isBefore(同样的问题对IsAfter有效),我如何理解这个布尔值是真是假?取决于什么? 我阅读了这些方法的文档,但我无法理解为什么Trigger.isBefore会返回true或false!这件事让我很恼火,我想我永远不会完全理解这个概念,请帮帮我 说明,如果在保存任何记录之前触发触发器,isBefore将返回true;如果在保存所有记录之后触发此触发器,isAfter将返回trueTriggers Salesforce触发器:Trigger.isBefore何时返回true或false?取决于什么?,triggers,salesforce,Triggers,Salesforce,我经常在许多SFDC触发器中看到IsAfter和IsBefore方法,但我无法理解为这些方法提供真值或假值的逻辑! 所以,一般来说,我有Trigger.isBefore(同样的问题对IsAfter有效),我如何理解这个布尔值是真是假?取决于什么? 我阅读了这些方法的文档,但我无法理解为什么Trigger.isBefore会返回true或false!这件事让我很恼火,我想我永远不会完全理解这个概念,请帮帮我 说明,如果在保存任何记录之前触发触发器,isBefore将返回true;如果在保存所有记录
该页面还提供了一个有用的示例,说明如何使用该示例生成仅在特定触发条件下执行的代码。
trigger.isBefore
仅在条件中包含以下一项或多项时才会返回true:
- 删除前的
- 插入前的
- 更新前的
触发器。isAfter
除非您需要在条件中用“after”替换“before”
大多数情况下,您将处理中的步骤3和6
触发器之前的。
[触发器.isBefore
将为真]。
[触发器。isAfter
将为真]我希望这会有所帮助。我阅读了所有的页面和示例,但我仍然无法理解其中的逻辑:好的,如果在保存任何记录之前触发了触发器,isBefore将返回true,但我如何知道触发器是在保存任何记录之前还是之后触发的?您可以在保存之前和之后编写相应的触发器代码,例如,在before状态下,您可能会进行验证,而在after状态下,您可能会导致其他记录发生更改。从一个建议来看,这可能涉及到在审计表中生成日志记录之类的事情。非常感谢!即使这样,这个问题也有点老了,现在我在这个领域的表现比一年前好多了!