Master Data Management
Master Data Management (MDM) solutions ensure data is consistent and accurate within . supports integrating MDMs with Veeva Network, Veeva CRM, and custom account search handlers. Visit the Account Search page for more information.
MDM Connection
The MDM Connection (MED_MDM_Connection__mdt) custom metadata type
houses configuration to be leveraged when communicating with a given
Veeva Network instance, Veeva CRM, and custom account search handlers.
Items contained within an entry include items like authentication
credentials in addition to field mappings to receive and route data
elements from inbound Accounts returned via Account Searches in addition
to data change request (DCR) synchronization.
Note: To get help with details on individual field values, visit How to Contact Customer Support.
Default Mapping
Mappings defined on Default instances can work in conjunction with the other MDM Connection type. In cases where multiple types are present and there are overlapping configurations, non-default entries take precedence over the default entry. If this field is checked only one connection will be set as default mapping.
Named credentials
In cases where remote MDM instances are being leveraged, named credentials are required to facilitate the integration.
Segment
The Segment (MED_Segment__c) field is a required configuration links
to the metadata record that controls where this connection configuration
applies.
Handler Class
The Handler Class (MED_Handler_Class__c) field indicates what MDM
Search Handler can use this type. It is a required field and must be one
of the class names from the Configuring the Account Search feature
section on the Account
Search page (or your organization's custom class
name).
Define MDM Field Mappings
Access the MDM Field Mapping custom metadata type and review any existing entries that are present, making the necessary changes required to match your integration requirements.
Field mappings can be against the Default instance type, which will apply to all Veeva Network instances, or a specific instance if only certain fields should be mapped to a specific instance. The overall mapping set used for any given Veeva Network instance is the combination of the Default mapping and the specific remote instance being connected to. Specific instance mappings will override any overlapping configurations made at the default level.
MDM Field Mapping (MED_MDM_Field_Mapping__mdt) Custom Metadata Type
| Field | Description | Required (Yes/No) |
|---|---|---|
| Label | The label for the field to which you are mapping. | Yes |
| MDM Connection | MDM Connection where this mapping is used. | Yes |
| MDM Field Mapping Name | The unique name used by the API and managed packages. The name must begin with a letter and use only alphanumeric characters and underscores. The name cannot end with an underscore or have two consecutive underscores. | Yes |
| SObject API Name | SObject API Name where this field mapping will be used. | Yes |
| Record Type | Record Type of the SObject where it is possible to use this field mapping. "All" applies for any Record Type. | Yes |
| SF Field Name | Salesforce field API name of the field in Salesforce that is being mapped. | Yes |
| MDM Field Name | Indicates the name of the field returned by the MDM service to be used in the mapping. | Yes |
| MDM Field Type | Provide the field type for the MDM Field. Used to properly handle building queries and parsing results. If not provided, assumes String. | No |
Define MDM Value Mappings
In addition to the field mappings available to route inbound fields to local fields, there exists the ability to map, or convert values within fields with values contained in . To configure value maps for the search handler, use the MDM Value Mapping custom metadata type to specify if a value must be converted to a specific value for the correct functionality. It is highly recommended for picklist values such as countries or states. This MDM Value Mapping will be related to just one MDM Field Mapping for a specific field search handler.
MDM Value Mappings can also be specified as only inbound (from the Veeva Network to Account/Contact Information) or outbound (from the Account/Contact Information, to the remote MDM system).
MDM Value Mappings (MED_MDM_Value_Mapping__mdt) Custom Metadata Type
| Field | Description | Required (Yes/No) |
|---|---|---|
| Label | The label of the field to which you want to map. | Yes |
| MDM Field Mapping | Use the lookup to search for a MDM Field Mapping. | Yes |
| MDM Value Mapping Name | The unique name used by the API and managed packages. The name must begin with a letter and use only alphanumeric characters and underscores. The name cannot end with an underscore or have two consecutive underscores. | Yes |
| Inbound | If checked, means that the value mapping will be applied inbound (CMS > MDM). :::: note ::: title ::: This value is checked by default. :::: | |
| Outbound | If checked, means that the value mapping will be applied outbound (MIC > MDM). :::: note ::: title ::: This value is checked by default. :::: | |
| Salesforce value | The value to be used in Salesforce and stored (inbound) or converted (outbound). | Yes |
| MDM Value | The value to be used in the MDM System and stored (outbound) or converted (inbound). | Yes |
Configuration considerations
Important points to consider when leveraging MDMs are as follows:
-
If the remote MDM, like Veeva Network, does merge, a custom integration will need to be built to proactively update merged accounts in to prevent issues during account search and MIRF processing.
-
If a custom integration is not built to proactively update merged accounts:
-
When selecting an account during account search, a Salesforce Unexpected Error or an
unable to reparent a master-detail relationshiperror might be thrown. -
When creating Cases or Requests for Inbound Forms, an
MED_CreateRequestsForInboundForms failed with an Unknown Exceptionerror might be thrown with an error ID ofunable to reparent a master-detail relationship.
-
Troubleshooting MDMs
To resolve issues that stemmed from not proactively updating merged accounts when leveraging a remote system, try the following steps to manually merge accounts in :
-
Gather all address IDs from the MDM system for the failed accounts.
-
Search for the address IDs in . If the accounts exist on Contact Information records, check if the parent accounts match the ID from the MDM system.
-
Correct the address IDs by manually updating the data or merging in .
-
Click Re-run to run Case create for the Inbound Forms once more.