Table of Contents | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
Problem
Sometimes instances of a periodic order execution has orders have to be skipped, e.g. for maintenance. This recipe describes how you can to skip one ore or more planned executions of an order using schedules.
...
Configuration
Assume you have an order which should be start started at 10 p.m. every day. Normally you would place add a runtime run-time like this directly in to the order configuration:
Code Block | ||
---|---|---|
| ||
<period single_start="22:00"/>
|
Using a schedule the runtime run-time is placed located in a single configuration element:
Code Block | ||
---|---|---|
| ||
<schedule name="every_day_at_10pm">
<period single_start="22:00"/>
</schedule>
|
The order referenced to will reference this schedule as follows:
Code Block | ||
---|---|---|
| ||
<order ...>
...
<run_time schedule="every_day_at_10pm"/>
</order>
|
Now it is possibile to substitute the schedule every_day_at_10pm by another one schedule for a specific time range. For our purpose we need a schedule that produces a manual start of the orderno run-time:
Code Block | ||
---|---|---|
| ||
<schedule substitute="every_day_at_10pm" valid_from="2013-01-01 00:00:00" valid_to="2013-01-01 01:00:00" name="manual_start"/>
|
The time range is in the past, so it will have no effect at the time.
In this example the schedule substitute manual_start is effective for the first hour of the year 2013.
Solution
After preparing the configuration described above you can skip the daily runtime run-time for a specific time range using JOC as follows:
- Choose the Schedules tab in JOC
- Select the schedule manual_start
- Choose Edit schedule in the Substitute menu
- By clicking runtime editor you can change the time range the substitute overlays the default scheduler every_day_at_10pm.