You need to sign in to do that
Don't have an account?
Ashok Rathva
Insert New Record(more than 100) using Batch class.
Hi, I am getting problem to insert records into custom object's fields using batch class.
Scenario is user input's fields value (more than 100) and I stored into list variable (sqrList) now I want to insert that list variable (sqrList) data using batch execute method but from start method what I have to pass. There is no error but record is not inserted into object.
Please help me.
Scenario is user input's fields value (more than 100) and I stored into list variable (sqrList) now I want to insert that list variable (sqrList) data using batch execute method but from start method what I have to pass. There is no error but record is not inserted into object.
Please help me.
List <Answer__c> sqrList = new List<Answer__c>(); for (question q : allQuestions) { Answer__c sqr = new Answer__c(); if (q.renderSelectRadio == 'true') { if (q.required && (q.selectedOption == null || q.selectedOption == '')) { Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields')); return; } if (q.selectedOption == null || q.selectedOption == '') { sqr.Response__c = ''; } else { sqr.Response__c = q.singleOptions.get(Integer.valueOf(q.selectedOption)).getLabel(); } sqr.Question__c = q.Id; sqrList.add(sqr); } else if (q.renderFreeText == 'true') { if (q.required && q.choices == '') { Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields')); return; } System.debug('*****Select Radio ' + q.choices); sqr.Response__c = q.choices; sqr.Question__c = q.Id; sqrList.add(sqr); System.debug('*****Test List ----- ' + sqrList); } else if (q.renderSelectCheckboxes == 'true') { if (q.required && (q.selectedOptions == null || q.selectedOptions.size() == 0)) { Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields')); return; } for (String opt : q.selectedOptions) { sqr = new Answer__c(); if (opt == '' || opt == null) { sqr.Response__c = ''; } else { sqr.Response__c = q.multiOptions.get(Integer.valueOf(opt)).getLabel(); } sqr.Question__c = q.Id; sqrList.add(sqr); } } else if (q.renderSelectRow == 'true') { if (q.required && (q.selectedOption == null || q.selectedOption == '')) { Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields')); return; } if (q.selectedOption == null || q.selectedOption == '') { sqr.Response__c = ''; } else { sqr.Response__c = q.rowOptions.get(Integer.valueOf(q.selectedOption)).getLabel(); } sqr.Question__c = q.Id; sqrList.add(sqr); }
global virtual void execute(Database.BatchableContext BC, List<SObject> scope) {
insert sqrList;
}
I want to convert above method into apex batch class to insert responses given by users Its more than 100 so DML governor limit error throws.
public void submitResults() method throw DML limit of 101 error so I want to convert into batch class.
Thanks
Ashok