5 answers
Hi Shubham,Please try this code. I tried in my org and it is working fine and let me know if you have any queries.trigger UpdateClass on Contact (after insert,after update) { List<class__c> clsList = new List<class__c>(); Class__c cls= new Class__c(); for(Contact Con : trigger.new) { if(Con.LastName != null && Con.Class__c!=null){ cls=[select id,teacher__c from class__c where id=:con.class__c]; if(cls.teacher__c!=null) cls.teacher__c = cls.teacher__c + ';' + Con.FirstName +' '+Con.LastName; else cls.teacher__c =Con.FirstName +' '+Con.LastName; clsList.add(cls); } } System.debug('clsList'+clsList); update clsList;} Thanks,Sowmya. Hi Shubham,I don't think you can do it with a standard way. As of my knowledge, you need to customize the whole page using Visualforce and Apex. Thanks,Sowmya. Hi Sowmya,Thanks for your reply. I can add a new contact to my teacher field with your solution, there is something else I would like to implement - I also want the new contact to be added to multi-select picklist values so that whenever a new class is created all the new contacts are available for teacher selection.Can you help me extending your code to update multi-select picklist values?Thanks and Regards,Shubham Hi Niraj,I have unchecked the given "Restrict picklist to the values defined in the value set" but still, I don't understand your answer, I need to insert the name of contact newly generated to my custom object's picklist field values.Let me elaborate my problem. My custom object name is class__c and it has a multi-select teacher__c picklist field (i.e there can be multiple teachers teaching the same class or say different sections of the same class). All those teachers are added to my contacts.I want that whenever a new contact is added, the picklist values are updated with the new person also.Any help is appreciated.Shubham Nandwana. Hi Shubham,Yes, its possible but make sure you have unchecked the checkbox option "Restrict picklist to the values defined in the value set" of your multiselect picklist. Try this code:
trigger ContactTrigger on Contact(before insert) {
if(trigger.isBefore && trigger.isInsert) {
for(Contact objCon : trigger.new) {
if(objCon.Contact_Name__c != null)
objCon.Contact_Name__c = objCon.Contact_Name__c + '; ' + objCon.Name;
else
objCon.Contact_Name__c = objCon.Name;
system.debug('--after objCon.Contact_Name__c---' + objCon.Contact_Name__c);
}
}
}
If it works for you, mark your Ans
ThanksNiraj