Time & Dependencies
Usually, tasks in Workflows start as soon as their predecessors have finished. However, you can define multiple parameters in their properties that affect the task sequence in the Workflow. In the Time & Dependencies properties tab you define the following time and status parameters that determine when a task actually starts:
- Earliest and the latest start time at which the task should start
- Checkpoints that help you monitor the behavior of the Workflow
- Predecessor status dependencies
Using Live Estimated Runtime (ERT) with Time and Dependencies
ERT only considers the Earliest Start Time for evaluation and not the Latest End Time.
Example: Consider the following linear workflow with three tasks:
- Task 1 with an ERT of 30 minutes
- Task 2 with an ERT of 30 minutes and the Earliest Start Time: 12:00
- Task 3 with an ERT of 30 minutes and Latest End Time: 13:00
If the workflow starts at 11:00am, the ERT should be 120 minutes and not 90 minutes. This is because Task 2 can only start at 12:00. If Task 2 is delayed, the estimates will not be adjusted, therefore Task 3 will not meet its Latest End Time. However, the estimate will not be adjusted if task 2 has a delay and task 3 cannot meet its latest end time of 13:00
- In the Workflow editor, right-click the task, select Properties and open the Time & Dependencies tab.
-
Earliest Start Time section:
To prevent that a task is executed before a specific time, regardless of the status of previous tasks in the Workflow, assign it an earliest start time.
- Select the Define Earliest Start Time checkbox to activate this function.
-
The real date of a Workflow is its activation date. You can define that the selected task should start either on the real date (Real Date + 0 day(s)) or a number of days after it.
For more information, see Logical Date and Real Date.
-
Enter the Time. If the task is ready to start before this time, its status changes to Waiting for start time.
Note: You can always start tasks manually from the Workflow Monitor, regardless of your definitions here.
- If necessary, select a Time Zone (TZ) object.
Example: A workflow is activated on May 20. It contains a task in which Real Date + 1 day(s) at 15:00 has been specified as the earliest start time. This task does not start before May 21 at 15:00.
-
Time Checkpoint section:
The chronological execution of a Workflow can be monitored with time checkpoints. You define them here. These checkpoints are the points in time in which you want to check whether the task has started at the designated time.
You can also define a different object to be executed if the task cannot be processed at the checkpoint.
Checkpoints become active when the Workflow is activated.
-
Dependencies section:
Here you define the time and status conditions that must be met so that this task can start. You can also define a different task to be executed if these conditions are not met.
-
Define Latest Start/End Time
-
Latest Start time
If the task is not started by this time, it is not executed at all.
-
Latest End time
As soon as a task starts, its estimated duration is calculated. If the calculated end time is after the time specified in this field, it is not executed anymore.
-
Real Date + [n] day(s)
The real date is determined when the Workflow is generated
-
Time
The latest time the task should start or end on the day defined with the previous option. If the task could not be started or ended by this time, it is not executed at all. Possible values: 00:00:00 to 23:59:59
-
Time Zone
The time zone object applied to start the task.
If the task cannot be executed, its end status is set to
ENDED_TIMEOUT
. If ELSE conditions are defined, they are applied. -
-
Run this task if
The table in the Dependencies section provides the list of predecessors of the selected task and gives an overview of their most important attributes. Use this table to define the end statuses that the predecessor tasks must have for this task to be executed. By default, ANY_OK is preselected here:
-
all statuses match
The task is executed if all predecessors end with the statuses you specify on the table.
-
at least one condition matches
The task is executed if at least one predecessor ends with the status you specify on the table.
If the predecessor is an external dependency, the Status column refers to the status of the external dependency and not to the external task. For this reason, only the following status are available:
- ENDED_OK
- ENDED_CANCEL
- ENDED_ESCALATED
For more information, see External Dependencies in Workflows.
-
-
ELSE (on status mismatch or latest time failure)
Define the action to take when none of the predecessor conditions are met.
-
Skip
The task is skipped, but its Postconditions are executed. The task's final status in this case is 1930 - "ENDED_SKIPPED - Skipped because of WHEN clause."
The Execute dialog (see below) is ignored when the task itself is inactive. -
Block
The workflow blocks at the preceding task. This does not apply to tasks that run parallel within the workflow, their processing continues. The workflow as a whole is not blocked until all tasks have been executed. If there are no parallel running tasks, the task and the workflow block immediately.
-
Block and send abort signal to parent
If there is a superordinate workflow (parent), a signal is sent to it that indicates the abnormal end in addition the regular Block action. If this option is set in a workflow dependency, then processing of the parent remains blocked, even after the child task has been unblocked.
-
Abort
The task and the workflow itself are canceled.
Action: Optionally, activate this option and select an alternative object. If the conditions are not met, this object is executed instead.
-
-
See also: