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.

About this task

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.

    If you implement a scriptable task to calculate the time and date, this element must precede the Waiting Timer element.

  2. Click the Edit icon (Edit icon) of the Waiting Timer element in the workflow schema.
  3. Provide a description of the reason for implementing the timer in the Info properties tab.
  4. Click the Attributes properties tab.

    The timer.date parameter appears in the list of attributes.

  5. 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.

  6. (Optional) : Create a Date object that sets a specific date and time that the workflow awaits.
    1. Click Create parameter/attribute in workflow in the Waiting Timer selection dialog box.

      The Parameter information dialog box appears.

    2. Give the parameter an appropriate name.
    3. Leave the type set to Date.
    4. Click Create workflow ATTRIBUTE with the same name.
    5. Click the Value property's Not set button to set the parameter value.

      A calendar appears.

    6. Use the calendar to set a date and time at which to restart workflow.
    7. Click OK.
  7. Click Close.
  8. Click Save at the bottom of the workflow editor.

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.