--- title: "Decision Task Connector" slug: "decision-task-connector" updated: 2025-12-06T00:20:47Z published: 2025-12-06T00:20:47Z canonical: "docs.processmaker.com/decision-task-connector" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.processmaker.com/llms.txt > Use this file to discover all available pages before exploring further. # Decision Task Connector > [!TIP] > [**Plan Availability:**](https://www.processmaker.com/products/pricing/) ![Professional](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/Professional.png)![Enterprise](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/Enterprise.png) Use Decision Task connectors to run [Decision Tables](/v1/docs/decision-tables) in your Processes. Specify which Decision Table(s) to run, thereby evaluating their business rules, and then map how data is passed between [process variables](/v1/docs/request-variable) and Decision Table variables. Decision Task connectors immediately evaluate the business rules within a specified Decision Table, thereby affecting process routing in real time with the current conditions and outcomes for all decisions in that Decision Table. --- ## Add a Decision Task Connector to the Process Model **Permissions** - Processes: Edit Processes - Processes: View Processes See the [Process](/v1/docs/permission-descriptions-for-users-and-groups#processes) permissions or ask your Administrator for assistance. 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](/v1/docs/permission-descriptions-for-users-and-groups#processes) permissions or ask your Administrator for assistance. Add a Decision Task connector from one of the following locations in Process Modeler: - **Object Panel:** Located to the left of the Process Modeler canvas, the Object Panel contains various process model objects. - **Object Bar:** Located at the bottom of the Process Modeler canvas, the Object Bar contains [pinned](/v1/docs/process-modeler#pin-and-unpin-objects) Process model objects for quick access. Add from the Object panelAdd from the Object bar Follow these steps to add a Decision Task connector from the Object panel to the Process model: 1. Ensure that the Object panel is visible on the left. If not, click the **Add** icon ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/b175bbc0-c134-4a7c-99b7-b7a2eda9a638.png) from the Object bar at the bottom. 2. Click the **Decision Task** object ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/9484c5a7-2a44-4f17-b565-3cfaae25d349.png) from the Object panel to select it. 3. Click the location in the Process model to place this connector. Follow these guidelines when placing this object: - If your process has a Pool object, the Decision Task object cannot be placed outside of the Pool. - To place this object between two existing objects, follow [these instructions](/v1/docs/sequence-flow-element#place-an-object-between-two-process-model-objects-already-connected-with-a-sequence-flow-element). ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/40c28276-bcf5-4ffc-b8c3-353af94ac9f8.png) Follow these steps to add a Decision Task connector from the Object bar to the Process model: 1. Ensure that the Decision Task object ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/2a4cc3e1-3fb2-49b3-847c-6d50a4cecf45.png) is pinned to the Object bar. If not, see [instructions to pin it](/v1/docs/process-modeler#pin-and-unpin-objects) it. 2. In the Object bar at the bottom center, click the object's icon. 3. Click the location in the Process model to place this element. Follow these guidelines when placing this object: - If your process has a Pool object, the Decision Task object cannot be placed outside of the Pool. - To place this object between two existing objects, follow [these instructions](/v1/docs/sequence-flow-element#place-an-object-between-two-process-model-objects-already-connected-with-a-sequence-flow-element). ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/40c28276-bcf5-4ffc-b8c3-353af94ac9f8.png) **Add boundary events** After adding an object to a process, consider adding the following events to handle exceptions: - [Boundary Timer Event](/v1/docs/boundary-timer-event) element - [Boundary Error Event](/v1/docs/boundary-error-event) element - [Boundary Signal Event](/v1/docs/boundary-signal-event) element - [Boundary Conditional Event](/v1/docs/boundary-conditional-event) element - [Boundary Message Event](/v1/docs/boundary-message-event) element **Adjust location and appearance** - [Move a Process Model Object.](/v1/docs/process-modeler#move-process-model-objects) - [Connect Two Process Model Objects with a Sequence Flow Element.](/v1/docs/sequence-flow-element#connect-two-process-model-objects-with-a-sequence-flow-element) - [Customize the Appearance of a Process Model Object.](/v1/docs/customize-the-appearance-of-a-process-model-object) - [Copy Process Model Objects into the Clipboard.](/v1/docs/process-modeler#copy-process-model-objects-into-the-clipboard) - [Clone Process Model Objects Without the Clipboard.](/v1/docs/process-modeler#clone-process-model-objects) - [Delete Process Model Objects.](/v1/docs/process-modeler#delete-process-model-objects) ## Preview the Decision Table After a Decision Task is added to a Process model and a Decision table has been selected, you may preview the Decision Table to verify its contents. If multiple Decision Tables have been selected, the preview shows the first table. 1. Select the Decision Task connector. Available menu options display above the selected element. 2. Click the **Preview** icon ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/d09b88a9-70f6-43d6-8aab-a645dfd137f7.png). A preview window displays and shows the Decision Table. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/e6974eaf-ac6b-4739-989e-e9ff7a9da5d5.png) 3. From the Preview window, you can do the following: - Click the icon ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/c543463c-f85b-4fd6-bb78-e3b727c3ab43.png) to open the [Decision Table Editor](/v1/docs/decision-tables) to edit the Decision Table. - Click the icon ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/18ad11c9-5908-4d82-88a9-033c50b7de09.png) to close the preview window. --- ## Settings The Decision Task connector has the following properties: - [**Configuration**](/v1/docs/decision-task-connector#configuration-panel) panel - [**Loop Activity**](/v1/docs/decision-task-connector#loop-activity-panel-settings) panel - [**Decision Tables**](/v1/docs/decision-task-connector#decision-tables) panel - [**Variable Mapping**](/v1/docs/decision-task-connector#variable-mapping) panel - [**Advanced**](/v1/docs/decision-task-connector#advanced-panel-settings) 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: 1. Select the Decision Task connector from the Process model in which to edit its name. 2. Ensure that the **Configuration** panel displays. If not, [show it](/v1/docs/show-configuration-settings-for-a-process-model-object). The **Name** setting displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/d56f6790-a7cb-4263-b199-57cdebe37e78.png) 3. In the **Name** setting, edit the selected connector's name and then press **Enter**. #### Add a Placeholder for the Slideshow Mode The Slideshow Mode makes it easy for process designers to share the design of a process with all stakeholders, regardless of whether they have access to the ProcessMaker Platform. For more information on how to create slideshows for a process, see Slideshow Mode. Follow these steps to add a placeholder image for the [Slideshow Mode](/v1/docs/slideshow-mode): 1. Select an object from the Process model. 2. Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(250).png) icon to view the **Configuration** panel. 3. From the **Placeholder for Slideshow** section, click on the **+Drag or click here** button to upload an image. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(251).png) 4. A preview of the image will display, and the configuration will be auto-saved. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(252).png) 5. The uploaded image will be shown for this task the next time the slideshow is viewed. > [!NOTE] > - Size of a placeholder image for slideshows must less than 2 MB. > - Image files with PNG, JPG, JPEG, and GIF extensions are supported. The Slideshow Mode makes it easy for process designers to share the design of a process with all stakeholders, regardless of whether they have access to the ProcessMaker Platform. For more information on how to create slideshows for a process, see [Slideshow Mode](/v1/docs/slideshow-mode). Follow these steps to add a placeholder image for the Slideshow Mode: 1. Select an object from the Process model. 2. Click the icon to view the Configuration panel. 3. From the Placeholder for Slideshow section, click on the +Drag or click here button to upload an image. --- ### Loop Activity Panel Settings Use the **Loop** Activity panel settings to specify how to run multiple instances of this object. The following loop modes are available: #### No Loop Mode Select the **No Loop Mode** option to perform this object's function only once. Follow these steps to specify characteristics to perform multiple instances of the object:‌ 1. Select the object from the Process model. Panels to configure this object display. 2. Expand the **Loop Activity** panel. By default, the **Loop Mode** setting is set to **No Loop Mode** and the function is performed only once. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(135).png) #### Loop Select the Loop option to sequentially repeat this object'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 object'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 object 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 object triggers. - An object configured in this mode shows the **Loop** icon ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(137).png)in Process Modeler. Follow these steps to specify characteristics to perform multiple instances of the object:‌ 1. Select the object from the Process model in which to specify multiple instance characteristics. Panels to configure this object display. 2. Expand the **Loop Activity** panel to display the **Loop Mode** Setting. 3. From the **Loop Mode** setting, select the **Loop** option. The settings for this loop mode display: ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(136).png) 4. In the **Maximum Iterations** setting, enter an integer value representing the maximum number of times this Task should be performed. 5. 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 to perform this object'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 object 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 object 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 object triggers. - A object configured in this mode shows the Multi-instance (Parallel) icon in Process Modeler. Follow these steps to specify characteristics to perform multiple instances of the object:‌ 1. Select the object from the Process model in which to specify multiple instance characteristics. Panels to configure this object display. 2. Expand the **Loop Activity** panel to display the **Loop Mode** Setting. 3. From the Loop Mode setting, select the **Multi-instance (Parallel)** option. The settings for this loop mode display: ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(138).png) 4. 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. 5. 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 to perform this object'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 object triggers. - A object configured in this mode shows the Multi-instance (Sequential) iconin Process Modeler. Follow these steps to specify characteristics to perform multiple instances of the object:‌ 1. Select the object from the Process model in which to specify multiple instance characteristics. Panels to configure this object display. 2. Expand the **Loop Activity** panel to display the **Loop Mode** Setting. 3. From the Loop Mode setting, select the **Multi-instance (Sequential)** option. The settings for this loop mode display: ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/image(139).png) 4. 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. 5. In the **Exit Condition** setting, enter a condition in FEEL syntax. When this condition is True the loop activity is halted. 6. 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 The Decision Task has multiple settings in the **Decision Tables** panel: #### Select Decision Table(s) You can select one of more Decision Tables to run in a Decision Task. Follow these steps to select the Decision Table(s). 1. Expand the **Decision Tables** panel. The **Tables to run** setting displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/DT - Tables to Run.png) 2. Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/49415d2b-6624-4223-97ef-b55a1cd6eafe.png) icon to add a Decision Table. 3. From the **Select a Table** drop-down menu, select a Decision Table. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/Select a Table.png) 4. Optionally, click the **Open table** link to view and/or edit your selected Decision Table. > If no Decision Tables exist, the **Select a Table** drop-down menu contains no options. #### Select a Hit Policy > [!NOTE] > New in Spring 2025 > > This feature is available in the Spring 2025 release. 1. From the **Hit Policy** setting, select one of the following policies. SingleMultiple | Single: Returns a single result based on the selected single-hit policy. | | --- | | First | Evaluates rules sequentially and returns the output of the first satisfied rule, ignoring the rest. Users can reorder rules to control priority. | | Unique | Ensures that only one rule is satisfied and returns the output of a single satisfied rule. If multiple rules are satisfied, the decision table returns an error. | | Any | Returns the output when multiple rules are satisfied, but only if they all produce the same result. If conflicting outputs exist, the decision table fails. | | **Multiple: Evaluates all matching rules and aggregates the results based on the selected multi-hit policy.** | | --- | | Collect Sum | Returns the sum of the outputs from all satisfied rules. Outputs must be numerical values or durations. | | Collect Min | Returns the smallest output value among all satisfied rules. Outputs must be comparable, such as numbers, durations, strings, dates, or times. | | Collect Max | Returns the largest output value among all satisfied rules. Outputs must be comparable, such as numbers, durations, strings, dates, or times. | | Collect Count | Returns the total count of outputs of all satisfied rules. Each rule's output can be of any type, but the decision table always returns a number. | | Rule order | Returns the outputs of all satisfied rules in a list, maintaining their evaluation order. | 2. Optionally, configure a [Friendly Enough Expression Language (FEEL)](/v1/docs/feel-expression-syntax) expression that evaluates if the Decision Table should run prior to evaluating any decisions in it. To do so, do the following: 1. Enable the **Execute Conditionally** setting. 2. Enter the expression that must evaluate as `TRUE` for this Decision Table to evaluate its business rules. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/DT - Execute Conditionally.png) 3. Click **Save**. The selected Decision Table displays in the **Tables to run** setting. If no conditions are specified to run this Decision Table, **Always** displays below the Decision Table name. Otherwise, the conditional expression displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/Decision Table Saved.png) 4. Click the **gear** icon to edit the Decision Table configuration. 5. Click the **trash** icon to delete the table. A confirmation message displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/Delete DT.png) 6. Click **Delete**. --- ### Variable Mapping After selecting one or more Decision Table, map how [decision variables](/v1/docs/decision-tables#what-is-a-decision-variable) in the selected Decision Table map to [process variables](/v1/docs/request-variable). Mapping involves two procedures: #### Map Outbound Data from the process to the Decision Table Follow these steps to map outbound data from the process to the Decision Table: 1. Select the Decision Task from the Process model. 2. Ensure that the **Configuration** panel displays. If not, [show it](/v1/docs/show-configuration-settings-for-a-process-model-object). Panels to configure this element display. 3. Expand the **Variable Mapping** panel. The **Outbound Data** setting displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/af190973-052d-4e7f-87a3-6c80db1653c6.png) 4. Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/49415d2b-6624-4223-97ef-b55a1cd6eafe.png) icon to expand the **Outbound Data** setting. The **Map to Column** setting displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/e48b09d8-8eba-44d8-a0c7-436998eb8a05.png) 5. In the **Request Variable** setting, enter the name of the Request variable that sends data to the decision input variable of the Decision Table. 6. 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. 7. Click **Save**. The mapped variables display in the **Outbound Data** setting. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/87051ea2-a6c5-4d77-9b38-34aae091143f.png) 8. Optionally do one of the following to edit or delete a mapped outbound data variable pairing: - **Edit a mapped outbound data variable pairing:** Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/d360b189-0dfd-4557-9112-50a754fc2736.png) icon for the mapped variable pairing in which to change its settings. - **Delete a mapped outbound data variable pairing:** Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/50e4666d-9eb9-465d-8a5e-87100473ebe0.png) icon for the mapped variable pairing in which to delete. A confirmation message displays. Click **Confirm** to delete the mapped variable pairing. 9. Repeat steps 3 through 7 as necessary for each Request variable to map to a Decision Table. #### Map Decision Table Data to the process After Evaluating Business Rules Follow these steps to map Decision Table output variable data to process variables after evaluating business rules: 1. Select the connector from the Process model in which to map variable data routing. 2. Ensure that the **Configuration** panel displays. If not, [show it](/v1/docs/show-configuration-settings-for-a-process-model-object). Panels to configure this element display. 3. Expand the **Variable Mapping** panel if it is not already expanded. The **Outbound Data** and **Response Mapping** settings display. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/077587d7-8775-44e8-8797-572e15b47f2b.png) 4. From the **Response Mapping** setting, click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/49415d2b-6624-4223-97ef-b55a1cd6eafe.png) icon to expand the **Outbound Data** setting. The **Configured Returned Data** setting displays. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/781841c3-d468-4dc1-8d89-e6963cf7d4ab.png) 5. 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. 6. In the **Set Request Variable** setting, enter the Request variable's name that receives the output decision variable data. 7. Click **Save**. The mapped variables display in the **Response Mapping** setting. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/4b167b80-84e4-4ba5-8631-f4cac5543d34.png) 8. Optionally do one of the following to edit or delete a mapped outbound data variable pairing: - **Edit a mapped variable response pairing:** Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/d360b189-0dfd-4557-9112-50a754fc2736.png) icon for the mapped variable pairing in which to change its settings. - **Delete a mapped variable variable pairing:** Click the ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/50e4666d-9eb9-465d-8a5e-87100473ebe0.png) icon for the mapped variable pairing in which to delete. A confirmation message displays. Click **Confirm** to delete the mapped variable pairing. 9. 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. > [!WARNING] > 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: 1. Select the Decision Task connector from the Process model in which to edit its identifier value. 2. Ensure that the **Configuration** panel displays. If not, [show it](/v1/docs/show-configuration-settings-for-a-process-model-object). Panels to configure this element display. 3. Expand the **Advanced** panel if it is not presently expanded. The **Node Identifier** setting displays. This is a required setting. ![](https://cdn.document360.io/2d311614-fcb7-4424-8b4c-d4d3091eebeb/Images/Documentation/c117d771-8652-46c2-b0a9-83bb21bc6116.png) 4. 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**.