Salesforce静态属性获取用户保存的值

Salesforce静态属性获取用户保存的值,salesforce,apex,Salesforce,Apex,假设我在一个包含托管包的Salesforce沙盒上,该托管包有一个before insert触发器,该触发器在托管包中将选取列表的值默认为valueA 我已经创建了before Insert事件,我正在检索用户输入的值,假设ValueUser并将其分配给另一个类上的静态属性s_a 查看调试日志时,我看到以下内容: 1-My before insert触发器在第一次拉动ValueUser并按预期为其分配静态属性s_a时触发 2-before insert触发器第二次触发,这次s_a为空 我如何确保

假设我在一个包含托管包的Salesforce沙盒上,该托管包有一个before insert触发器,该触发器在托管包中将选取列表的值默认为valueA

我已经创建了before Insert事件,我正在检索用户输入的值,假设ValueUser并将其分配给另一个类上的静态属性s_a

查看调试日志时,我看到以下内容: 1-My before insert触发器在第一次拉动ValueUser并按预期为其分配静态属性s_a时触发 2-before insert触发器第二次触发,这次s_a为空


我如何确保ValueUser在第一次保存到s_a时,即使在插入触发器之前触发了多个其他托管包,也能够获取该值。

我认为这是不可能的。无法保证多触发器执行的顺序。您能否分享您试图通过触发器实现的业务需求?这可能有助于为另一种方法提出一些建议。正如@KosukeSakai所说,触发顺序根本无法保证。保存此字段之前,您需要添加设置此字段的验证规则或工作流规则,以确保设置了字段,这样托管包触发器就不会将其默认为某个值。