You need to sign in to do that
Don't have an account?
kuldeep paliwal
Error Error: Compile Error: Illegal assignment from List<Project_Team__c> to Id at line 93 column 21
trigger updateProjectTeammember on opportunityTeamMember(after insert, after update, after delete){
if(trigger.isInsert || trigger.isUpdate){
Map<String,String> OppOtmfieldMap=new Map<String,String>();
OppOtmfieldMap.put('Sr. Client Insights Manager','CEM_Assigned__c');
OppOtmfieldMap.put('Client Insights Manager','CEM_2nd__c');
OppOtmfieldMap.put('Data Manager','Ops_Owner__c');
OppOtmfieldMap.put('Lead Consultant','Consultant_assigned__c');
OppOtmfieldMap.put('Support Consultant','Consultant_2nd__c');
OppOtmfieldMap.put('Analysis Support','Analysis_Support__c');
OppOtmfieldMap.put('BD/Development Partner','BD_Development_Partner__c');
Map<String,String> projOtmfieldMap=new Map<String,String>();
projOtmfieldMap.put('Sr. Client Insights Manager','Sr_Client_Insights_Manager__c');
projOtmfieldMap.put('Client Insights Manager','Client_Insights_Manager__c');
projOtmfieldMap.put('Data Manager','Ops_Manager__c');
projOtmfieldMap.put('Lead Consultant','Lead_Consultant__c');
projOtmfieldMap.put('Support Consultant','Support_Consultant__c');
projOtmfieldMap.put('Analysis Support','Analysis_Support__c');
projOtmfieldMap.put('BD/Development Partner','BD_Development_Partner__c');
list<id> oppoIdList = new list<id>();
map<id, id> oppoOtmMap = new map<id, id>();
list<id> proMemList = new list<id>();
map<id, id> oppIdProIdMap = new map<id, id>();
list<id> proId = new list<id>();
Map<Id,Opportunity> oppIdMap = new Map<Id,Opportunity>();
Map<id, id> oppIdAccIdMap = new Map<id, id> ();
Set<id> accId=new Set<Id>();
for(OpportunityTeamMember otm : trigger.new){
OppoIdList.add(otm.OpportunityId);
oppoOtmMap.put(otm.Id, otm.OpportunityId);
}
map<id, list<Project__c>> oppIdProjectListMap = new map<id, list<Project__c>>();
list<Opportunity> oppoList = [select Id, accountId, Project__c, (Select Id, Name from Project__r) From opportunity Where Id In: oppoIdList];
system.debug('--oppoIdList--' +oppoIdList);
for(Opportunity op : oppoList){
proId.add(op.id);
oppIdMap.put(op.id,op);
accId.add(op.accountId);
oppIdAccIdMap.put(op.id, op.accountId);
// oppIdProIdMap.put(op.id, op.Project__c);
oppIdProjectListMap.put(op.id, op.Project__r);
}
list<Project_Team__c> ptmListForInsert = new list<Project_Team__c>();
system.debug('--proId--' +proId);
system.debug('--accId--' +accId);
system.debug('--oppIdProIdMap--' +oppIdProIdMap);
system.debug('--oppIdAccIdMap--' +oppIdAccIdMap);
list<Project_Team__c> ptmList = [Select id, Account__c, Project__c, Member_Role__c, Team_Member__c From Project_Team__c Where Id In: proId];
map<id, list<Project_Team__c>> proPtmMap = new map<id, list<Project_Team__c>>();
for(project_Team__c ptm : ptmList){
list<project_Team__c> tempList = proPtmMap.get(ptm.Project__c);
if(templist!= null && templist.Size()>0){
tempList.add(ptm);
}else{
tempList = new list<project_Team__c>();
tempList.add(ptm);
}
proPtmMap.put(ptm.Project__c, tempList);
}
for(OpportunityTeamMember otm : trigger.new){
Boolean flag = false;
List<project__c> listOfProj = oppIdProjectListMap.get(otm.OpportunityId);
for(Project__c pro : listOfProj){
List<project_team__c> listOfPrjTm = proPtmMap.get(pro.id);
if(listOfPrjTm!= null){
for(Project_Team__c ptm : listOfPrjTm){
if(otm.userId == ptm.Team_Member__c){
flag =true;
}
}
}
if(flag ==true){
}else{
Project_Team__c ptm1 = new Project_Team__c();
ptm1.Team_Member__c= otm.userId;
ptm1.Member_Role__c = otm.TeamMemberRole;
ptm1.Account__c = oppIdAccIdMap.get(otm.OpportunityId);
ptm1.Project__c = proPtmMap.get(otm.OpportunityId);
ptmListForInsert.add(ptm1);
system.debug('--ptm1--' +ptm1);
}
}}
if(ptmListForInsert.size()>0){
insert ptmListForInsert;
}
}
}
if(trigger.isInsert || trigger.isUpdate){
Map<String,String> OppOtmfieldMap=new Map<String,String>();
OppOtmfieldMap.put('Sr. Client Insights Manager','CEM_Assigned__c');
OppOtmfieldMap.put('Client Insights Manager','CEM_2nd__c');
OppOtmfieldMap.put('Data Manager','Ops_Owner__c');
OppOtmfieldMap.put('Lead Consultant','Consultant_assigned__c');
OppOtmfieldMap.put('Support Consultant','Consultant_2nd__c');
OppOtmfieldMap.put('Analysis Support','Analysis_Support__c');
OppOtmfieldMap.put('BD/Development Partner','BD_Development_Partner__c');
Map<String,String> projOtmfieldMap=new Map<String,String>();
projOtmfieldMap.put('Sr. Client Insights Manager','Sr_Client_Insights_Manager__c');
projOtmfieldMap.put('Client Insights Manager','Client_Insights_Manager__c');
projOtmfieldMap.put('Data Manager','Ops_Manager__c');
projOtmfieldMap.put('Lead Consultant','Lead_Consultant__c');
projOtmfieldMap.put('Support Consultant','Support_Consultant__c');
projOtmfieldMap.put('Analysis Support','Analysis_Support__c');
projOtmfieldMap.put('BD/Development Partner','BD_Development_Partner__c');
list<id> oppoIdList = new list<id>();
map<id, id> oppoOtmMap = new map<id, id>();
list<id> proMemList = new list<id>();
map<id, id> oppIdProIdMap = new map<id, id>();
list<id> proId = new list<id>();
Map<Id,Opportunity> oppIdMap = new Map<Id,Opportunity>();
Map<id, id> oppIdAccIdMap = new Map<id, id> ();
Set<id> accId=new Set<Id>();
for(OpportunityTeamMember otm : trigger.new){
OppoIdList.add(otm.OpportunityId);
oppoOtmMap.put(otm.Id, otm.OpportunityId);
}
map<id, list<Project__c>> oppIdProjectListMap = new map<id, list<Project__c>>();
list<Opportunity> oppoList = [select Id, accountId, Project__c, (Select Id, Name from Project__r) From opportunity Where Id In: oppoIdList];
system.debug('--oppoIdList--' +oppoIdList);
for(Opportunity op : oppoList){
proId.add(op.id);
oppIdMap.put(op.id,op);
accId.add(op.accountId);
oppIdAccIdMap.put(op.id, op.accountId);
// oppIdProIdMap.put(op.id, op.Project__c);
oppIdProjectListMap.put(op.id, op.Project__r);
}
list<Project_Team__c> ptmListForInsert = new list<Project_Team__c>();
system.debug('--proId--' +proId);
system.debug('--accId--' +accId);
system.debug('--oppIdProIdMap--' +oppIdProIdMap);
system.debug('--oppIdAccIdMap--' +oppIdAccIdMap);
list<Project_Team__c> ptmList = [Select id, Account__c, Project__c, Member_Role__c, Team_Member__c From Project_Team__c Where Id In: proId];
map<id, list<Project_Team__c>> proPtmMap = new map<id, list<Project_Team__c>>();
for(project_Team__c ptm : ptmList){
list<project_Team__c> tempList = proPtmMap.get(ptm.Project__c);
if(templist!= null && templist.Size()>0){
tempList.add(ptm);
}else{
tempList = new list<project_Team__c>();
tempList.add(ptm);
}
proPtmMap.put(ptm.Project__c, tempList);
}
for(OpportunityTeamMember otm : trigger.new){
Boolean flag = false;
List<project__c> listOfProj = oppIdProjectListMap.get(otm.OpportunityId);
for(Project__c pro : listOfProj){
List<project_team__c> listOfPrjTm = proPtmMap.get(pro.id);
if(listOfPrjTm!= null){
for(Project_Team__c ptm : listOfPrjTm){
if(otm.userId == ptm.Team_Member__c){
flag =true;
}
}
}
if(flag ==true){
}else{
Project_Team__c ptm1 = new Project_Team__c();
ptm1.Team_Member__c= otm.userId;
ptm1.Member_Role__c = otm.TeamMemberRole;
ptm1.Account__c = oppIdAccIdMap.get(otm.OpportunityId);
ptm1.Project__c = proPtmMap.get(otm.OpportunityId);
ptmListForInsert.add(ptm1);
system.debug('--ptm1--' +ptm1);
}
}}
if(ptmListForInsert.size()>0){
insert ptmListForInsert;
}
}
}
Now on line 93: you are trying to assing Project__c(Id filed) to List<project_team__c>, hence the error due to type mismatch.
All Answers
Now on line 93: you are trying to assing Project__c(Id filed) to List<project_team__c>, hence the error due to type mismatch.
That is not possible, because a field in an object cannot hold a list of the object.
Hear Project__ c is in related list of opportunity and Project__C is master of Project_Team__C
there is so many Project__c for a single Opportunity when new member add to otm it also add to Project_Team__C of all Project__c associated with that opportunity... can you please help me regarding this..where do i have to change..Thanx..
This will resolve the problem of illegal assignment.
Thanks!
Now it show an null pointer exception.. Thanks
we already have the project so its easy after thinking i got this and its running and update all project to their related team member..
ptm1.Project__c = pro.id;
Thanx Hemant and LBK