The Decision operator lets you build simple logic statements that evaluate whether input values meet specific conditions. Based on the result, the operator outputs true
or false
, letting you control the flow in a Data Workflow.
To configure a Decision operator, use the Info window and define a condition. This condition uses comparison symbols, like <
, >
, =
, >=
, or <=
, to evaluate incoming data. For example, to check if an end-user's income is greater than 100,000, your condition might look like the following: A > 100000. Here, A represents the incoming value, and 100000 is the threshold.
For more advanced logic, you can use an OR statement. For example, OR(A="a", A="b", A="c")
. This configuration returns true
if the input value matches "a"
, "b"
, or "c"
. All other values return false
.
The Decision operator evaluates conditions and routes data based on the result. It passes data through one output port at a time. The port that does not receive data displays as
_BLOCKED
, and any steps connected to that port will not execute.
Using Arguments in Conditions
You can configure a Decision operator to evaluate a condition using an argument from another operator.
For example, you'll:
Connect another operator to the argument port (top) of the Decision operator.
Enter
_arg
in the Condition field.
The argument must return a string or Boolean value. Your condition should use a standard comparison format, like <
, >
, =
, >=
, or <=
. The condition must be either TRUE or FALSE.
You'll find the Decisions operator under the Gateways group to the left of the Data Workflow canvas.
About the Info Window
Learn more about each setting in the Decision operator's Info window:
Setting | Description |
---|---|
Category | Grayed out and non-adjustable setting indicating the operation type. |
Input List | Select the Property ID for the data you want your Decision operator to process. This selection should match the Property ID you've selected in your Input operator.
|
Preserve Argument Type | When selected, this setting ensures the argument data type is respected when the operator executes. |
Condition | Here, you'll set the expression that the operator runs your data against. You'll use <, To use another operator as an argument, connect the operator to the argument port and enter |
Adding a Decision Operator
To see how the Decision operator works, you’ll walk through a simple example. In this example, you’ll create a module that collects an end-user’s income. Then, you’ll use a Data Workflow to recommend a financial adviser to the end-user based on the income entered.
Configure the Columns Component
First, configure a Columns component that acts as a container for the components that follow.
In the Module Builder, drag and drop a Columns component onto your canvas.
In the Property ID field, enter
colAdviser
.Click Save Component
Configure the Number Component
Next, configure a Number component to collect the income of your end-user.
Drag and drop a Number component onto your canvas, placing it inside the left column of the colAdviser Columns component.
In the Property ID field, enter
income
.In the Label Text field, enter
Current Household Income
.Set Show Thousands Separator to
(ON).
Set Currency to
(ON).
Click Save Component.
Configure the Text Field Component
Next, add a Text Field component to display the output of your Data Workflow. This field displays the recommended financial adviser to the end-user. Because the end-user does not need to enter any information in this field, set it to read-only.
Drag and drop a Text Field component onto your canvas, placing it inside the right column of the colAdviser Columns component.
In the Property ID field, enter
financialAdviser
.In the Label Text field, enter
Recommended Financial Adviser
.From the Input Behavior drop-down, select Read Only - Accessible (New).
Click Save Component.
Configure the Data Workflow Component
Lastly, set up the Data Workflow with an Input operator that brings in your end-user's income. Then, use a Decision operator to determine which financial adviser to recommend. Add Console operators to help you view how the data passes to each step.
Drag and drop a Data Workflow onto your canvas, placing it below your colAdviser Columns component.
In the Property ID and Canvas Label Text fields, enter
dwfFinancialAdviser
.From the Trigger Type drop-down, select Watch.
Configure the Input Operator
Drag and drop an Input operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Input
Component
income
Required
Yes
Source
Default
Configure the Decision Operator
Drag and drop a Decision operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Decision
Input List
income
Preserve Argument Type
Unchecked (no)
Condition
A > 100000
Connect the output port (right) of the Input operator to the input port (left) of the Decision operator.
Configure the First Create Value Operator
Drag and drop a Create Value operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Create Value
Label
Decision True
Expression/Value
"Andrea Matthews"
Connect the upper output port (right) of the Decision operator to the argument port (top) of the Create Value operator.
Configure the First Output Operator
Drag and drop an Output operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Output
Component
financialAdviser
Action
value
Connect the output port (right) of the Create Value operator to the input port (left) of the Output operator.
Configure the First Console Operator
Drag and drop a Console operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Console
Label
Console Decision True
Connect the upper output port (right) of the Decision operator to the input port (left) of the Console operator.
Configure the Second Create Value Operator
Drag and drop a second Create Value operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Create Value
Label
Decision False
Expression/Value
"Rachel Moose"
Connect the lower output port (right) of the Decision operator to the argument port (top) of the Decision False Create Value operator.
Configure the Second Output Operator
Drag and drop a second Output operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Output
Component
financialAdviser
Action
value
Connect the output port (right) of the Decision False Create Value operator to the input port (left) of the financialAdviser Output operator.
Configure the Second Console Operator
Drag and drop a second Console operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Info
Category
Console
Label
Console Decision False
Connect the lower output port (right) of the Decision operator to the input port (left) of the Console Decision False Console operator.
Click Save Component.
Save your module.
Here's how the completed Data Workflow looks:
Here's how the completed example looks in the Module Builder:
Preview your module in Express View and open the DevTools Console.
If you open your browser’s DevTools Console, you’ll see how the logic works. Enter a value in your Current Household Income field, and you'll see the Recommended Financial Adviser update in real-time, depending on your entered income.
You'll see one of two scenarios:
When the income is less than 100,000, the TRUE condition is _BLOCKED, and the FALSE condition displays the value.
When the income is greater than 100,000, the FALSE condition is _BLOCKED, and the TRUE condition displays the value.
The Decision operator lets you build simple logic statements that evaluate whether input values meet specific conditions. Based on the result, the operator outputs true or false, letting you control the flow in a Data Workflow.
To configure a Decision operator, use the Info window and define a condition. This condition uses comparison symbols, like <
, >
, =
, >=
, or <=
, to evaluate incoming data. For example, to check if an end-user's income is greater than 100,000, your condition might look like the following: A > 100000. Here, A represents the incoming value, and 100000 is the threshold.
For more advanced logic, you can use an OR statement. For example, OR(A="a", A="b", A="c")
. This configuration returns true
if the input value matches "a"
, "b"
, or "c"
. All other values return false
.
The Decision operator evaluates conditions and routes data based on the result. It passes data through one output port at a time. The port that does not receive data displays as _BLOCKED, and any steps connected to that port will not execute.
Using Arguments in Conditions
You can configure a Decision operator to evaluate a condition using an argument from another operator.
For example, you'll:
Connect another operator to the argument port (top) of the Decision operator.
Enter
_arg
in the Condition field.
The argument must return a string or Boolean value. Your condition should use a standard comparison format, like <
, >
, =
, >=
, or <=
. The condition must be either TRUE or FALSE.
You'll find the Decisions operator under the Gateways group to the left of the Data Workflow canvas.
About the Info Window
Learn more about each setting in the Decision operator's Info window:
Setting | Description |
---|---|
Category | Grayed out and non-adjustable setting indicating the operation type. |
Input List | Select the Property ID for the data you want your Decision operator to process. This selection should match the Property ID you've selected in your Input operator.
|
Preserve Argument Type | When selected, this setting ensures the argument data type is respected when the operator executes. |
Condition | Here, you'll set the expression that the operator runs your data against. You'll use To use another operator as an argument, connect the operator to the argument port and enter |
Adding a Decision Operator
To see how the Decision operator works, you’ll walk through a simple example. In this example, you’ll create a module that collects an end-user’s income. Then, you’ll use a Data Workflow to recommend a financial adviser to the end-user based on the income entered.
Configure the Columns Component
First, configure a Columns component that acts as a container for the components that follow.
In the Module Builder, drag and drop a Columns component onto your canvas.
In the Property ID field, enter
colAdviser
.Click Save & Close.
Configure the Number Component
Next, configure a Number component to collect the income of your end-user.
Drag and drop a Number component onto your canvas, placing it inside the left column of the colAdviser Columns component.
In the Property ID field, enter
income
.In the Label Text field, enter
Current Household Income
.Set Show Thousands Separator to
(ON).
Set Currency to
(ON).
Click Save & Close.
Configure the Text Field Component
Next, add a Text Field component to display the output of your Data Workflow. This field displays the recommended financial adviser to the end-user. Because the end-user does not need to enter any information in this field, set it to read-only.
Drag and drop a Text Field component onto your canvas, placing it inside the right column of the colAdviser Columns component.
In the Property ID field, enter
financialAdviser
.In the Label Text field, enter
Recommended Financial Adviser
.Set Read Only to
(ON).
Click Save & Close.
Configure the Data Workflow Component
Lastly, set up the Data Workflow with an Input operator that brings in your end-user's income. Then, use a Decision operator to determine which financial adviser to recommend. Add Console operators to help you view how the data passes to each step.
Drag and drop a Data Workflow onto your canvas, placing it below your colAdviser Columns component.
In the Canvas Label Text and Property Name fields, enter
dwfFinancialAdviser
.From the Trigger Type drop-down, select Watch.
Configure the Input Operator
Drag and drop an Input operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Input
Component
income
Required
Yes
Source
Default
Configure the Decision Operator
Drag and drop a Decision operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Decision
Input List
income
Preserve Argument Type
Unchecked (no)
Condition
A > 100000
Connect the output port (right) of the Input operator to the input port (left) of the Decision operator.
Configure the First Create Value Operator
Drag and drop a Create Value operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Create Value
Label
Decision True
Expression/Value
"Andrea Matthews"
Connect the upper output port (right) of the Decision operator to the argument port (top) of the Create Value operator.
Configure the First Output Operator
Drag and drop an Output operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Output
Component
financialAdviser
Action
value
Connect the output port (right) of the Create Value operator to the input port (left) of the Output operator.
Configure the First Console Operator
Drag and drop a Console operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Console
Label
Console Decision True
Connect the upper output port (right) of the Decision operator to the input port (left) of the Console operator.
Configure the Second Create Value Operator
Drag and drop a second Create Value operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Create Value
Label
Decision False
Expression/Value
"Rachel Moose"
Connect the lower output port (right) of the Decision operator to the argument port (top) of the Decision False Create Value operator.
Configure the Second Output Operator
Drag and drop a second Output operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Output
Component
financialAdviser
Action
value
Connect the output port (right) of the Decision False Create Value operator to the input port (left) of the financialAdviser Output operator.
Configure the Second Console Operator
Drag and drop a second Console operator onto your Data Workflow canvas.
Configure the operator's Info window as follows:
Setting
Value
Category
Console
Label
Console Decision False
Connect the lower output port (right) of the Decision operator to the input port (left) of the Console Decision False Console operator.
Click Save.
Save your module.
Here's how the completed Data Workflow looks:
Here's how the completed example looks in the Module Builder:
Preview your module in Express View and open the DevTools Console.
If you open your browser’s DevTools Console, you’ll see how the logic works. Enter a value in your Current Household Income field, and you'll see the Recommended Financial Adviser update in real-time, depending on your entered income.
You'll see one of two scenarios:
When the income is less than 100,000, the TRUE condition is _BLOCKED, and the FALSE condition displays the value.
When the income is greater than 100,000, the FALSE condition is _BLOCKED, and the TRUE condition displays the value.
Resources
For more information, you can read about the Decision operator in our Documentation Hub.