Variables are task-independent data placeholders. A function or an event can store a value in a variable, and another function or event can extract and use this value in a later process step. Please use variables only if absolutely necessary. You can specify that variables of String, Boolean, or Decimal type with the scope System or Process are externalized. That means, the value can be changed manually in Process administration during the process execution.
An extended usage of variables can have significant negative impact on the performance of Process Governance.
Example:
When a process is started, the executing user enters his e-mail address into the start dialog. The content from the e-mail text field of the variable is assigned in the assigned data flow of Event (process instance started). Later, the e-mail address stored in the variable is used as input for subsequent notification functions, in order to provide the executing user with information about the status of the process.
A predefined variable named Business Status is available in the latest version of the Software AG Process Governance databases. This variable represents the current instance status of an executable process from a business point of view. This variable can be set to a certain localized value when modeling the data flow of an executable process. By default, the variable has an empty value. When the status of an instance changes semantically, for example, when a human task is assigned or completed, then the variable value can be set to a corresponding value reflecting the changed business status of the process instance.
This is the most common application of variables. The content (value) of the variables is shared by all activities of the currently active process instance. This variable can have a different value in each running process instance.
Example:
In variables of the String type, information on which user entered what comment while editing a task is constantly updated.
All activities in all instances of the currently active executable process share the
content (value) of these variables. If you specified the variable as .
You can specify that variables of String, Boolean, or Decimal type with the scope System or Process are externalized.
Example:
A counter that is incremented by one each time a process instance starts and decremented by one when a process instance terminates. The variable reflects the number of currently active process instances.
All functions in all executable processes and all their currently active instances share the content (value) of these variables. All activities can access this value directly.
If you specified the variable as .
You can specify that variables of String, Boolean, or Decimal type with the scope System or Process are externalized.
Example:
Host name or current time.