Incident Workflow Editor     

The directional path of a workflow is designed from a built-in graphical tool called the Workflow Editor. The workflow editor provides an expandable, scrollable canvas for creating workflow diagrams and a collapsible 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 incident 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 the icon 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:

Status Node   

The Status node allows you to add statuses to your workflow.

 

 

The status node has two output ports: Auto and Manual.

 

 

Using dual output ports, you can set both automated flows and manual transitions to ensure seamless operation.

User Transitions

Transitions enable you to control status changes in a workflow manually. It can be configured from the manual output port of the Start node or Status node.

A transition connects the start/status node to other nodes, such as Condition, Action, or Branch nodes, and controls the execution sequence of workflow.

Manual transitions appear as actionable buttons on the request details page, allowing technicians to perform the required action.

 

Node Behavior

Status Node

 

Start Node

 

Use Cases

Automatically Cancel Request If User Does Not Respond On Time 

A request enters the Waiting for Input status. The user is expected to provide additional information for the request to proceed.

This is achieved by configuring both the Manual and Auto ports in the Waiting for Input status node:

 

 

Create Transitions

You can add up to 10 transitions to each manual output connector.

 

 

Define Transition Rules

 

Fields

Explanation

Scope (not applicable for the Start node)

Configure who can perform the transition or when the transition can be performed.

Allowed Users - Add users (by role) who can perform the transition. If the user scope is not configured, the transition will be accessible to all stakeholders with edit permissions.

Criteria - Set the condition to execute the transition.

Use the Edit or Delete icon to modify or remove the criteria.

Mandatory Rules

Mandate fields and rules to control the execution of the transition. When the transition is executed, the mandatory rules are checked first. If any required conditions are not met, the user is prompted to address them. After all mandatory rules are satisfied, the mandatory fields are displayed for user input.
The transition is completed only when all mandatory rules are satisfied and the required fields are filled.

Fields - Add fields that need to be filled by technicians to complete the transition.

Rules (not applicable for the Assets module, and transitions from the Start node) - Select rules that need to be validated while executing the transition.

  • Worklog must be added.

  • Associated tasks must be completed.

  • All child requests must be closed.

  • All associated checklists must be completed.

Action Rules

Execute actions when a user initiates the transition, you can configure multiple actions at different levels: Pre-Action Rules and Post-Action Rules.

  • Pre-Action Rules - Actions are executed along with the transition if the condition is met. Supported actions are Update Field Value and Run a custom function.

  • Post-Action Rules - Actions are executed after the transition is completed. Supported actions are Send Notification, Run a custom function, Add a Task, Trigger a webhook.

More info on configuring pre or post-action rules is available here.

 

Transition_workflow

 

 

Condition Nodes   

Checks whether configured conditions are satisfied and moves the incident to the next status.

IF - Checks if the specified conditions are met before the incident request proceeds to the next status.

 

Attributes

Description

Condition Name*

Enter a name for the If node

If Condition*

Define conditions based on incident request details or custom functions.

Based on Conditions - Specify the condition by selecting the column and criteria values.

Click if there are multiple criteria and select AND/OR operators.

Drag a criteria over the indentation space below another criteria to add it as sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. Under each criteria, 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.

Select a custom function to associate with the node.

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 incident 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 incident request details or custom functions.

Based on Conditions - Specify the condition by selecting the column and criteria values.

Click if there are multiple criteria and select AND/OR operators.

Drag a criteria over the indentation space below another criteria to add it as a sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. Under each criteria, 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.

Select a custom function to associate with the node.

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 a 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, Field Updates, Tasks, Webhooks, Custom functions and Timer Actions, during the workflow execution.

 

Notification - Send a custom notification when the incident transitions between statuses.

 

 

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: Request users, organization roles, technicians and requesters. 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 request moves into the next status.

 

 

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.

 

 

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 incident request when a specific status is reached.

 

 

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

 

 

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.

 

 

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.

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.

 

 

 

 

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

 

 

Timer - Pause the incident 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.

 

 

Use New Timer option to set up a timer and click Save or Save and Select. Click here to learn how to create timers.

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.

.  

 

Zoho Circuit - Allows administrators to build nested tasks and create automated workflows with low code or no code using functional tasks such as SSH Task, DB Task, AD Task, Task Engine, and PowerShell Task Engine.

 

 

 

 

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

 

           

 

Preview Circuit Execution

SDAdmins can preview circuit execution from the incident workflow execution view by hovering over the circuit node and clicking the circuit execution preview icon. Circuit execution can also be viewed from the incident details page and incident list view.

 

 

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,

 

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

 

 

 You cannot add status 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,

 

Join node is rendered with two input and output ports (Completed/Failed).

 

Forked paths must always be merged using the join node. 

Link Nodes      

To establish a connection between nodes, connect the output port of a node to the input port of another node.

The link used to connect two nodes is called a connector.  

Refer to the following screen video for a better understanding:

 

 

Manage Nodes and Connectors     

Node Actions - Hover over a node and click to perform the following actions:

 

 

Connector Actions - Hover over a connector to perform the following actions:

 

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:

 

 

 

To manage the workflow and the data, you can:

 

 

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.

Use the or icons to undo/redo any actions or transitions on the workflow data.

Click to decide the statuses' visibility in the request details page.

 

 

On saved workflows, you can:

 

 

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:

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 Requests tab. You cannot perform any operations on invalidated workflows except edit or delete.

Sample Incident Workflow