trigger AccountTrigger on Account (after insert) {
if (Trigger.isAfter) {
if (Trigger.isInsert) {
AccountTriggerclass.createOpportunityForNewAccounts(Trigger.New);
}
}
}
public class AccountTriggerclass {
public static void createOpportunityForNewAccounts(List<Account> accList) {
List<Opportunity> oppList = new List<Opportunity> ();
for (Account acc : accList) {
oppList.add(
new Opportunity(
Name = acc.Name == null ? 'Opp' : acc.Name,
//CloseDate = System.today(),
StageName = 'Prospecting',
AccountId = acc.Id
)
);
}
// insert oppList;
Database.SaveResult[] results = Database.insert(oppList, false);
for (Integer i = 0; i<results.size(); i++) {
if (!results[i].isSuccess()) {
for (Database.Error err : results[i].getErrors()) {
accList[i].addError('' + err.getMessage());
}
}
}
}
}