If you know a workflow will have to wait for a response from an outside source for a predictable time, you can implement it as a timer-based long-running workflow. A timer-based long-running workflow waits until a given time and date before resuming.
You implement a workflow as a timer-based long-running workflow by using the Waiting Timer element.
Prerequisites
■
|
Create a workflow.
|
■
|
Open the workflow for editing in the workflow editor.
|
■
|
Add some elements to the workflow schema.
|
Procedure
1 | Drag a Waiting Timer element from the Generic menu to the position in the workflow schema at which to suspend the workflow's run. |
2 | Link the Waiting Timer element to the elements that precede and follow it in the workflow schema.
If you implement a scriptable task to calculate the time and date, this element must precede the Waiting Timer element.
|
3 | Click the Waiting Timer element to show its properties tabs in the bottom half of the Schema tab. |
4 | Provide a description of the reason for implementing the timer in the Info properties tab. |
5 | Click the Attributes properties tab.
The timer.date parameter appears in the list of attributes.
|
6 | Click the timer.date parameter's Not set button to bind the parameter to an appropriate Date object.
The Waiting Timer selection dialog box opens, presenting a list of possible bindings.
■
|
Select a predefined Date object from the proposed list, for example one defined by a Scriptable Task element elsewhere in the workflow.
|
■
|
Alternatively, create a Date object that sets a specific date and time for the workflow to await.
|
|
7 | (Optional) Create a Date object that sets a specific date and time that the workflow awaits.
a |
Click Create parameter/attribute in workflow in the Waiting Timer selection dialog box.
The Parameter information dialog box appears.
|
b |
Give the parameter an appropriate name.
|
c |
Leave the type set to Date.
|
d |
Click Create workflow ATTRIBUTE with the same name.
|
e |
Click the Value property's Not set button to set the parameter value.
A calendar appears.
|
f |
Use the calendar to set a date and time at which to restart workflow.
|
g |
Click OK.
|
|
8 | Click Save at the bottom of the workflow editor. |
You defined a timer that suspends a timer-based long-running workflow until a set time and date.
What to do next
You can create a long-running workflow that waits for a trigger event before continuing.