Schedulable Apex Batch Boilerplate
global class ExampleSchedulableBatch implements Database.Batchable<SObject>, Database.Stateful, Schedulable {
global Integer recordsProcessed = 0;
global Database.QueryLocator start(Database.BatchableContext bc) {
}
global void execute(Database.BatchableContext bc, List<IKA_Sub_Group_Plan__c> scope) {
}
global void finish(Database.BatchableContext bc) {
System.debug(recordsProcessed + ' records processed!');
if (recordsProcessed > 0) {
// Dispatch debugging email
String address = 'example@example.com';
if (address.length() > 0) {
String Message = '';
List<String> toAddresses = new List<String>();
toAddresses.add(address);
Messaging.SingleEmailMessage mail = new Messaging.SingleEmailMessage();
mail.setToAddresses(toAddresses);
mail.setSenderDisplayName('');
mail.setSubject('');
mail.setHtmlBody(Message);
Messaging.sendEmail(new Messaging.SingleEmailMessage[]{
mail
});
}
}
}
global void execute(SchedulableContext param1) {
ExampleSchedulableBatch b = new ExampleSchedulableBatch();
Database.executeBatch(b);
}
}