How to Schedule Apex Class in Salesforce
Schedule Apex Jobs
Use the Apex scheduler and the
Schedulable interface if you have specific Apex classes that you want to run on a regular basis, or to run a batch Apex job using the Salesforce user interface.
Salesforce schedules the class for execution at the specified time. Actual execution may be delayed based on service availability.
To schedule jobs using the Apex scheduler:
- Implement the
Schedulable interface in an Apex class that instantiates the class you want to run.
- From Setup, enter Apex class in the Quick Find box, select Apex Classes, and then click Schedule Apex.
- Specify the name of a class that you want to schedule.
- Specify how often the Apex class is to run.
- For Weekly—specify one or more days of the week the job is to run (such as Monday and Wednesday).
- For Monthly—specify either the date the job is to run or the day (such as the second Saturday of every month.)
- Specify the start and end dates for the Apex scheduled class. If you specify a single day, the job only runs once.
- Specify a preferred start time. The exact time the job starts depends on service availability.
- Click Save.
You can only have 100 active or scheduled jobs concurrently.