I am trying to send a mass email to list of contacts from the apex. SingleEmailMessage has the option to set OrgWideEmailAddress but I don't see an option in MassEmailMessage.
Below is the code to set from email address in SingleEmailMessage.
OrgWideEmailAddress[] owea = [select Id from OrgWideEmailAddress where Address = '[email protected]'];
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
if ( owea.size() > 0 ) {
mail.setOrgWideEmailAddressId(owea.get(0).Id);
}
How to set from email address in MassEmailMessage.
List<contact> lstcon=[Select Id,Name,Email,RecordTypeId,RecordType.Name From Contact where RecordType.Name = 'OrgHead'];
List<Id> lstids= new List<Id>();
for(Contact c:lstcon)
{
lstids.add(c.id);
}
EmailTemplate et=[Select id,subject,body from EmailTemplate where name = 'CTemplate' limit 1];
Messaging.MassEmailMessage mail = new Messaging.MassEmailMessage();
mail.setTargetObjectIds(lstIds);
mail.setTemplateId(et.id);
Messaging.sendEmail(new Messaging.MassEmailMessage[] { mail });