Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

Problem

Sometimes instances of periodic orders have to be skipped, e.g. for maintenance. This recipe describes how to skip one ore or more planned executions of an order using schedules.

Configuration

Assume you have an order which should be started at 10 p.m. every day. Normally you would add a run-time like this directly to the order configuration:

Code Block
languagexml
 <period  single_start="22:00"/>

Using a schedule the run-time is located in a single configuration element:

Code Block
languagexml
 <schedule name="every_day_at_10pm">
    <period  single_start="22:00"/>
 </schedule>

The order will reference this schedule as follows:

Code Block
languagexml
 <order ...>
    ...
    <run_time schedule="every_day_at_10pm"/>
 </order> 

Now it is possibile to substitute the schedule every_day_at_10pm by another schedule for a specific time range. For our purpose we need a schedule that produces no run-time:

Code Block
languagexml
 <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 timeIn 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 run-time for a specific time range using JOC as follows:

...