If required, you can reference (and therefore manipulate) flow variables in custom scripts. The possibilities here are only as limited as your development expertise however, a simple example might be where you want to generate a running count of order lines, to be output to a total field in a target system.
Write a custom script which loops over each received order line and updates the running_total variable as it goes.
Add the custom script to your process flow via a script shape.
Add a map shape to your process flow and include a rule which maps a custom string transform for {{flow.variables.running_total}}, to the total field in the target system.
Flow variable syntax for custom scripts
To reference flow variables in a custom script, the required syntax is as follows:
PHP 8.1
['flow']['variables']['variableName']
Javascript Node 18
flow.variables.variableName
C# 8
["flow"]["variables"]["variableName"]
Python 3
['flow']['variables']['variableName']
Ruby 3
['flow']['variables']['variableName']
In all cases, the variableName element should be replaced with the actual flow variable name. For example:
PHP 8.1
['flow']['variables']['running_total']
Example
The example script below takes a flow variable named customerID and sets the value to 1234567:
So, wherever the customerID flow variable is referenced in a process flow, its value would be set to 1234567 when the process flow runs.
When you update flow variables via a script, those updates persist for the duration of the flow run. Once the process flow has completed, default values are restored.