Triggers salesforce触发器中的opportunitycontactrole
我正在使用apex触发器,在选择“联系人”时不断出现错误 我已经尝试了很多这种代码的不同配置,但我就是无法让它工作。 forceide说在opportunitycontactrole上没有联系 我没有主意了 以下是我目前的代码: 触发Opportunity上的add_primary_advisor(插入后、更新后){ List primaries=newlist()Triggers salesforce触发器中的opportunitycontactrole,triggers,salesforce,apex-code,Triggers,Salesforce,Apex Code,我正在使用apex触发器,在选择“联系人”时不断出现错误 我已经尝试了很多这种代码的不同配置,但我就是无法让它工作。 forceide说在opportunitycontactrole上没有联系 我没有主意了 以下是我目前的代码: 触发Opportunity上的add_primary_advisor(插入后、更新后){ List primaries=newlist() 由于您没有提供确切的错误,我假设错误是因为您试图将一个不存在的变量“Contact”添加到您的“primaries”列表中。您可能
由于您没有提供确切的错误,我假设错误是因为您试图将一个不存在的变量“Contact”添加到您的“primaries”列表中。您可能希望添加的是“o.Contact”。转到OpportunityContactRole,检查Contact是否存在。可能是Contact\u C更可能存在
SOQL查询确实存在问题。联系人不是OpportunityContactRole上的有效字段 此对象仅将对Contact的引用存储为ContactId 如果您想从OpportunityContactRole访问联系人的字段,可以通过交叉引用其字段进行访问,如下所示
List<Contact> primaries = new List<Contact>();
for(Opportunity o:
[Select Contact.FirstName, Contact.LastName, Contact.Email
From OpportunityContactRole
Where OpportunityContactRole='Staff' and isPrimary='True']) {
primaries.add(new Contact(FirstName=o.Contact.FristName,
LastName = o.Contact.LastName, Email =o.Contact.Email));
}
List primaries=newlist();
对于(机会o:
[选择Contact.FirstName、Contact.LastName、Contact.Email
来自OpportunityContactRole
其中OpportunityContactRole='Staff'和iPrimary='True'])){
primaries.add(新联系人)(FirstName=o.Contact.FristName,
LastName=o.Contact.LastName,Email=o.Contact.Email));
}
List<Contact> primaries = new List<Contact>();
for(Opportunity o:
[Select Contact.FirstName, Contact.LastName, Contact.Email
From OpportunityContactRole
Where OpportunityContactRole='Staff' and isPrimary='True']) {
primaries.add(new Contact(FirstName=o.Contact.FristName,
LastName = o.Contact.LastName, Email =o.Contact.Email));
}