Mappings Overview
Mappings enable you to define the source and target of a single piece of information in a message.
You can view all mappings relating to a messaging relationship when viewing it from the Message Types tab. The mappings table displays all keys available to use for the message type and shows which are currently in use for the selected relationship.
You can create mappings in the following way:
- From a field on the source object to a field on the target object specified on the relationship
- From a field on objects that are related to the source object to a field on the target object
- From a field on the source object or a related object to a field on a child target object
- From static data contained in a message to a field on the target object or a child target object
This topic includes additional information about mapping across the messaging hierarchy. For details of how to add mappings to a messaging relationship, see the related topics.
Simple Mappings
Field mappings enable you to send data from fields on the source object or a related object to the target object.
Child Relationship Mappings
Child relationship mappings enable you to send data from an object that is a child of the source object to a child of the target object. To achieve this, you can create a child relationship, then add mappings to that relationship.
Parent Mappings
Parent mappings enable you to send information from a higher level in the mapping hierarchy to a child target.
Parent Source Type
In Foundations messaging, the parent source type enables you to create a field or advanced lookup mapping on a child relationship that provides data from a parent record. This option enables you to create a new key at the parent level to provide the source information for a target field on a child relationship. You can also optionally use the parent key to specify a target for a mapping at the parent level.
The new child mapping, with your specified target, is displayed in the relevant child relationship section. Parent is appended to the key and source in the child relationship section to indicate that the source is determined by a parent key in the hierarchy.
If a key with the same name already exists at the parent level, a number is shown at the end of the new key's name to ensure that it has a unique value. For example, if you create a child mapping called Company and a key with the same name exists at the parent level, your new mapping is saved as Company (1). We recommend that you define unique keys to avoid confusion with similar information within the hierarchy.
It is not possible to change the parent field on a parent mapping. If you need to change the source data for all mappings related to the parent, we recommend that you edit the source at the parent level. If you need to change the source data for a single child mapping only, we recommend that you delete the mapping and create a new one.
If you want to provide the same parent source on several child mappings in the same relationship, we recommend that you reuse the child mapping and provide a separate target child type. This ensures that you do not create duplicate source keys unnecessarily. For more information about target child types, see Splitting Source Data into Multiple Target Records.
Inherited Parent Mapping
If you create a new child mapping with the source type "None", the information is mapped from the closest key above the source in the hierarchy that contains a matching key. When a matching key is identified, Parent is appended to the key and source in the child relationship section to indicate that the source is determined by a parent key in the hierarchy.
Reusing Mappings
If the information sent for a specific key is relevant to more than one target field, you can reuse that key for another mapping.
Managed Mappings
You can add a custom mapping that contains a unique target field and condition, or for child relationship mappings, a unique target field, condition, and target child type. If a managed mapping exists with the same information, the custom mapping overrides it.
If an overridden managed mapping contains child mappings, these are rendered obsolete. If the overriding custom mapping is subsequently removed, the managed mapping and its children are automatically reinstated.
Overridden keys are displayed in the mappings table with the following information:
- (Overridden) indicates that the managed mapping has been overridden by a custom mapping.
- (Parent Overridden) indicates that a parent of the mapping has been overridden by a custom mapping.
Conditional Mappings
You can apply a condition to custom mappings to specify that you only want to update a target field based on specific information on the source. You can set a condition based on the value of any checkbox on the source record, including formulas of type checkbox. Target fields are updated by the message details when the checkbox on the source evaluates to true.
For example, your message contains address information, but you only want to update address fields if a checkbox called Requires Address is selected on the source record. The condition must be specified on each address field mapping that you want to add conditionally.
To set a condition on a child relationship mapping, use the child filter field. For more information, see Adding Mappings to a Messaging Relationship.