Switch workflow activity
The Switch activity checks if the value of a passed field or variable is equivalent to one of several case values.
The switch activity behavior is similar to a switch statement in Java.
When creating a switch activity, select a Variable or Field to check against activity conditions for a matching field value. When the value passed in this variable or field matches the value defined in the Condition field of the activity condition, the workflow progresses through that activity condition.
Note: Condition activities run as the user whose actions match the conditions the workflow was waiting for and advances the workflow.
Results
The variable or field selected in the Variable or Field activity variable determines the possible result values.
Input variables
The following variables determine the behavior of the activity.
| Field | Description |
|---|---|
| Type | Select Variable or Field as the type of value to check against available conditions. This selection sets the label and available options for the other field. |
| Variable or Field | Select the source of the value compared against the switch activity conditions. The field label and available options depend on the Type selection.
|
States
The activity state tells the workflow engine what to do with the activity.
| 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 activity, was canceled. |
| Error | A JavaScript error occurred. Review the logs for error details. |
Example
You can create a switch activity that sets different field values on an incident based on the Assignment group of the incident record.
The **Field** selected is the incident **Assigned to** field.
If the value of the **Assigned to** field of the workflow-triggering incident is **Service Desk** or **Field Services**, the workflow populates values on the incident record before continuing. If the **Assigned to** value is **Hardware**, the workflow continues without populating any field values.
Condition type (Standard, Else, or Error) is used. For more information, see Manage workflow activity conditions.
**Parent Topic:**[Condition Workflow activities](r_ConditionActivites.md)