Generate workflow activity
Summarize
Summary of Generate workflow activity
The Generate workflow activity in ServiceNow is designed to pre-create task and approval records from any subsequent task or approval activities in a workflow that runs on a table extending Task. This pre-generation allows associated tasks and approvals to be created ahead of time but completed sequentially during workflow execution, improving workflow management and predictability.
Show less
By default, workflows create tasks or approvals only when reached; the Generate activity proactively creates these records immediately and sets their initial states, expected start dates, and due dates based on the expected durations of all activities between the Generate activity and each task or approval.
Key Features
- Task and approval pre-generation: Creates task records with state set to Pending and approval records with state set to Not Requested.
- Sequential completion: Although tasks and approvals are pre-created, they must still be completed in the designated order during workflow execution.
- Duration-based scheduling: Expected start and due dates are calculated considering the cumulative expected durations, using the longest duration in branched paths.
- Multiple uses and refresh capability: The Generate activity can be run multiple times to refresh tasks and approvals, useful when approvers or workflow details are editable during processing.
- Selective exclusion: Activities and conditions can be excluded from generation by selecting the "Skip during generate" checkbox on specific conditions, typically used for rejected approvals and certain workflow conditions.
- Input variables: Options to enable or disable generation of tasks and/or approvals independently, allowing calculation of durations without creating records.
- State management: Tracks activity execution states such as Executing, Finished, and Cancelled for workflow control.
Practical Application and Outcomes
Using the Generate activity enables ServiceNow customers to anticipate and manage workflow tasks and approvals more effectively by having them pre-created with accurate scheduling. This approach supports complex workflows with multiple branches and sequential dependencies, ensuring tasks start and finish on time based on calculated durations.
For example, in workflows with branches and joins, the Generate activity sets due dates based on the longest path to ensure downstream tasks align correctly. It also respects conditions that exclude certain activities from generation, such as rejected approvals.
Overall, this activity provides greater control over workflow timing and task readiness, improving workflow efficiency and responsiveness to changes during execution.
The Generate activity immediately creates task or approval records from any task or approval activities placed after the Generate activity in the workflow path. These pre-generated tasks and approvals start when the task and approval activities are reached during flow execution. This allows a task to have a set of associated pre-generated sequential tasks or approvals, but still require them to be completed in order.
By default, the workflow does not create any tasks or approvals until it reaches them in the workflow.
- If it is a task activity,
creates the task and sets:
- The State to Pending
- The Expected Start Date
- The Due Date
Note:Task activities run as the user whose actions complete the task the workflow was waiting for and advances the workflow. - If it is an approval activity, creates the approvals and sets:
- The approval State to Not Requested
- The Expected Start Date
- The Due Date
Note:Approval activities run as the user whose actions match the approve or reject conditions the workflow was waiting for and advances the workflow.
Expected start dates and due dates are calculated based on the Expected Duration of all of the tasks and approvals between the Generate activity and the activity being updated. In the case of a branched path (between a Branch and Join activity), the longer duration will be used for any post-branch activities.
The Generate activity can be used more than once, and any tasks or approvals will be refreshed with updated information. This is useful in situations where the list of approvers or other important information is still editable while the workflow is in process and it may be necessary to update or correct the generated approvals or tasks.
- Rejected (for any of the approval activities)
- No condition of If activity
- Continue condition of Turnstile activity
- Incomplete condition of Join activity
Input variables
Input variables determine the initial behavior of the activity.
| Field | Description |
|---|---|
| Generate approvals | If selected, approvals are created when running the Generate activity. If cleared, the approvals are used to compute their estimated duration, but no approvals are created. |
| Generate tasks | If selected, tasks are created when running the Generate activity. If cleared, the tasks are used to compute their estimated duration, but no tasks are created. |
States
| State | Description |
|---|---|
| Executing | The activity is executing. |
| Finished | The activity finished running. See the result value for the outcome of the activity. |
| Cancelled | This activity, or the workflow that contains this activity, was canceled. |
Example
- Approval-2
- Approval-3
Approval-4 is skipped since the Rejected condition of Approval-3 has Skip during generate selected.
| Task | Expected Start Date | Reason | Due Date |
|---|---|---|---|
| Task 1 (1 day) | Jan. 1, 2016 | Jan. 2, 2016 | |
| Task 2 (1 day) | Jan. 2, 2016 | Task 1 is 1 day | Jan. 3, 2016 |
| Task 3 (2 days) | Jan. 1, 2016 | Jan. 3, 2016 | |
| Task 4 (1 day) | Jan. 3, 2016 | Task 3 is 2 days | Jan. 4, 2016 |
| Task 5 (1 day) | Jan. 4, 2016 | Task 4 ends the latest before the Join | Jan. 5, 2016 |
Notice that Task 5 starts on Jan. 4, 2016 since the longest path (based on due dates) to the Join is Task 3/Task 4.