Transfer Data Between Components of Imported Projects

This topic explains how to transfer complex variable data from between imported projects in a central project when using the recommended solution architecture.

The recommended solution architecture involves importing multiple feature projects into a central project that is responsible for initiating and coordinating the processes automated by the feature projects.

In many cases, the output of a solution component of one imported project is needed as an input to a solution component of another imported project.

In the example below, the Get Address workflow of one feature project outputs an address, while the Send Welcome Letter workflow of another feature project requires the address as an input. The central project is responsible for:

  • Starting the Get Address workflow

  • Forwarding the address received to the Send Welcome Letter workflow

  • Starting the Send Welcome Letter workflow

Because all workflows involved need to use a variable of user-defined type Address, that user-defined type is created in the Resource Repository project which is imported into both feature projects and the central project.

The Resource Repository project also includes a user-defined function Verify ZIP Code that verifies that the customer's ZIP code is valid for their address. This function may be used by the Get Address workflow and by workflows in other solutions that use the same resource repository.

Automation Studio does not support the transfer of complex variables between workflows: A workflow cannot produce an output of a complex type (such as Address) or accept a variable of a complex type as an input.

The recommended approach is to convert the complex variable to be output to a JSON text string. That JSON text string can then be accepted as an input by the next workflow, which can convert the string back into a complex variable. For a demonstration of this process, see Transfer Complex Variable Data Between Solutions.