Triggers APEX触发器在每次创建新案例时使用案例编号更新联系人字段

Triggers APEX触发器在每次创建新案例时使用案例编号更新联系人字段,triggers,salesforce,field,apex,Triggers,Salesforce,Field,Apex,我正在尝试创建Salesforce APEX触发器,以便在每次创建新的案例记录时,使用分配的案例编号更新联系人字段“Last_Case_Number_Solved” 请帮忙 我尝试了多种代码,但都没有成功 请看这个代码。希望这对你有帮助 trigger CaseTrigger on Case (after insert) { Map<Id, String> contactIdToCaseNumberMap = new Map<Id, String>();

我正在尝试创建Salesforce APEX触发器,以便在每次创建新的案例记录时,使用分配的案例编号更新联系人字段“Last_Case_Number_Solved”

请帮忙


我尝试了多种代码,但都没有成功

请看这个代码。希望这对你有帮助

trigger CaseTrigger on Case (after insert) {
    Map<Id, String> contactIdToCaseNumberMap = new Map<Id, String>();

    for (Case c : Trigger.new) {
        if (String.isNotBlank(c.ContactId)) {
            contactIdToCaseNumberMap.put(c.ContactId, c.CaseNumber);
        }
    }

    List<Contact> contactsToUpdate = [SELECT Id, Last_Case_Number_Solved__c FROM Contact WHERE Id IN :contactIdToCaseNumberMap.keySet()];
    for (Contact cont : contactsToUpdate) {
        cont.Last_Case_Number_Solved__c = contactIdToCaseNumberMap.get(cont.Id);
    }
    update contactsToUpdate;
}
触发案例案例案例触发案例(插入后){
Map contactIdToCaseNumberMap=新映射();
对于(案例c:触发器。新建){
if(String.isNotBlank(c.ContactId)){
ContactId至CaseNumber映射输入(c.ContactId,c.CaseNumber);
}
}
列出contactsToUpdate=[从联系人中选择Id,最后一个案例号\u已解决\u c,其中Id位于:contactIdToCaseNumberMap.keySet()];
用于(联系方式:联系方式更新){
cont.Last_Case_Number_Solved__c=ContactId到CaseNumberMap.get(cont.Id);
}
更新联系人更新;
}