Published at: 2026-09-17
custom-process-variables
Custom process variables store temporary data during process runtime and make it available to later nodes, post-actions, and branch conditions. For example, you can save the calculation result of an APL function and then use the result to determine the process path.
Usage scope
- Approval flows and business flows are supported.
- A variable belongs only to the current process definition. Other process definitions cannot use it.
- Create variables in Variable Management, assign values in post-actions, and reference them in branch conditions.
- Changes to variable configuration take effect immediately and might affect nodes that reference the variable.
Configure variables
In the upper-right corner of the process editor, click Variable Management to search, add, and edit variables.
Variable information
| Configuration item | Description |
|---|---|
| Variable name | The display name in the process. It is required and can contain up to 50 characters. Long content appears with ellipses in the list. Hover over it to view the full name. |
| API Name | The unique variable identifier. It is required and can contain up to 20 characters. It cannot contain Chinese characters or special characters, and it cannot duplicate an existing variable. The system generates it automatically, but you can modify it. |
| Data type | The data type stored by the variable. It is required. |
| Default value | The value used when the variable has not been assigned. This field is optional. If left blank, the value is empty. The default value must match the data type. |
| Usage nodes | Automatically shows nodes and branch conditions that reference the variable. |
Supported data types:
| Type | Applicable data |
|---|---|
string |
Text, letters, numbers, or symbols. |
boolean |
Yes or no. |
integer |
An integer without decimals. |
number |
An integer or decimal. |
list |
A list with multiple elements, such as a string array or number array. |
After you save a variable, the list shows variable name, API Name, data type, default value, usage nodes, and operations. A variable referenced by nodes cannot be deleted. To delete it, remove related references first.
Assign values to variables
Steps
- Open the process node that needs configuration, and go to Post-Actions.
- Select Variable Assignment, and click Add.
- Select the variable to assign.
- Select an assignment method and enter the value.
- Save the Action Configuration for the post-action.
Assignment methods
Fixed value: The system fills in the variable default value by default. You can modify it for this post-action. This modification does not change the default value in Variable Management.
Function: Click Add APL Function to open function configuration. The function must return a value and data type that match the selected variable. You can copy, edit, or delete configured functions.
When you configure multiple variables, one function can return multiple variables at one time. If the function return value is empty, misses a variable, or returns a mismatched type, the corresponding variable cannot get a valid value.
When the same process assigns a variable multiple times, the later assignment overwrites the earlier value. When the post-action runs, this assignment takes priority. If the variable has not been assigned, the system uses the default value from Variable Management.
Use variables in branch conditions
When configuring branch conditions, select Custom Variables in the variable selector to use variables created in the current process definition.
If no custom variables exist, the page shows “No custom variables. Add one first.” Click + Add to open Variable Management. After creation, the variable appears in the custom variable list.
Operators
| Data type | Available operators |
|---|---|
| String | Include, Not Included, Equals, Not Equal To, Is Null, Is Not Null. |
| Integer, number | Equals, Not Equal To, Greater Than, Less Than, Greater Than or Equal To, Less Than or Equal To, Is Null, Is Not Null. |
| Boolean | Equals, Not Equal To, Is Null, Is Not Null. |
| Array | Equals, Not Equal To, Is Null, Is Not Null. |
Variables returned by functions are usually used to determine whether a return value exists. They support only Is Null and Is Not Null.
Business flow branch nodes can also configure:
- Condition name: Required and up to 50 characters. During creation, the condition name is filled in by default.
- Condition details: Shows the configured variable, operator, and comparison value.
View execution results
When a process reaches a node that uses variables, it synchronously obtains variable values. During execution, the node displays “Getting process variables”. You can view execution results in Approval Node details and process logs.
If function execution fails, the node displays “Process variable Execution Failed. Contact the CRM administrator to modify the configuration.” If you have the required permission, you can select Retry or Skip. After processing, confirm the actual result in the process log.
Variable values when a process reruns
- When you restart a process and generate a new instance, variable assignments from the original instance are not carried over.
- When the process returns to the current node, assignments from skipped intermediate nodes are retained.
- When a rejected node runs again, assignments from that node are cleared and must be assigned again.
Configuration recommendations
- Define variables in Variable Management before configuring assignments and branch references.
- Use a stable and recognizable English identifier for API Name. Check Usage Nodes before changing it.
- When selecting a data type, also confirm the types of the default value and APL function return value.
- After configuration, verify at least one normal circulation case, one empty function return case, and one function Execution Failed case.