// Original Code
for(Account obj :updateAsDuplicate){
obj.Duplicate__c = true;
for(String oldStr : hasExternalIdOldSet){
if(obj.Id.equals(duplicateMap.get(oldStr))){
obj.Duplicate_Account__c = oldStr;
}
}
for(String email : emailList){
SendMail(email,obj.Id);
}
}
public static void SendMail(String email,String accId){
Map<string,DomainURL__c> urlMap= DomainURL__c.getAll();
Account acc = [Select Id,Name,Owner.Name FROM Account WHERE Id =: accId] ;
String HtmlBody= 'Attention, <br><br>';
HtmlBody+='Some text blalala : ' + acc.Name+ '<br><br>';
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
String[] toAddresses = new String[]{email};
mail.setToAddresses(toAddresses);
mail.setSubject('Something');
mail.setHTMLBody(HtmlBody);
mail.setSaveAsActivity(false);
mail.setWhatId(acc.Id); //
Messaging.sendEmail(new Messaging.SingleEmailMessage[] { mail });
}
Below is my attempt to rectify the error. Can someone please tell me if i am correct **
List<Messaging.SingleEmailMessage> allMails = new List<Messaging.SingleEmailMessage>();
for(Account obj :updateAsDuplicate){
obj.Duplicate__c = true;
for(String oldStr : hasExternalIdOldSet){
if(obj.Id.equals(duplicateMap.get(oldStr))){
obj.Duplicate_Account__c = oldStr;
}
}
for(String email : emailList){
SendMail(email,obj.Id);
}
}
public static void SendMail(String email,String accId){
Map<string,DomainURL__c> urlMap= DomainURL__c.getAll();
Account acc = [Select Id,Name,Owner.Name FROM Account WHERE Id =: accId] ;
String HtmlBody= 'Attention, <br><br>';
HtmlBody+='Some text blalala : ' + acc.Name+ '<br><br>';
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
String[] toAddresses = new String[]{email};
mail.setToAddresses(toAddresses);
mail.setSubject('Something');
mail.setHTMLBody(HtmlBody);
mail.setSaveAsActivity(false);
mail.setWhatId(acc.Id); //
allMails.add(mail);
Messaging.sendEmail(allMails);
}