Salesforce 如何在父对象字段中获取子对象中记录数?

Salesforce 如何在父对象字段中获取子对象中记录数?,salesforce,apex,Salesforce,Apex,我有一个对象参与者,它是交互的孩子。在编辑子对象记录时,父对象中的字段应递增。该场景是这样的:如果第一次邀请为true,并且rsvp为null,则父对象上的邀请计数应该增加。下一步,对于同一记录,如果rsvp设置为yes,则只有父对象上的rsvp字段应该递增。根据我的逻辑,它在邀请和rsvp中都在增加。下面是触发器 Set<Id> interactionIds = new Set<Id>(); for (Participant__c erpAccount : partic

我有一个对象参与者,它是交互的孩子。在编辑子对象记录时,父对象中的字段应递增。该场景是这样的:如果第一次邀请为true,并且rsvp为null,则父对象上的邀请计数应该增加。下一步,对于同一记录,如果rsvp设置为yes,则只有父对象上的rsvp字段应该递增。根据我的逻辑,它在邀请和rsvp中都在增加。下面是触发器

Set<Id> interactionIds = new Set<Id>();
for (Participant__c erpAccount : participantList){
    interactionIds.add(erpAccount.Interaction__c);
}

List<Interaction__c> relatedInteractions =
    [Select i.Total_Number_Of_Invited_Attendees__c,
        (Select Invited__c,RSVP_Status__c,HCP__c,Interaction__c
 From  Participants__r
            WHERE Role_Group__c = 'Attendee'
                        AND (Invited__c = true
                        OR RSVP_Status__c = 'Yes'
                        OR HCP__c !=NULL))
        From Interaction__c i where id IN : interactionIds];

for(Interaction__c acc : relatedInteractions){
    //acc.Total_Number_Of_Invited_Attendees__c = 0; 

    for(Participant__c p : acc.Participants__r){
        if(p.Invited__c == true)
        {      
            if(p.RSVP_Status__c == 'Yes')
            {
                if(p.HCP__c != null)
                {
                   acc.Total_No_of_Confirmed_Customer_Attendees__c += 1;
                }
                else
                {
                    acc.Total_Number_of_Confirmed_Attendees__c += 1;                          
                }
            }
            else
            {
                acc.Total_Number_of_Invited_Attendees__c += 1;
            }
        }       
    }
}

update relatedInteractions;

提前谢谢

每当参与者对象更新时,您需要更新交互对象,当前您正在更新同一对象。我有更新的代码每当参与者对象更新时,您需要更新交互对象,当前您正在更新同一对象。我有更新的代码