All variables must be initialized before use. A variable, or part of a variable, can be initialized in several ways, including receiving a message in an activity, assigning data in an assign or input mapping, or adding an initial value to the variable definition.
Variables in
receive
,
onMessage
,
onEvent
, and
inbound
invoke activities are automatically initialized. You can initialize other process variables when you declare them. Doing so allows you to skip an assign activity that would initialize a variable.
The initial value of a variable is validated against the schema or WSDL definition during process execution. You can also validate the variable by adding it to a validate activity. For details, see
Validating Variables
.
To add an initial value to a variable:
Add a new process variable, as described in
Adding a Variable
.
From the Outline or Process Variables View, select a variable.
In the Properties view, select the
Dialog (...)
) Button next to
Initial Value.
In the
Variable Initialization
dialog, select the details for assigning a value to the variable. The selections are the same as those in the
From
side of a copy operation. For explanations of the
From Type
and related attributes, see
Assign
.
For a variable that is declared in a scope that contains a start activity, such as a Receive, you must not initialize the variable with a value that can change, such as a date-time function. This restriction allows for a pre-computed value for all process instances.