Profile in target structure (sub profile)
Important note: We generally recommend using sub-profiles in the source structure (newer concept). See section Profile in source structure (sub profile).
You can use the context menu on a node of the target structure to insert an existing profile as a subnode in the target structure.
Requirements for a profile to be added (if with time-driven Input Agent)
The mapping is active (and the profile itself).
The profile uses the Integration Unit PrepareDataForCallingProfile in phase 5.
It has a Response of type "Custom Class" with class PassBackBinaryDataResponse (with the content set to "Output of IU"). Important note: The class must be executed in the last Response, otherwise the function “call sub profile ()” (see below) will generate an error.
The options "Enter output channels for each record and Incorporate IU" must not be set.
Requirements for a profile to be added (if without time-driven Input Agent)
The mapping is active (and the profile itself).
The profile uses the Integration Unit PrepareDataForCallingProfile or XMLNoTemplateUnit or JsonCreationUnit in phase 5.
(Note: Internally, the following steps are performed to get an analogous behaviour to the first case. The profile is cloned, the Integration Unit PrepareDataForCallingProfile is set, parameter "Starting node" is filled with the starting node of the originally set Integration Unit and, if necessary, the Response class PassBackBinaryDataResponse is appended. After the call, the clone is discarded.)
Adding a profile
Let us assume we have a profile named Contacts that meets all the requirements above. This profile has the following target structure.
Important note: You can only add one profile per node!
Please do not forget to specify the starting node of profile Contacts in its Integration Unit (1). The (partial) structure starting from this node will be added later.
We now want to add profile Contacts as a subnode in the following target structure.
The result looks like this. Please pay attention to the automatically set functions. Except for one spot, you normally do not have to touch these functions.
(2) Here the function call sub profile () is called. Parameter a specifies the name of the added profile. You can use parameter b to start the time-driven Input Agent of the added profile (if available), otherwise, you have to explicitly specify the input data for the added profile in parameter c.
(3) Here the function extract result data of sub profile(nodename a) is used to link to the node of the added profile (theoretically you could rename the node here). So Contact_details-> Contact_details.
(4) Here the function extract result data of sub profile(field a) is used to link to the respective fields of the added profile (theoretically you could rename the fields here). So Landline-> Landline, Mobile -> Mobile and Email -> Email.
Note on mappings with added profiles
As shown in section Mapping - Filling a record of the target tree, data is filled into the target tree from top to bottom. Although this also applies to the entire subnode that is added here, all the data within the subnode is instantly available. So you could already access the value of field Email in field Landline, to stay in our example.
Passed variables
All variables are passed as MSG_CALL_ variables (just like in Responses of type "Message").