Skip to main content
How to call another batch apex from one batch apex? i am providing 2 sample batch apexes just for testing purpose, or else can some one provide me a sample batch apex in which another batch will be called

Batch apex 1

public class BatchLeadConverted implements database.Batchable<sobject>

{

    list<lead> llist=new list<lead>();

    public string query='select id,name,status from lead';

    public string flag='Closed - Not Converted';

    

    public database.querylocator start(database.BatchableContext bc){

       return database.getQueryLocator(query); 

  }

    public void execute(database.BatchableContext bc,list<lead> le){

        for(lead l:le){

            if(l.status==flag)

            {

                llist.add(l);

            }

                

        }

      delete llist;            

      database.emptyRecycleBin(llist); 

    }

    public void finish(database.BatchableContext bc){

        

    }

 }

called with below code 

Batchleadconverted b=new BatchLeadConverted();

database.executebatch(b,2); 

Batch Apex 2

public class accno implements database.Batchable<sobject>

{

    integer i=0;

    public string query='select id,name from account';

    public Database.QueryLocator start(Database.BatchableContext bc)

    {

        return database.getQueryLocator(query);   

    }

    public void execute(database.BatchableContext bc, list<account> acc)

    {

        for(account a:acc)

        {            

          a.name=a.name+i;i++; 

        }

     update acc;       

    }

    public void finish(database.BatchableContext bc)

    {

        messaging.SingleEmailMessage ms=New messaging.SingleEmailMessage();

        string[] mailme=new string[]                {'xxxxxx@gmail.com'};

        ms.settoAddresses(mailme); 

        ms.setsubject ('record update');

        ms.setPlainTextBody('ExampleText');

        messaging.sendEmail(new messaging.SingleEmailMessage[]{ms});

    }

 

}

call with below code

accno a=new accno ();

database.executebatch(a)
6 respostas
0/9000