You need to sign in to do that
Don't have an account?
Rajashri
Invalid relationship CampaignMembers for Lead
Hi,
I am trying to retrieve the Status data from Inner Query but i am getting an error that
"Content cannot be displayed: Invalid relationship CampaignMembers for Lead"
Can anyone please help me on this? I have highlighted the line for which i am getting an error.
public with sharing class CampaignView {
public Campaign camp {get; set; }
public List<MemberWrapper> lMemberWrappers {get; set;}
public DateTime startDate{get;set;}
public CampaignView(ApexPages.StandardController controller) {
camp = (Campaign)controller.getRecord();
lMemberWrappers = new List<MemberWrapper>();
getCampaignMembers();
startDate=null;
for(Campaign c :[Select ID,(SELECT Id,CampaignId,Status FROM CampaignMembers where CampaignId =:camp.Id) FROM campaign WHERE id=:camp.Id ]){
for(Lead ld : CampaignMembers) {
for (ActivityHistory ah : ld.getSObjects('ActivityHistories')) {
lMemberWrappers.add(new MemberWrapper(ld.Phone, ld.getSObject('CampaignMembers').get('Status')));
}}}}
private List<Lead> CampaignMembers;
public List<Lead> getCampaignMembers() {
CampaignMembers = [Select Id,Name, Phone,MobilePhone,Email, LastModifiedDate,(Select id, Campaign.Name,Contact.Phone,Lead.FirstName,Lead.LastName,Lead.Name,LeadID,ContactID,Lead.Phone,Lead.Email, Lastmodifieddate,Lead.LastmodifiedDate,Status,CampaignId,Campign_ID__c,Lead.MobilePhone From CampaignMembers where CampaignId =:camp.Id ),
(Select Subject, Id,lastModifiedDate From ActivityHistories order by LastModifiedDate DESC LIMIT 1 )
From Lead where Id IN(select LeadId from campaignMember where campaignId =:camp.Id ) ];
return CampaignMembers;
}
public class MemberWrapper {
public Object Status {get; set;}
public String Phone {get; set;}
public MemberWrapper(String Phone,Object Status ) {
this.Phone = Phone;
this.Status = Status;
}}}
I am trying to retrieve the Status data from Inner Query but i am getting an error that
"Content cannot be displayed: Invalid relationship CampaignMembers for Lead"
Can anyone please help me on this? I have highlighted the line for which i am getting an error.
public with sharing class CampaignView {
public Campaign camp {get; set; }
public List<MemberWrapper> lMemberWrappers {get; set;}
public DateTime startDate{get;set;}
public CampaignView(ApexPages.StandardController controller) {
camp = (Campaign)controller.getRecord();
lMemberWrappers = new List<MemberWrapper>();
getCampaignMembers();
startDate=null;
for(Campaign c :[Select ID,(SELECT Id,CampaignId,Status FROM CampaignMembers where CampaignId =:camp.Id) FROM campaign WHERE id=:camp.Id ]){
for(Lead ld : CampaignMembers) {
for (ActivityHistory ah : ld.getSObjects('ActivityHistories')) {
lMemberWrappers.add(new MemberWrapper(ld.Phone, ld.getSObject('CampaignMembers').get('Status')));
}}}}
private List<Lead> CampaignMembers;
public List<Lead> getCampaignMembers() {
CampaignMembers = [Select Id,Name, Phone,MobilePhone,Email, LastModifiedDate,(Select id, Campaign.Name,Contact.Phone,Lead.FirstName,Lead.LastName,Lead.Name,LeadID,ContactID,Lead.Phone,Lead.Email, Lastmodifieddate,Lead.LastmodifiedDate,Status,CampaignId,Campign_ID__c,Lead.MobilePhone From CampaignMembers where CampaignId =:camp.Id ),
(Select Subject, Id,lastModifiedDate From ActivityHistories order by LastModifiedDate DESC LIMIT 1 )
From Lead where Id IN(select LeadId from campaignMember where campaignId =:camp.Id ) ];
return CampaignMembers;
}
public class MemberWrapper {
public Object Status {get; set;}
public String Phone {get; set;}
public MemberWrapper(String Phone,Object Status ) {
this.Phone = Phone;
this.Status = Status;
}}}