About Linking Variables
When you want to copy the value of a variable in a service or document format to another variable, you link the variables. Designer connects service and pipeline variables in the Pipeline view with a line called a link. Creating a link between variables copies the value from one variable to another at run time.
Within a flow, Designer implicitly links variables whose names are the same and whose data types are compatible. For example, the service in the following flow takes a variable called AcctNumber. Because a variable by this name already exists in Pipeline In, it is automatically linked to the AcctNumber variable in Service In. Designer connects implicitly linked variables with a gray link.
Figure 54. Implicit links between pipeline and service variables
Note:
The Pipeline view does not display implicit links for a MAP step.
In cases where the services in a flow do not use the same names for a piece of information, use the Pipeline view to explicitly link the variables to each other. Explicit linking is how you accomplish name and structure transformations required in a flow. Designer connects explicitly linked variables with a solid black line.
On the input side of the Pipeline view, use
to link a variable from the pipeline to the service. In the following example, the service expects a value called
OrderTotal, which is equivalent to the pipeline variable
BuyersTotal (that is, they are simply different names for the same data). To use the value of
BuyersTotal as the value for
OrderTotal, you “link” the pipeline variable to the service using
.
At run time, the server will copy the value from the source variable (BuyersTotal) to the target variable (OrderTotal) before executing the service.
Figure 55. Linking the pipeline to service input
Important:
Do not link variables with different Object constraints. If you link variables with different Object constraints and input/output validation is selected, the run-time result is undefined.
All the output variables that a service produces are automatically placed in the pipeline. Just as you can link variables from the Pipeline In stage to a service’s input variables, you can link the output from a service to a different variable in Pipeline Out.
In the following example, a variable called TransNumber is linked to the field Num in a Document called TransactionRecord. At run time, the server will copy the value of TransNumber to Num, and both TransNumber and Num will be available to subsequent services in the flow.
Figure 56. Linking service output to the pipeline