Wait for condition workflow activity
Summarize
Summary of Wait for condition workflow activity
The Wait for condition activity in ServiceNow workflows pauses the workflow at that step until the current record meets a specified condition. The workflow checks this condition every time the record is updated, allowing the workflow to wait indefinitely for particular criteria to be true. This activity is intended to wait for external events like record updates rather than changes made by the workflow itself. For waiting based on time instead of conditions, use Timer workflow activities.
Show less
Key Features
- Condition Evaluation: The workflow pauses until all specified conditions—defined either through the condition builder or script—evaluate to true.
- Result Assignment: You can assign a result value within the activity’s script field using
activity.result. The workflow moves forward when this result is true. - Timeout Option: There is an option to enable a timeout that limits how long the workflow waits for the condition before continuing. This requires setting a duration and optionally a work schedule to calculate the timeout period.
- Input Variables: Key inputs include the condition to wait for, an optional script condition, timeout enablement, and duration settings.
- Activity States: The activity progresses through states such as Executing, Waiting, Finished, Cancelled, and Error, which indicate the current status and behavior of the workflow engine toward the activity.
Key Outcomes
Using the Wait for condition activity allows workflows to effectively pause and resume based on real-time updates to records, ensuring that subsequent workflow steps run only when required conditions are met. The timeout feature helps prevent indefinite waiting, improving workflow reliability and control. This activity enhances automation by synchronizing workflow progression with external record changes, making it suitable for scenarios that depend on asynchronous events.
The Wait for condition activity causes the workflow to wait at this activity until the current record matches the specified condition.
The workflow evaluates the Wait for condition activity each time the current record is updated. Use this activity to pause a workflow indefinitely until a particular criteria is met by a record update. To pause a workflow for a timed duration see Timer workflow activities.
Results
The workflow designer can assign a result value using activity.result from
within a script field of the activity. The activity transitions when the result value is
true.
Input variables
| Field | Description |
|---|---|
| Condition | The workflow is paused at this activity until this condition matches the current record. |
| Condition script | If specified, the workflow is paused at this activity until this script sets the answer variable to true. |
| Enable Timeout | Option to limit the amount of time that the workflow waits for the activity to be completed before continuing. Note: Use the Enable timeout option to prevent this activity from continuing
to run. If the condition to continue is never met, a timeout value specifies when the system skips the Wait for Condition activity and goes to the next item in the workflow. You must set a Duration value to
enable a timeout. You can also select a Schedule if you want to compute the duration end date based on a specific work schedule. |
| Duration | Amount of time that the workflow waits before continuing when the Enable timeout option is selected. Enter the time to wait in hours, minutes, and seconds. If you leave this field empty, the workflow does not wait. |
States
| State | Description |
|---|---|
| Executing | The workflow engine knows to start the onExecute function of the activity. |
| Waiting | The workflow engine ignores the activity until a specific event to restart the activity is fired. |
| Finished | The activity finished running. See the result value for the outcome of the activity. |
| Cancelled | This activity, or the workflow that contains this activty, was canceled. |
| Error | A JavaScript error occurred. Review the logs for error details. |