wsnumber = (wfma.ws.Wholesaler_External_Code__c).trim();
wsname = (wfma.ws.Wholesaler_Customer_Name__c).trim();
if(wsnumber.length() > 0){
if(wfma.ws.Customer__c == null){
if(wsname.length() > 0){
Account objAcc = new Account();
objAcc.Name = wfma.ws.Wholesaler_Customer_Name__c;
objAcc.Customer_number_by_the_wholesaler__c = string.valueOf(wfma.ws.Wholesaler_External_Code__c );
objAcc.BillingStreet = string.valueOf(wfma.ws.Customer_Address_1__c + wfma.ws.Customer_Address_2__c );
objAcc.BillingCity = string.valueOf(wfma.ws.Customer_city__c );
objAcc.BillingPostalCode = string.valueOf(wfma.ws.Customer_postal_code__c );
objAcc.BillingCountry = string.valueOf(wfma.ws.Customer_country__c );
objAcc.External_Code__c= string.valueOf(myDate.year()) + string.valueOf(myDate.month()) + string.valueOf(myDate.day()) + string.valueOf(i);
insrtAccLst.add(objAcc); i = i+1;
}else{
ApexPages.Message Errmsg = new ApexPages.Message(ApexPages.severity.ERROR,'Customer name by the wholesaler should not be blank');
ApexPages.addMessage(Errmsg);
return null;
}
}
}else{
ApexPages.Message Errmsg = new ApexPages.Message(ApexPages.severity.ERROR,'Customer number by the wholesaler should not be blank');
ApexPages.addMessage(Errmsg);
return null;
}
Wsinsert.add(wfma.ws);
}
}
if(Wsinsert.size() == 0){
ApexPages.Message Errmsg = new ApexPages.Message(ApexPages.severity.ERROR,'Please select the record(s) to insert');
ApexPages.addMessage(Errmsg);
displaySelection = true;
}
if(insrtAccLst.size()>0)
{
try{
insert insrtAccLst;
}
catch (Exception e) {
ApexPages.Message errormsg = new ApexPages.Message(ApexPages.severity.ERROR,'Duplicate Accounts found. Please check the Accounts and try again later. Error is :'+e);
ApexPages.addMessage(errormsg);
ws.Wholesaler__c = null;
wscfile = null;
Return null;
}
accMap = new Map<string, string>();
for(Account acc:insrtAccLst) {
accMap.put(acc.Customer_number_by_the_wholesaler__c,acc.Id);
}
}
List<Wholesaler__c > insertWSLst = new List<Wholesaler__c>();
if(Wsinsert.size()>0){
for(Wholesaler__c wsF:Wsinsert){
if(wsF.Customer__c == null){
system.debug('List before insert___code___'+wsF.Wholesaler_Code__c);
system.debug('Acc List before insert____________'+accMap.get(string.valueOf(wsF.Wholesaler_Code__c)));
wsF.Customer__c = accMap.get(string.valueOf(wsF.Wholesaler_External_Code__c));insertWSLst.add(wsF);
system.debug('Acc List before insert____________'+wsF.Wholesaler_Code__c+wsF.Customer__c);
}else{ insertWSLst.add(wsf);
}
}
try{
insert insertWSLst;
ApexPages.Message msg1 = new ApexPages.Message(ApexPages.severity.info,insrtAccLst.size()+' Customer Records inserted successfully');
ApexPages.addMessage(msg1);
ApexPages.Message msg = new ApexPages.Message(ApexPages.severity.info,insertWSLst.size()+' Wholesaler Customer Records inserted successfully');
ApexPages.addMessage(msg);
ws.Wholesaler__c = null;
wscfile = null;
displaySelection = false;
}
catch (Exception e)
{
ApexPages.Message errormsg = new ApexPages.Message(ApexPages.severity.ERROR,'Duplicate records found. Please check the records and try again later');
ApexPages.addMessage(errormsg);
ws.Wholesaler__c = null;
wscfile = null;
}
}
return null;
}
3 answers
Manju,
I hope Amit's suggestion worked for you. May I also suggest visiting our Developer Community at
developer.force.com for additional resources and discussions of similar topics.