首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >更新触发器后的Salesforce

更新触发器后的Salesforce
EN

Stack Overflow用户
提问于 2017-10-05 07:59:56
回答 1查看 3.3K关注 0票数 0

我在更新触发器之后创建了以下内容,但是我无法保存它,我不太清楚为什么它不能工作

代码语言:javascript
复制
trigger Adhoc_Approval_process_trigger on Ad_Hoc_Approval__c (after update) {

    list<Ad_Hoc_Approval__c> ladh= new list<Ad_Hoc_Approval__c>(); 
    list<Ad_Hoc_Approval__c> query=[select Status__c,Submitted_for_Approval_Date__c from Ad_Hoc_Approval__c];
    for(Ad_Hoc_Approval__c adh : query)
    {
        if(adh.Status__c =='Submitted for Approval')
        {
            adh.Submitted_for_Approval_Date__c=Date.today();
            ladh.add(adh);
        }

    }

    update ladh;

}

我也把它转换成了一个预置更新触发器,它工作得很好,谁能帮我理解一下原因吗,

代码语言:javascript
复制
trigger Adhoc_Approval_process_trigger on Ad_Hoc_Approval__c (before update) {

        for(Ad_Hoc_Approval__c adh : trigger.new)
        {
            if(adh.Status__c =='Submitted for Approval')
            {
                adh.Submitted_for_Approval_Date__c=Date.today();

            }

        }



    }

非常感谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-05 08:29:54

你的意思是因为它没有编译而无法保存?嗯,看上去不错,有什么差错吗?

您的第一个版本将是一个永无止境的循环:)更新->更新->更新.更不用说查询没有WHERE子句,所以一旦达到10,0001条记录,它最终会爆炸.

第二个版本要好得多:)只对当前触发器的作用域和“更新前”免费保存到数据库。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46580660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档