Salesforce:创建一个触发器以在自定义对象中插入记录

时间:2014-01-30 18:04:26

标签: triggers salesforce apex

我正在尝试将新记录插入自定义对象Commission_C。代码中没有错误,但更新Policy_C时没有任何反应。我做错了什么?

trigger statusUpdate on Policy__c (before update) 
{
    List<Commission__c> comms = new List<Commission__c>();

    for(Policy__c a : trigger.new)
    {
       Commission__c comm = new Commission__c ();
       comm.Name = 'testName'; 
       comms.add(comm);      
    }

    insert comms; 

}

我已经广泛搜索过,从我所知道的,这似乎应该是它应该是什么。我已经简化了我的代码,因为基本上我只需要这部分来完成所有工作。

4 个答案:

答案 0 :(得分:1)

trigger statusUpdate on Policy__c (before update) 
{
    List<Commission__c> comms = new List<Commission__c>();

    for(Policy__c a : trigger.new)
    {
       Commission__c comm = new Commission__c ();
       comm.id=a.id
       comm.Name = 'testName'; 

       comms.add(comm);      
    }

    insert comms; 

}

答案 1 :(得分:0)

您需要检查是否错过了Comission__c的任何必填字段,并检查安全设置是否设置正确。打开调试日志,你应该能够看到出错的地方。

答案 2 :(得分:0)

在Policy__c上触发statusUpdate(更新后) {     列出comms = new List();

for(Policy__c a : trigger.new)
{
   Commission__c comm = new Commission__c ();
   comm.Policy__c = a.id;
   comm.Name =a. 'testName'; 
   comms.add(comm);      
}

insert comms; 

}

现在你可以试试这个触发器,我认为它最有用。

答案 3 :(得分:0)

在Policy__c上触发statusUpdate(插入后) {     列出comms = new List();

Commission__c comm = new Commission__c ();

for(Policy__c a : trigger.new)
{
   comm.id=a.id;
   comm.Name = 'testName'; 
   comms.add(comm);      
}

insert comms; 

}