---
schema_version: "1"
id: a61275a7c1efafbc5e661666ff014b9b810b4b4dd23bdb5ce03ae777ce6860fc
title: Create a Definition to Calculate Purchase Credit and Reward
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/ind/264-0-0/dpe_use_case_example.md
canonical_url: https://help.salesforce.com/s/articleView?id=ind.dpe_use_case_example.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: c50e9c0d62f7e604bdf40473865ebe786e8561f4d28a1456445870fb7c631b28
description: The Cloud Kicks admin created and activated a Data Processing Engine definition to calculate and update the purchase credit for accounts based on their orders. The definition is also used to calculate the bonuses to be awarded to the salespeople associated with the orders.
products:
  - Cross Cloud
release: "264"
---
# Create a Definition to Calculate Purchase Credit and Reward

The Cloud Kicks admin created and activated a Data Processing Engine definition to calculate and update the purchase credit for accounts based on their orders. The definition is also used to calculate the bonuses to be awarded to the salespeople associated with the orders.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;"><a href="https://help.salesforce.com/s/articleView?id=ind.dpe_editions.htm&amp;release=264.0.0&amp;type=5" title="Review the supported editions and availability for Data Processing Engine (DPE).">View supported editions</a>.</td></tr></tbody></table>

The admin uses Order and Contact as the data source objects. The purchase credit for accounts is written back to a custom field in the Account object, and the employee bonus is written back to the custom object Salesperson Bonus. The definition uses two input variables to ensure that the orders that were effective and closed during a specific financial year are considered. The input variable values aren't defined, and the admin wants to define the dates every time the definition runs in Flows.

The admin defines the definition as:

- Name: Calculate Purchase Credit and Bonus
- API Name: Calculate\_Purchase\_Credit\_and\_Bonus
- Process Type: Standard

Here's how the admin defined each node in the definition along with the input variables. The sequence that the nodes are created in is also specified.

## 1\. Select Data Sources

The admin selects two data source objects and the required fields from each object.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e94">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e97">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e100">Object</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e103">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e94 ">Data Source</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e97 ">Order</td>

            <td data-label="Object" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e100 ">Order</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e103 ">
              <p>Selected fields:</p>
              <ul>
                <li>AccountId</li>

                <li>EffectiveDate</li>

                <li>EndDate</li>

                <li>Id</li>

                <li>OwnerId</li>

                <li>Status</li>

                <li>TotalAmount</li>

              </ul>
            </td>

          </tr>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e94 ">Data Source</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e97 ">User</td>

            <td data-label="Object" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e100 ">User</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e103 ">
              <p>Selected fields:</p>
              <ul>
                <li>Email</li>

                <li>Id</li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

The admin requires only these two objects as data sources and not the Account object because the AccountId is a related field of the Order object.

![Order data source node](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/data_source_example.png)

## 2\. Create Input Variables

To filter Order records that were placed and fulfilled during a particular year, two filter variables are required.

 
| Input Variable Name | Type |
| --- | --- |
| OrderEffectiveDate | Date |
| OrderEndDate | Date |

The values for both input variables aren't defined because the admin wants to define the values based on the year when the definition is run.

![OrderCreatedDate input variable](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/input_variable_example.png)

## 3\. Filter Orders

Next, the admin creates a Filter node that filters out Order records with effective dates that were closed during the year.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e271">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e274">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e277">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e280">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e271 ">Filter</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e274 ">Filter Orders</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e277 ">Order</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e280 ">
              <ul>
                <li>Filter conditions: All conditions are met (AND)</li>

                <li>First filter condition:<ul>
                    <li>Field: EffectiveDate</li>

                    <li>Operator: Greater Than or Equal</li>

                    <li>Type: Input Variable</li>

                    <li>Value: OrderEffectiveDate</li>

                  </ul>
                </li>

                <li>Second filter condition:<ul>
                    <li>Field: EndDate</li>

                    <li>Operator: Less Than or Equal</li>

                    <li>Type: Input Variable</li>

                    <li>Value: OrderEndDate</li>

                  </ul>
                </li>

                <li>Third filter condition:<ul>
                    <li>Field: Status</li>

                    <li>Operator: Equals</li>

                    <li>Type: Field</li>

                    <li>Value: Activated</li>

                  </ul>
                </li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![Filter orders in Filter node.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/filter_example.png)

## 4\. Join Order and Contact

The admin joins the two tables to use only the data for the filtered orders and the associated users. The admin selects the Join Type as **Inner** to ensure that only the records for salespeople associated with the orders are included in the joined dataset.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e398">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e401">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e404">Source Nodes</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e407">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e398 ">Join</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e401 ">Join Filtered Orders and Users</td>

            <td data-label="Source Nodes" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e404 ">
              <ul>
                <li>First Source Node: Filter Order</li>

                <li>Second Source Node: User</li>

              </ul>
            </td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e407 ">
              <ul>
                <li>Selected Fields in First Source Node<ul>
                    <li>AccountId (Alias: OrderAccountId)</li>

                    <li>TotalAmount (Alias: OrderTotalAmount)</li>

                  </ul>
                </li>

                <li>Selected Fields in Second Source Node<ul>
                    <li>Email (UserEmail)</li>

                    <li>Id (Alias: UserId)</li>

                  </ul>
                </li>

                <li>Map Fields:<ul>
                    <li>First Node Field: OwnerId</li>

                    <li>Second Node Field: Id</li>

                  </ul>
                </li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![Join filtered order and user in Join node.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/join_example.png)

## 5\. Group by Account and Aggregate Total Amount

The admin creates a node that groups the orders by account and calculates the sum of the order amounts of all the filtered orders associated with each account.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e509">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e512">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e515">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e518">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e509 ">Group and Aggregate</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e512 ">Group by Account and Sum Total Amount</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e515 ">Join Filtered Orders and Users</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e518 ">
              <ul>
                <li>Group field: OrderAccountId</li>

                <li>Aggregate:<ul>
                    <li>Alias: AccountTotalOrderAmount</li>

                    <li>Function: Sum</li>

                    <li>Field: OrderTotalAmount</li>

                  </ul>
                </li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![Group by AccountId and aggregate sum by total order amount.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/group_and_aggregate_example.png)

## 6\. Group by User and Aggregate Total Amount

The admin creates another similar node. This node groups the orders by the associated user and calculates the sum of the order amounts of all the filtered orders associated with each user.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
      <colgroup>
        <col style="width:25%">
        <col style="width:25%">
        <col style="width:25%">
        <col style="width:25%">
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e596">Node Type</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e599">Node Name</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e602">Source Node</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e605">Node Configuration</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e596 ">Group and Aggregate</td>

          <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e599 ">Group by User and Sum Total Amount</td>

          <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e602 ">Join Filtered Orders and Users</td>

          <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e605 ">
            <ul>
              <li>Group fields:<ul>
                  <li>UserEmail</li>

                  <li>UserId</li>

                </ul>
              </li>

              <li>Aggregate:<ul>
                  <li>Alias: UserTotalOrderAmount</li>

                  <li>Function: Sum</li>

                  <li>Field: OrderTotalAmount</li>

                </ul>
              </li>

            </ul>
          </td>

        </tr>
      </tbody>
    </table>

## 7\. Calculate Purchase Credit for Accounts

To calculate the purchase credit amount, this formula uses the sum calculated in the Group by Account and Sum Total Amount node.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e683">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e686">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e689">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e692">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e683 ">Formula</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e686 ">Purchase Credit Amount</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e689 ">Group by Account and Sum Total Amount</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e692 ">
              <ul>
                <li>Alias: PurchaseCreditAmount</li>

                <li>Field Type: Number</li>

                <li>Length: 10</li>

                <li>Decimal Places: 2</li>

                <li>Formula: <code>{AccountTotalOrderAmount} / 20</code></li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![Calculate purchase credit amount in a Formula node.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/formula_example.png)

## 8\. Calculate Bonus for Users

To calculate the bonus amount this formula uses the sum calculated in the Group by User and Sum Total Amount node.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e769">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e772">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e775">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e778">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e769 ">Formula</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e772 ">Bonus Amount</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e775 ">Group by User and Sum Total Amount</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e778 ">
              <ul>
                <li>Alias: BonusAmount</li>

                <li>Field Type: Number</li>

                <li>Length: 10</li>

                <li>Decimal Places: 2</li>

                <li>Formula: <code>{UserTotalOrderAmount} / 200</code></li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

## 9\. Write Back Purchase Credit for Accounts

In this step, a Writeback Object node is created to write back the Purchase Credit Amount to the Purchase Credit custom field on the Account object.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e850">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e853">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e856">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e859">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e850 ">Writeback Objects</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e853 ">Update Purchase Credit for Accounts</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e856 ">Purchase Credit Amount</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e859 ">
              <ul>
                <li>Action Type: Update</li>

                <li>Target Object: Account</li>

                <li>User with Writeback Permission: Cloud Kicks Admin</li>

                <li>Writeback Sequence: 1</li>

                <li>Update changed records only: Selected</li>

                <li>Field Mappings:<ul>
                    <li>First Field Mapping:<ul>
                        <li>Source Node Field: OrderAccountId</li>

                        <li>Target Field: Id</li>

                      </ul>
                    </li>

                    <li>Second Field Mapping:<ul>
                        <li>Source Node Field: PurchaseCreditAmount</li>

                        <li>Target Field: PurchaseCreditAmount__c</li>

                      </ul>
                    </li>

                  </ul>
                </li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![Write back to Year End Purchase Credit custom field in the Account object](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/writeback_example.png)

## 10\. Write Back Salesperson Bonus Amount

In this last step, a Writeback Object node is created to write back the bonus amount and the other employee details to the Salesperson Bonus custom object.

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
        <colgroup>
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
          <col style="width:25%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e962">Node Type</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e965">Node Name</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e968">Source Node</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d13901e971">Node Configuration</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Node Type" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e962 ">Writeback Objects</td>

            <td data-label="Node Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e965 ">Update Bonus for Salespeople</td>

            <td data-label="Source Node" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e968 ">Bonus Amount</td>

            <td data-label="Node Configuration" class="slds-cell-wrap" style="vertical-align:top;" headers="d13901e971 ">
              <ul>
                <li>Action Type: Insert</li>

                <li>Target Object: User</li>

                <li>User with Writeback Permission: Cloud Kicks Admin</li>

                <li>Writeback Sequence: 2</li>

                <li>Field Mappings:<ul>
                    <li>First Field Mapping:<ul>
                        <li>Source Node Field: UserId</li>

                        <li>Target Field: SalespersonId__c</li>

                      </ul>
                    </li>

                    <li>Second Field Mapping:<ul>
                        <li>Source Node Field: BonusAmount</li>

                        <li>Target Field: Bonus_Amount__c</li>

                      </ul>
                    </li>

                    <li>Third Field Mapping:<ul>
                        <li>Source Node Field: UserEmail</li>

                        <li>Target Field: SalespersonEmail__c</li>

                      </ul>
                    </li>

                  </ul>
                </li>

              </ul>
            </td>

          </tr>
        </tbody>
      </table>

![The Writeback Object node with Salesperson Bonus as writeback object.](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-ind-data_processing_engine-264-0-0-production-enus/80e06924-e6c0-4b82-81cf-e99ccd77d857/data_processing_engine/images/writeback_example_user.png)

#### See Also

- [Data Processing Engine Nodes](https://help.salesforce.com/s/articleView?id=ind.dpe_nodes.htm&release=264.0.0&type=5 "In Data Processing Engine, nodes are the basic building blocks that let you construct complex data processing flows. Nodes represent specific operations or transformations that can be performed on data. Each type of node lets you transform your data in a different way.")
- [Use Input Variables to Define Dynamic Processing Rules](https://help.salesforce.com/s/articleView?id=ind.dpe_define_input_variables.htm&release=264.0.0&type=5 "Define flexible data processing rules by using input variables to define default values, filter records, and create formulas. To dynamically control the data filters and formulas at run time, create variables without values and use them to configure Filter and Formula nodes. During a definition run, specify variable values based on your specific requirements. For example, to filter opportunities above a certain value for different fiscal years, set a default value for the input variable and then update it when you run the definition.")