Release Workflow Editor

Release Workflow Editor

The Workflow Editor enables you to build a directional pathway for the release request to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil panel.

By default, the Submission and Closure stages are present in the workflow, and they are connected to the Start and End nodes. You can add more nodes to the workflow from the stencil panel.

You can collapse or expand the stencil panel using the icon on the top-left of the panel.

Configure Nodes       

Nodes are workflow elements that define how an release workflow should be processed. The stencil panel contains various nodes under the Drag & drop nodes tab.You can add a node to the canvas using a simple drag and drop motion. You can also add a node from the connector by clicking Add Node, or the mini stencil view allows users to add nodes in a single right-click. When you add a node to the canvas, a pop-up window opens, where you specify the properties of the node.
The various nodes in the stencil panel are grouped by their usage. Refer to the following pointers to understand the use and setting up of each node:
Stage Node   
The stage node lets you add a release stage to your workflow.
  1. Select the stage and its statuses from the relevant drop-down.
  2. You can have multiple statuses in a stage.
  3. Use [+] Add New Status to create new statuses for the stage from the workflow. Click here to learn how to set up a new release status.
  4. Click Save.

You can configure notifications for each status added to a stage in the workflow. By default, global release status notifications configured under Setup > Automation > Notification Rules will be sent when the release reaches the specified status. To override the notifications based on the workflow, hover over a status and click . Configure and save the notification as required.
Alert
Statuses with notification override enabled are indicated with a icon.  
The number of input and output ports on the node depends on the number of statuses chosen.

Condition Nodes   
Checks whether configured conditions are satisfied and moves the release to the next stage.
IF - Checks if the specified conditions are met before the release request proceeds to the next stage.
Attributes
Description
Condition Name*
Enter a name for the If node
If Condition*
Define conditions based on release request details or custom functions.
Based on Conditions - Decide the pathway based on the request parameters.
  1. Specify the condition by selecting the column and criteria values.
  2. Click to add multiple criteria and select AND/OR operators.
  3. Drag a criteria below another criteria to add it as sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. You can add up to 100 sub-criteria.
Using Custom Functions - Decide the path of workflow based on a custom function. Ensure the custom function returns a Boolean value.
  1. Select a custom function to associate with the node.
  2. You can also create a new custom function from scratch. Click here to learn how to create a custom function as condition.
* mandatory attributes
Click Save.

The IF condition node is rendered with a single input port and two output ports (Yes/No).


Wait For - Pauses the release request workflow indefinitely until specified conditions are met.
Attributes
Description
Condition Name*
Enter a name for the Wait for node.
Wait for Condition*
Define conditions based on release request details or custom functions.
Based on Conditions - Decide the pathway based on the release parameters.
  1. Specify the condition by selecting the column and criteria values.
  2. Click if there are multiple criteria and select AND/OR operators.
  3. Drag a criteria below another criteria to add it as a sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. You can add up to 100 sub-criteria.
Using Custom Functions - Decide the path of workflow based on a custom function. Ensure the custom function returns a boolean value.
  1. Select a custom function to associate with the node.
  2. You can also create a new custom function from scratch. Click here to learn how to create a custom function as condition.
* mandatory attributes

Click Save.

The Wait For node is rendered with a single input and output ports.

Switch - A multi-way branch node that checks the value in the specified field and applies the workflow path based on the field value.
Attributes
Description
Select Field *
Select the field to apply the switch condition.
Select Options *
Select the options to be displayed under the chosen field. You can configure different workflow paths for each field option.
Include Default Option
Select Include Default Option to configure workflow path when the field values do not match any of the selected values. You can rename the default option as needed.
* mandatory attributes
Click Save.

Switch node is rendered with a single input port and N number of output ports based on the values selected.

Actions Nodes   
Automates actions, such as notifications, approvals, field updates, tasks, webhooks, custom functions, and timer actions, during the workflow execution.
Approval - Add an approval level between stages and configure approval email notifications.
Fields
Description
Name*
Enter a name to identify the approval.
Wait for
Choose the approval condition from the drop-down. The available approval conditions are:
  1. Anyone to approve - Approval is granted if one of the approvers has approved; gets rejected only when all approvers have rejected.
  2. Everyone to approve - Approval is granted only when all approvers have approved; gets rejected otherwise.
  3. First Response Action - Approval is granted only when the first-ever approver has approved it; gets rejected otherwise.
  4. Majority to approve - Approval is granted only if the majority of approvers agree; gets rejected otherwise.
  5. % to approve - Approval is granted if the specified percentage of approvers provide approval; gets rejected otherwise.
Select Approvers
  1. Select release users and roles, organization roles, CAB, or application users as approvers.
  2. Type the user name and select the user from the drop-down.
  3. If multiple approvers are configured, you can enable Notify if other approvers take any approval action check box to alert approvers when one of the approvers approves/rejects the change.
Subject
 
Enter your approval notification subject and message. You can add variables if needed.
Message
*mandatory fields
Click Save.

The approval node is rendered with a single input port and two output ports (Approved/Rejected).

Info
You cannot add approvals/approval levels to the release details page if a release workflow is associated with the release request. 
Notification - Send a custom notification when the release transitions between stages.
Choose an existing custom notification from the left pane and click Select. Click to edit the selected notification details.

You can also create a new notification using New Notification option.
Fields
Description
Notification Name *
Add a name to identify the notification.
Description
Describe the notification usage.
Notify *
Select the recipients to whom the notification must be sent: Users, Release Users and Roles, Organization Roles, and CAB. Type the user name and select the user from the drop-down.
Subject *
Enter the subject and message to be sent in the notification email.
Message
* mandatory fields
You can also refer this page to learn how to compile custom notifications for workflows. Click Save or Save and Select.

The notification node is rendered with a single input port and output port.

Field Update - Update field values before the release moves into the next stage.
Choose an existing field update from the left pane and click Select. Click to edit the selected configuration.

Use New Field Update option to create a new field update configuration.
Fields
Description
Field Update Name
Enter a name to identify the field update configuration.
Description
Describe the field update usage.
Fields *
Select the field and the value that must be applied during the field update. You can configure update for multiple fields using the icon.
* mandatory fields
You can also refer this page to learn how to configure field update action for workflows. Click Save or Save and Select.
  1. Choose Setup alternate path on error to configure an alternate workflow if an error is thrown during field update.

Field update node is rendered with a single input port. The output ports vary based on whether the alternate path is configured or not.

Task - Add tasks to the release request when a specific stage and status is reached.
  1. Choose an existing task from the left pane and click Select. Click to edit the selected task.

  1. Use New Task option to create a new task. You can also refer this page to learn how to configure tasks for workflows. Click Save or Save and Select.
Fields
Description
Task Name *
Add a unique name to identify the task.
Description
Describe the task details and usage.
Task Configuration
Set up the other task configurations as explained here.
You can copy the configurations from an existing task template using Copy from a Template drop-down.
* mandatory fields
  1. Enable Wait for Task Completion to pause the workflow until the created task is completed or if the task is overdue in the release request.
  2. Choose Setup alternate path on error to configure an alternate workflow if an error is thrown during task creation/trigger.

Task node is rendered with a single input port. The output ports vary based on whether the workflow is paused until task completion or if an alternate path is enabled.
    

Custom Function - Implement any automated action using custom functions with Boolean return type. Based on the return type, the workflow will proceed accordingly.
  1. Choose an existing custom function from the left pane and click Select. Click to edit the selected custom function.

  1. Use New Custom Function option to compile your own custom function. Ensure the custom function returns a Boolean value. Click here to learn how to compile custom functions for workflows. Click Save or Save and Select.
  2. Choose Setup Alternate path on error to configure an alternate workflow if an error is thrown while executing the custom function.

Custom function node is rendered with a single input port. The output ports vary based on whether an alternate path is set up.
  

Webhook - Send data from the service desk to third-party applications or external services.
  1. Choose an existing webhook from the left pane and click Select. Click to edit the selected webhook.

  1. Use New Webhook option to create a webhook. Click here to learn how to create webhooks. Click Save or Save and Select.

Webhook node is rendered with a single input and output port.

Timer - Pause the release workflow for a specific time duration and execute actions when the timer is running, aborted, or elapsed.
Choose an existing timer from the left pane and click Select. Click to edit the selected timer.

  1. Use New Timer option to set up a timer and click Save or Save and Select. Click here to learn how to create timers.
  2. Choose Setup alternate path on error to configure an alternate workflow if an error is thrown while executing the timer.

Timer node is rendered with a single input port. The output ports vary based on whether an alternate path is set up.
 

Branch Node   
Branch nodes are used to create sub-flows within the workflow. You can execute multiple branches in parallel.

Fork - Split the workflow into multiple paths. You can execute multiple forked paths in parallel, provided the conditions present in the nodes in each path are satisfied.
To create a fork in the workflow,
  1. Drag the fork node to the canvas.
  2. Specify a name for the node.
  3. Click Save.
Fork node is rendered with a single input and output port.

 
Info
You cannot add stage nodes in forked paths.
 You cannot create nested forked paths.

Join - Merge parallel paths forked earlier. The workflow resumes the sequential flow.
To join the workflow,
  1. Drag the join node to the canvas.
  2. Specify a name for the node.
  3. Choose when to join the forked pathways and join the flow. You can join the flow after all forked pathways are completed or if any one of the pathways is completed.
  4. Click Save.
Join node is rendered with two input and output ports (Completed/Failed).

 
Info
Forked paths must always be merged using the join node.  
To establish a connection between nodes, connect the output port of a node to the input port of another node.
Info
The link used to connect two nodes is called a connector.   
  1. Output nodes are marked in orange color.
  2. Input nodes are marked in green by default. While attempting to connect an output node, the input nodes are highlighted in yellow.

 Manage Nodes and Connectors          

Node Actions - Hover over a node and click to perform the following actions:
  1. Edit or delete a node in the workflow.
  2. Create duplicates of a node added in the workflow. Stage nodes cannot be duplicated.
  3. The orientation of the input and output ports in the following nodes can be changed as needed:
    1. Stage
    2. Switch nodes
    3. All action nodes
    4. Fork node
Connector Actions - Hover over a connector to perform the following actions:
  1. View the source nodes, target nodes, and vertexes.
  2. Add vertexes by clicking on the connecter.
  3. Click to remove a vertex.
  4. Right click on the connector and select Delete to remove a connector.
Reposition Nodes/Connectors - Drag a node or connector to reposition it on the canvas as needed. The source or target node of a connector can be changed by dragging the input or output vertexes.

Workflow Editor Actions       

View/Modify Workflow Details
In the stencil panel, go to the Details tab to view the workflow details. You can modify the workflow name and description if needed.
Alternatively, you can also click the workflow name or description in the header to modify them.

Workflow Actions
You can manage the space on your editor canvas using the following functionalities:
  1. Click icon on top of the stencil panel to expand or collapse stencil.
  2. Click the cursor on the canvas and drag to pan the graph on the screen.
  3. Use the zoom handle on the left corner of the canvas to view the graph in a large/small scaled view. You can reset the zoom using icon.
To manage the workflow and the data, you can:
  1. Click on the header to select multiple nodes and reposition them in the canvas.
  2. Reset the workflow to its default state by clicking on the header.  If the workflow was previously saved, it will be restored to its last updated state.
  3. Use the or icons to undo/redo any actions or transitions on the workflow data.
  4. Click to decide the status visibility in the request details page.
On saved workflows, you can view a log of all operations performed on the workflow by clicking on the header.

Click to export saved workflows as PDF documents.
After configuring the workflow, click Save or Save and Close on the workflow footer. ServiceDesk Plus will automatically validate your workflow before saving it. Descriptive warning messages are displayed to notify you if the workflow configuration contains errors.

Validate Workflow          

Workflows are validated based on the following rules:
  1. Each node must have at least one incoming and outgoing connector.
  2. Each connector should be linked at both ends.
  3. There must be a valid path from Start to End.
  4. The flow should not be recursive.
  5. Switch node should have at least one option.
  6. Configuring both Yes and No options in the IF node is not mandatory.
If a configuration used in a workflow is updated in any admin configurations, the workflow becomes invalidated. Invalidated workflows are indicated with a icon in the workflow list view and Releases tab. You cannot perform any operations on invalidated workflows except edit or delete.

    • Related Articles

    • Incident Workflow Editor

      The Workflow Editor enables you to build a directional pathway for the service request to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil ...
    • Asset Workflow Editor

      The Workflow Editor enables you to build a directional pathway for the asset to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil panel. You ...
    • Change Workflow Editor

      The Workflow Editor enables you to build a directional pathway for the change request to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil ...
    • Service Request Workflow Editor

      The Workflow Editor enables you to build a directional pathway for the service request to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil ...
    • Problem Workflow Editor

      The Workflow Editor enables you to build a directional pathway for the problem to follow through its life cycle. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil panel. You ...