Triggers Salesforce:创建触发器以在自定义对象中插入记录
我正在尝试将一条新记录插入我的自定义对象Commission_C中。代码中没有错误,但更新策略_C时不会发生任何事情。我做错了什么Triggers Salesforce:创建触发器以在自定义对象中插入记录,triggers,salesforce,apex,Triggers,Salesforce,Apex,我正在尝试将一条新记录插入我的自定义对象Commission_C中。代码中没有错误,但更新策略_C时不会发生任何事情。我做错了什么 trigger statusUpdate on Policy__c (before update) { List<Commission__c> comms = new List<Commission__c>(); for(Policy__c a : trigger.new) { Commission_
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;
}
触发策略上的状态更新(更新前)
{
列表命令=新列表();
for(Policy\uu c a:trigger.new)
{
佣金c comm=新佣金c();
通信名称='testName';
通信添加(通信);
}
插入命令;
}
我已经在谷歌上搜索过很多次了,从我所知道的来看,这似乎是我应该做的。我简化了我的代码,因为本质上我只需要这一部分就可以让它全部工作。您需要检查是否遗漏了任何必需的佣金字段,还需要检查安全设置是否设置正确。打开调试日志,您应该能够看到出现了什么错误。触发策略上的状态更新(更新后) { 列表命令=新列表() } 现在你可以试试这个触发器了,我想它最有效。
触发器状态策略更新(更新前)
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;
}
{
列表命令=新列表();
for(Policy\uu c a:trigger.new)
{
佣金c comm=新佣金c();
通信id=a.id
通信名称='testName';
通信添加(通信);
}
插入命令;
}
在策略上触发状态更新(插入后)
{
列表命令=新列表()
}奇怪。触发器在目标环境中是否确实保存正常?(是沙箱还是生产组织?)是否标记为活动?例如,如果您强制它失败(
System.assert(false,'Die you dumby trigger!');
应该可以工作),该怎么办?您知道如何启用调试日志记录,从而跟踪更新策略时发生的情况吗?这就是我在插入后放置调试时发生的情况。我对这个很陌生,所以我不太知道如何使用salesforce/apex进行调试。10:52:53:184 USER_DEBUG[12]| DEBUG |(Commission|u c:{Name=testName,Id=a01i000000B2RIFAA3})噢,触发器本身很好,因为我能够让它在更新时发送电子邮件。但此部件不起任何作用。如果委员会已分配Id,则表示已成功保存。您应该能够使用url中的id值导航到它(比如https://eu1.salesforce.com/a01i000000B2RIFAA3
)。也许你希望在相关的清单上看到它?但是您没有指定任何关系,比如comms.Policy\uu c=a.Id代码>…也许您可以使用更详细的信息来描述这是如何解决问题的。
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;
}
Commission__c comm = new Commission__c ();
for(Policy__c a : trigger.new)
{
comm.id=a.id;
comm.Name = 'testName';
comms.add(comm);
}
insert comms;