嗨,我有一个自定义对象,该对象具有一个类型为Account的自定义字段。创建客户记录时将创建子自定义记录。我要在Account上插入触发器后在中创建子记录,并使子记录的名称与Account的名称相同。
但是以该名称,我得到的是15位ID,而不是帐户的真实名称。可能是什么问题?
用于触发器的代码##
if(Trigger.isAfter && (Trigger.isInsert)){
AccountTriggerHelper.createReferrer(Trigger.new);
}
在Apex类中:
public static void createReferrer(List<Account> accountList){
List<Referral__c> newReferral = new List<Referral__c>();
for(Account acc : accountList) {
if(acc.Talos_RecordType__c=='Referrer'){
system.debug('==acc=1='+acc);
Referral__c ref = new Referral__c();
System.debug('-----acc.Name----'+acc.Name);
ref.Name = acc.Name;
ref.Account__c = acc.Id;
ref.Email__c = acc.PersonEmail;
ref.Talos_IQOS_Expert_ID__c = acc.Talos_IQOS_Expert_ID__c;
ref.Talos_Referrer_Type__c = acc.Referrer_Type__c;
ref.User_Id__c = acc.UserID__c;
ref.Email_Validation__c = true;
ref.Store_Code__c = acc.Store_Code__c;
newReferral.add(ref);
system.debug('==referral=1='+newReferral);
}
}
谢谢, 马克
答案 0 :(得分:0)
此代码无法导致在“名称”字段中填充ID。帐户或子对象或组织上的任何工作流,流程构建器上可能还有另一个触发器,可以再次创建该更改。您可以检查子记录的创建日期和修改日期吗? 如果它们不同,那么很可能我是对的。