Adding Profile as Subnode in Target Structure
Introduction: You can find a description of this phase in section Phase 3 (Introduction).
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 Route of type Custom Class with class PassBackBinaryDataResponse (with the Content set to Output of IU).
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 Route 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.
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 (a,b,c) 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 about 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 Response Routes of type Message).