If you know that a workflow has 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 in the left pane to the workflow schema, and position it where you want to suspend the workflow run.
    If you implement a scriptable task to calculate the time and date, the scriptable task element must precede the Waiting timer element.
  2. Click the Waiting timer element.
  3. Enter a description of the reason for implementing the timer in the Details properties tab in the right pane.
  4. Click the Inputs tab.
    The timer.date parameter appears in the list of variables.
  5. Bind the timer.date parameter to an appropriate Date object.
    • 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.
  6. (Optional) Create a Date object that sets a specific date and time that the workflow awaits.
    1. Click the Select variable text box, and then click Create New.
      The New Variable dialog box appears.
    2. Enter a name and description for the variable.
    3. Click the Value text box to set the variable value.
      A calendar appears.
    4. Use the calendar to set a date and time at which to restart the workflow.
    5. Click Create.
  7. Click Save and confirm your selection.

Results

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.