The Enable option lets you "Submit a Job for Execution" and Disable option lets you "Temporary Withdraw a Job from Execution".
For the Run Once jobs i.e. "On-Demand" and "Scheduled", you can submit them for Execution only once, since they are going to run only once.
In summary, Run Once jobs can only be enabled once. They cannot be disabled. Run Once jobs can also be edited only before you enable them. Once you Enable them, the job configuration can not be modified.
The only difference between the "On-Demand" and "Scheduled" job is that the first option initiates execution of the job right away, while the second option waits till the scheduled time or past it.
Run Once jobs ideally do not expire. They are guaranteed to run once, even if you enable them past their schedule time. The only exception where such jobs expire is if you "Set Duration" within "Patch Window" to anything other than "None".
Remember that patch window cannot be greater than 7 days i.e. 168 hours. If you think you would like it to be more than 168 hours, we would suggest you turn off the "Patch Window" option itself, by changing it to 'None'.
Recurring Jobs on the other hand can be enabled and disabled multiple times. They can also be edited in both enabled as well as disabled state, but the changes will reflect in the next run only. The next run is a loaded term as it depends on multiple parameters of a job configuration. Some of these parameters are explained below:
- The scheduled time of the job (minus 3 hours) should be a point in time later in the day.
- If the job is scheduled for the Agent time zone, which is the default value, then it is possible that for some endpoints the run may have executed and for some it is pending.
Those pending for execution more than 3 hours later from the time of saving configuration (and re-enabling the job, if disabled) will reflect change of behavior in the current run while the ones where it has already been executed or pending for execution less than 3 hours later will reflect in the next run.
Depending on the schedule of the job i.e. daily, weekly, etc, next run could be few days or weeks later. Technically, it could be few hours later too but we would recommend you to configure schedule cycles for the job a day apart, at the least.