Decision Task Connector
Integrate Decision Tables into your business Processes.
Overview
Use Decision Task connectors to run Decision Tables in your Processes. Specify which Decision Table(s) to run, thereby evaluating their business rules, and then map how data routes between Request variables to and from Decision Table variables.
Decision Task connectors immediately evaluate the business rules within a specified Decision Table, thereby affecting Request workflow routing in real time with the current conditions and outcomes for all decisions in that Decision Table.
Package and Permissions Required
The Decision Tables package must be installed to use the Decision Task connector.
Furthermore, your user account or group membership must have the following permissions to configure a Decision Task connector to the Process model unless your user account has the Make this user a Super Admin setting selected:
Processes: Edit Processes
Processes: View Processes
See the Process permissions or ask your Administrator for assistance.
Add a Decision Task Connector to the Process Model
Add a Decision Task connector from one of the following locations in Process Modeler:
Explorer panel: The Explorer panel is to the left of the Process Modeler canvas. The Explorer panel contains Process model objects and PM Blocks which may be added to the Process model.
Objects bar: The Objects bar is at the bottom of the Process Modeler canvas. This bar contains pinned Process model objects which are easily accessible to add to the Process model.
Follow these steps to add a Decision Task connector from the Explorer panel to the Process model:
Locate the Decision Task object category from one of the following locations in the Explorer panel:
Pinned Objects: The Decision Task object category displays from the Pinned Objects section when it is pinned. This element type is not pinned by default.
Object Category: The Decision Task object category displays from the Object Category section when it is not pinned.
Its icon displays adjacent to the mouse icon to indicate this connector type may be placed into the Process model.
After adding the Decision Task connector, consider adding the following Boundary-type Process model elements to design business solutions when your best-case scenarios don't happen:
Boundary Timer Event element (Don't know what that is?)
Boundary Error Event element (Don't know what that is?)
After the connector is placed into the Process model, you may adjust its location in the following ways:
Move the connector by dragging it to a new location.
Select the connector with other elements and/or connectors, and then move them collectively by dragging them to new locations in relation to one another.
Align and/or distribute the connector in relation to other selected elements and/or connectors.
Moving a Decision Task connector has the following limitations in regards to the following Process model elements:
Pool element: If the connector is inside of a Pool element, it cannot be moved outside of the Pool element. If you attempt to do so, Process Modeler places the connector inside the Pool element closest to where you attempt to move it.
Lane element: If the connector is inside of a Lane element, it can be moved to another Lane element in the same Pool element. However, the connector cannot be moved outside of the Pool element.
Change a Decision Task Connector's Appearance
See Customize the Appearance of a Process Model Object.
Copy a Decision Task Connector
See Copy Process Model Objects into the Clipboard.
Clone a Decision Task Connector
See Clone Process Model Objects Without the Clipboard.
Delete a Decision Task Connector
See Delete Process Model Objects.
Preview the Decision Table
After a Decision Task connector element is added to a Process model and selected Decision Table(s) to run Business Rules, you may preview the first associated Decision Table, which allows you to interact with and verify the Decision Table content in the same Process Modeler.
Ensure to select a Decision Table for each Decision Task element in your Process model. If a Decision Table is not specified and the Decision Task previews, the following placeholder displays:
Follow these steps to preview the first associated Decision Table from a Decision Task Connector element:
Select the Decision Task connector element to preview the first associated Decision Table. Available options display above the selected element.
In the Preview window, you can do the following:
Click another Task or connector element to change the asset in the same preview window.
Settings
The Decision Task connector has the following panels that contain settings:
Configuration panel
Loop Activity panel
Advanced panel
Configuration Panel
Edit the Connector Name
A connector name is a human-readable reference for a Process model control. Process Modeler automatically assigns the name of a Process model connector with its connector type. However, a connector's name can be changed.
Follow these steps to edit the name for a Decision Task connector:
Select the Decision Task connector from the Process model in which to edit its name.
In the Name setting, edit the selected connector's name and then press Enter.
Loop Characteristics Panel Settings
Specify Characteristics to Perform Multiple Instances of the Connector
Use the Loop Characteristics panel settings to specify how to perform multiple instances of this connector. The following loop modes are available for this connector:
No Loop Mode: Select the No Loop Mode option to perform this connector's function only once.
Loop: Select the Loop option to sequentially repeat this connector's function multiple times until an exit condition is
True
. This is useful when a function should be performed multiple times with the same set of data, such as, processing a credit card payment. This loop mode has the following characteristics:The connector's function is repeated until the exit condition is
True
or the maximum iterations limit is reached.At any given time, only one instance of the connector is active. The subsequent instance does not begin until the current instance completes.
The same exit condition evaluates at the end of each instance; however, value(s) of the Request variable(s) used in the exit condition can change during an instance resulting in the exit condition to eventually evaluate as
True
.If any one instance of that function does not complete, workflow pauses.
All active instances are terminated if an interrupting boundary-type event element triggers.
Multi-instance (Parallel): Select the Multi-instance (Parallel) option to perform this connector's Task multiple times in parallel a fixed number of times. This is useful when performing any action in bulk, such as sending an email to several people. This loop mode has the following characteristics:
Instances of the connector are governed by the size of an array-type Request variable where a new instance is created for each item in this variable. For example, an array with 10 items will create 10 parallel instances of this function that each contains data from its respective array index.
All instances begin simultaneously when this connector triggers; however, they perform their function independently of each other.
The function as a whole completes when all instances are complete.
The output from each instance can either be saved in the source Request variable or a new array-type Request variable.
All active instances terminate if an interrupting boundary-type event element triggers.
Multi-instance (Sequential): Select the Multi-instance (Sequential) option to perform this connector's function multiple times sequentially a fixed number of times or until an exit condition is
True
. This is useful when sequentially repeating a function multiple times but with a different set of data each time. This loop mode has the following characteristics:Instances of the function are governed by the size an array-type Request variable where a new instance is created for each item in this variable. For example, an array with 10 items will create 10 parallel instances of this function that each contains data from its respect array index.
At any given time, only one instance of the function is active. The subsequent instance does not begin until the current instance completes.
At the end of each instance an exit condition evaluates and the loop activity halts if the exit condition is
True
.The function as a whole completes when all instances are complete.
The output from each instance can either be saved in the source Request variable or a new array-type Request variable.
All active instances terminate if an interrupting boundary-type event element triggers.
Follow these steps to specify characteristics to perform multiple instances of the connector:
Select the connector from the Process model in which to specify multiple instance characteristics.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
Expand the Loop Characteristics panel. The Loop Characteristics setting displays. By default, Loop Activity is set to No Loop Mode and the function is performed only once.
From the Loop Mode setting, select one of the following options to perform this connector's function more than once.
Loop: Select the Loop option. The settings for this loop mode display:
Follow these steps:
In the Maximum Iterations setting, enter an integer value representing the maximum number of times this Task should be performed.
In the Exit Condition setting, enter a condition in FEEL syntax. When this condition is True the loop activity is halted.
Multi-instance (Parallel): Select the Multi-instance (Parallel) option. The settings for this loop mode display:
Follow these steps:
In the Request Variable Array setting, enter the name of an array-type Request variable. The size of this array will determine how many times this loop iterates.
In the Output Data Variable setting, enter the name of an array-type Request variable in which to store the results of all instances. Each instance of the loop saves to a separate JSON object within the array of the specified Request variable. If the Output Data Variable setting is not configured, then the output data replaces the source data in the Request Variable Array.
Multi-instance (Sequential): Select the Multi-instance (Sequential) option. The settings for this loop mode display:
Follow these steps:
In the Request Variable Array setting, enter the name of an array-type Request variable. The size of this array will determine how many times this loop iterates.
In the Exit Condition setting, enter a condition in FEEL syntax. When this condition is True the loop activity is halted.
In the Output Data Variable setting, enter the name of an array-type Request variable in which to store the results of all instances. Each instance of the loop saves to a separate JSON object within the array of the specified Request variable. If the Output Data Variable setting is not configured, then the output data replaces the source data in the Request Variable Array.
Decision Tables
Select Which Decision Table(s) to Run Business Rules
Select which Decision Table(s) to run from which to evaluate business rules. Optionally, configure a Friendly Enough Expression Language (FEEL) expression that evaluates if the Decision Table should run prior to evaluating any decisions in it.
Follow these steps to select which Decision Table(s) to run from which to evaluate business rules:
Select the connector from the Process model in which to specify the Decision Table(s) to run.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
Do one of the following:
From the Select a Table drop-down menu, select which Decision Table to run its business rules.
Click the Create a new decision table link. A new browser window opens to create a new Decision Table. After creating the Decision Table, the Select a Table drop-down menu automatically populates with the created Decision Table. Otherwise, be sure to select the new Decision Table in the Select a Table drop-down menu.
Optionally, click the Open table link to view and/or edit your selected Decision Table. Note that your user account must have appropriate Decision Table category permissions or be a Project member in which this Decision Table is an asset.
Optionally, configure a Friendly Enough Expression Language (FEEL) expression that evaluates if the Decision Table should run prior to evaluating any decisions in it. To do so, do the following:
Enable the Execute Conditionally setting.
Enter the expression that must evaluate as
TRUE
for this Decision Table to evaluate its business rules.
Repeat step 3 through 7 for each Decision Table that this Decision Task connector runs for its business rules.
If no Decision Tables exist, the Select a Table drop-down menu contains no options.
Edit Which Decision Table(s) to Run
After selecting which Decision Table to run, optionally select a different Decision Table to run or conditions in which it runs.
Follow these steps to edit settings for an added Decision Table to run:
Select the connector from the Process model in which to edit settings for which Decision Table(s) to run.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
Optionally, from the Select a Table drop-down menu, select a different Decision Table to run its business rules.
Optionally, click the Open table link to view and/or edit your selected Decision Table. Note that your user account must have appropriate Decision Table permissions to view and/or edit the selected Decision Table.
Optionally, configure a Friendly Enough Expression Language (FEEL) expression that evaluates if the Decision Table should run prior to evaluating any decisions in it. To do so, do the following:
Enable the Execute Conditionally setting.
Enter the expression that must evaluate as
TRUE
for this Decision Table to evaluate its business rules.
Optionally, repeat steps 4 through 7 for each Decision Table's settings to edit.
Delete a Decision Table from Running
Follow these steps to delete a Decision Table from running to evaluate its business rules:
Select the connector from the Process model in which to delete a Decision Table from evaluating its business rules.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
Click Delete.
Variable Mapping
After selecting which Decision Table(s) to evaluate its business rules, map how decision variables in the selected Decision Table(s) map to Request variables. Mapping involves two procedures:
Map Outbound Data from the Request to the Decision Table
Follow these steps to map outbound data from the Request to the Decision Table:
Select the connector from the Process model in which to map variable data routing.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
In the Request Variable setting, enter the name of the Request variable that sends data to the decision input variable of the Decision Table.
In the Table Input Variable setting, enter the decision input variable's name that receives the Request variable data. Ensure to enter the decision input variable's name, not its label.
Optionally do one of the following to edit or delete a mapped outbound data variable pairing:
Repeat steps 3 through 7 as necessary for each Request variable to map to a Decision Table.
Map Decision Table Data to the Request After Evaluating Business Rules
Follow these steps to map Decision Table output variable data to Request data after evaluating business rules:
Select the connector from the Process model in which to map variable data routing.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
In the Table Output Variable setting, enter the name of the output decision variable from the Decision Table that sends data to the Request variable. Ensure to enter the decision output variable's name, not its label.
In the Set Request Variable setting, enter the Request variable's name that receives the output decision variable data.
Optionally do one of the following to edit or delete a mapped outbound data variable pairing:
Repeat steps 3 through 7 as necessary for each Request variable to map to a Decision Table.
Advanced Panel Settings
Edit the Node's Identifier Value
A Process node represents a component of a Process model, whether that is a BPMN element or a connector. Process Modeler automatically assigns a unique value to each Process node added to a Process model. A Process node's identifier value can be changed if it is unique to all other nodes in the Process model, including the Process model's identifier value.
All identifier values for all nodes in the Process model must be unique.
Follow these steps to edit the identifier value for a Decision Task connector:
Select the Decision Task connector from the Process model in which to edit its identifier value.
Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.
Expand the Advanced panel if it is not presently expanded. The Node Identifier setting displays. This is a required setting.
In the Node Identifier setting, edit the Decision Task connector's identifier to a unique value from all nodes in the Process model and then press Enter.
Related Topics
Decision Tables PackageWhat is a Connector?What is a Package?Last updated