Executing Schedules
As a developer and object designer, after defining a Schedule object you must first activate it manually. The status of the Schedule is then Active. It will execute the first task as soon as all the required conditions are met considering the Schedule Period Turnaround Time and Period Duration as well as the Start Time and Calendar Condition of each task.
This page includes the following:
How Tasks in a Schedule are Processed
When the Schedule is activated, it checks the start times of all its tasks. There are two possibilities:
- The start time of a task lies in the future.
The status of the task is set to Waiting for start time. When the Scheduled time arrives, the task is initiated.
- The start time of a task lies in the past.
The status of the task is set to ENDED_TIMEOUT -Start time exceeded. You have to reset it; as a result, it executes immediately.
When tasks start, all conditions and dependencies are checked, that is, Calendars and assigned Sync objects, if any. Depending on the results of these checks, the tasks start or not and their status are set accordingly. For more information, see What Happens when the Tasks Are Activated?.
During their execution, their runtime is monitored. This allows you to tell the Schedule how to react in case the result is not the one you expected.
Checking Schedules on Start
When the Automation Engine starts, it checks whether an active turnaround period took place in the past. If that is the case, it will run as many periods as necessary until it reaches the first one in the future. Only then it checks again whether there are scheduled tasks with a start time in the past. If there are any, their status is set to ENDED_TIMEOUT -Start time exceeded.
Monitoring and Modifying the Schedule
You can check the status of tasks that are stored in a Schedule object in the Process Monitoring perspective and modify their definitions. Changes to the task and task properties that you make directly in the Schedule can also be passed on to the next period turnaround. Note that in this case, it is not required to restart the schedule. You can also start tasks immediately, regardless of their current states, start times or start conditions.
Each period of a schedule has its own Execution data record. This implies that a new RunID is assigned with each period turnaround.
Restarting an Active Schedule
You can restart an active Schedule at any time. You do it in the Process Assembly perspective.
To Restart an Active Schedule
Depending on where you are working, do one of the following:
-
In the Process Monitoring perspective, do one of the following:
- On the Tasks list, right-click the Schedule and select Open Object or Open Object in new Window.
- In the Schedule monitor, expand the Modify Schedule buttons and select either Open Object or Open Object in new Window.
In either case, the Schedule object definition pages open up in the Process Assembly perspective.
Expand the Execution Options button on the toolbar and select Restart.
-
In the Process Assembly perspective right-click the object and select Execution Options > Restart.
Stopping an Active Schedule
Schedules can stop in two different ways:
-
Manually
You can stop an active Schedule at any time from the Process Monitoring perspective:
- On the Tasks list, right-click the Schedule and select either Suspend or Suspend (recursive).
- In the Schedule monitor, expand the Modify Schedule buttons and select either Suspend or Suspend (recursive).
If you select Suspend, no further tasks are started.
If you select Suspend (recursive), the tasks that are still running will be stopped. In active Workflows, tasks that are still running will continue running but all subsequent tasks will be stopped.
-
Automatically due to a period turnaround
If a schedule object is still active and its tasks are being executed when a period turnaround takes place, the following occurs:
- A new instance of the schedule is created for the new period.
- The tasks of the old instance that have not finished yet continue running in the new Schedule instance
- The tasks of the old instance that had already finished are available and displayed on the Tasks list as single tasks; their execution data is still available.
Monitoring Schedule Executions
You can check the status of the tasks included in a Schedule at any time, also while they are being processed.
- On the Tasks list in the Process Monitoring perspective, right-click the Schedule and select Open Monitor.
- The Status column indicates the current status of each task in the Schedule.
See also: