Source: https://vaultcrmhelp.veeva.com/doc/Content/CRM_topics/Multichannel/CLM/ConfiguringCLM/ManageFieldMapping.htm

## Managing Field Mappings Between Vault CRM and PromoMats/MedComms

* Object Model

To allow CLM content in PromoMats/MedComms to sync successfully to Vault CRM, content admins must ensure the fields for CLM are correctly mapped between the two systems. The field mappings are matched according to the external IDs specified for each field, so the external ID for a field must be the same in PromoMats/MedComms and Vault CRM to map correctly.

For example, if Surveys are used in CLM, the external IDs for PromoMats/MedComms Surveys (survey\_\_v) and Vault CRM Surveys (survey\_\_v) must match. All other Survey information is managed in Vault CRM (for example, Questions). If Directories are used for CLM, the external IDs for PromoMats/MedComms Directories (directory\_\_v) and Vault CRM Directories (directory\_\_v) must match.

**Who can use this feature?**

* Content Admin Users - Browser
* [Map fields between Vault CRM and PromoMats/MedComms](#Mapping)
* [Define custom field mappings](#Defining)
* [Handle errors](#Handling)
* PromoMats/MedComms Admin Users - Browser
* [Set up product records for mapping](#SetupProduct)
* [Set up detail groups for mapping](#SetupDetGrp)
* Users do not require an additional license

### Setting Up Product Records for Mapping as

[![Closed](../../../../../Skins/Default/Stylesheets/Images/transparent.gif)PromoMats/MedComms Admin Users](#)

To match the appropriate Product references from PromoMats/MedComms to the Product records in Vault CRM, the external IDs must be specified for both PromoMats/MedComms Products (product\_v) and Vault CRM Products (product\_\_v). These Products include detail products and detail topics.

Product External IDs can be set up in two ways:

* Scenario 1: Country is used
* In PromoMats/MedComms, External IDs need to be setup for Product and Country (i.e. Cholecap External ID = 1001 and France External ID = FR)
* In CRM the Product Veeva External ID needs to be: Cholecap Veeva External ID = 1001::FR
* Scenario 2: Country is not used
* In PromoMats/MedComms, External IDs need to be setup for Product (i.e. Cholecap External ID = 1001)
* In CRM, the Product Veeva External ID needs to be Cholecap Veeva External ID = 1001

See [Syncing Metadata Using the CRM Metadata Integration](../../../Getting_Started/CRMMetadataIntegration.htm) for more information.

### Setting Up Detail Groups for Mapping as

[![Closed](../../../../../Skins/Default/Stylesheets/Images/transparent.gif)PromoMats/MedComms Admin Users](#)

Detail Groups are disabled by default in PromoMats/MedComms. If Detail Groups are used in Vault CRM, Detail Groups must be enabled in PromoMats/MedComms.

To enable Detail Groups in PromoMats/MedComms, add the Detail Group picklist to the Multichannel Slide Document Type:

1. Navigate to **Admin > Configuration > Document Fields**.
2. Select **Multichannel Slide**.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/DetailGroup.png)
3. Select **Add**.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/DetailGroup2.png)
4. Select **Existing Shared Field**.
5. Select **Detail Group**.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/DetailGroup3.png)
6. Select **OK**.
7. Navigate to **Admin > Configuration > Field Layout > Property Layout**.
8. Select **Product Information** from the list.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/DetailGroup4.png)
9. Select **Edit** and order the fields so Detail Group is first.
10. Select **Save**.

To define Detail Groups in PromoMats/MedComms:

1. Navigate to **Business Admin > Picklists > Detail Group**.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/DetailGroup5.png)
2. Select **Edit** to add new Detail Groups. Do not delete the Common entry. This is required to map to the default Common group delivered in Vault CRM. The key of the picklist value in PromoMats/MedComms must be populated in the vexternal\_id\_\_v field on the Detail Group Product record. For example, the picklist value Neurology in PromoMats/MedComms creates the picklist key neurology\_\_c. This key should be entered in the vexternal\_id\_\_v field for the Neurology Detail Group record in Vault CRM.

### Mapping Fields Between Vault CRM and PromoMats/MedComms as

[![Closed](../../../../../Skins/Default/Stylesheets/Images/transparent.gif)Content Admin Users](#)

To map fields:

1. Navigate to **CRM Set > Content Setup > CLM**.
2. Select **View Mapped** in the Vault Connection Management section to review the fields involved in the CLM integration with PromoMats/MedComms.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/FieldMapping.png)
3. Select **Compare CRM to Vault** any time one of the following occurs:
   * Set up a new integration
   * Changes you want to reflect in Vault CRM are made to CRM Rendition Settings in PromoMats/MedComms
   * There are updates to the mapped fields, for example, adding a custom field

     Out-of-the-box PromoMats/MedComms fields cannot be mapped to custom Vault CRM fields.
4. Select the **Show Mapped** option from the CRM Fields drop-down list to view a condensed list of clm\_presentation\_\_v and key\_message\_\_v fields with a field match between Vault CRM and PromoMats/MedComms. The Show All option displays a full list of clm\_presentation\_\_v and key\_message\_\_v fields. Show Mapped is the default value.

The System CLM Fields section lists the core CLM fields for the clm\_presentation\_\_v and key\_message\_\_v objects. Certain fields do not have a PromoMats/MedComms field match but are still used in integration. Cannot Map displays in the Vault Field Label column for these fields. The Optional CLM Fields section lists custom fields as well as unrelated and/or depreciated fields for the clm\_presentation\_\_v and key\_message\_\_v objects.

When comparing Vault CRM to PromoMats/MedComms for a Single-Doc or All connection type, Vault CRM identifies the document types specified within the active CRM Rendition Settings in PromoMats/MedComms. This allows the integration to map fields available on any of the document types. The Vault Doc Type column displays which document types apply for system-mapped and optionally-mapped fields. The Vault field permission column lists field permissions with respect to Vault Doc Type display order. PromoMats/MedComms admins should ensure the appropriate multichannel fields are available on document types defined within the CRM Rendition Settings in PromoMats/MedComms. Refer to the [Vault documentation](https://commercial.veevavault.help/en/gr/41543/) for more information.

### Defining Custom Field Mappings as

[![Closed](../../../../../Skins/Default/Stylesheets/Images/transparent.gif)Content Admin Users](#)

Content admins can define custom mapping between Vault Object Framework (VOF) records and fields and Vault CRM fields. For example, you need to map a Country VOF lookup on a CLM document in PromoMats/MedComms to a custom text field on CLM records in Vault CRM.

To define a custom field mapping:

1. Select **Edit Mapping**.
2. Select the appropriate PromoMats/MedComms field from the **Vault Field Name** dropdown menu for the Vault CRM field you want to map.

   ![](../../../../Resources/Images/Multichannel/CLM/CLMConfig/FieldMapping2.png)
3. Select **Save Mapping**. Review eligible mappings to ensure they are correct.

By default, the integration maps fields between Vault CRM and PromoMats/MedComms with matching field names. Select **do not map** if the field names match between the PromoMats/MedComms and Vault CRM fields, but you do not want values from the PromoMats/MedComms field to be synced to Vault CRM. This is used when a mapping is no longer relevant to the integration, but the fields are still accessible in PromoMats/MedComms and Vault CRM. Select the blank entry if you do not want to make any other selection.

### Handling Errors as

[![Closed](../../../../../Skins/Default/Stylesheets/Images/transparent.gif)Content Admin Users](#)

The following table includes common field mapping errors and how to fix them:

| Error Message | Reason | Solution |
| --- | --- | --- |
| clm\_presentation\_\_v is missing access on following required fields:  OR  key\_message\_\_v is missing access on following required fields:  OR  clm\_presentation\_slide\_\_v is missing access on following required fields | There are required fields for the CLM-PromoMats/MedComms integration. If the CRM Integration User does not have access to any one of these fields, the integration fails. The integration generates an error message identifying the <objectname> and <fieldnames>. | Before syncing, enable field permissions to the integration fields for the CRM Integration User. |
| INVALID\_FIELD: Please update the mappings  OR  INVALID\_FIELD\_FOR\_INSERT\_UPDATE error message | The field mapping was not updated after the CRM Integration User lost access to one of the fields. | Select Compare CRM to Vault on the mapping table, then retry the sync. |
| Failed to upsert [N] records into SF DB, status code: INVALID\_FIELD error message: Foreign key external ID: [Vault Directory External Id] not found for field external\_id\_\_v in entity directory\_\_v | The Directory referenced by CLM content in PromoMats/MedComms does not have a match in CRM. | Create a Directory in CRM if one does not exist. Ensure the values for the external\_id\_\_v in CRM and external\_id\_\_v in PromoMats/MedComms match. |
| Failed to upsert [N] records into SF DB, status code: INVALID\_FIELD error message: Foreign key external ID: [Vault Survey External Id] not found for field External\_ID\_\_v in entity Survey\_\_v | The Survey referenced by CLM content in PromoMats/MedComms does not have a match in CRM. | Create a Survey in CRM if one does not exist. Ensure the values for the external\_id\_\_v in CRM and external\_id\_\_v in PromoMats/MedComms match. |
| Failed to upsert [N] records into SF DB, status code: INVALID\_FIELD error message: Foreign key external ID: [Vault Product External Id] not found for field VExternal\_Id\_\_v in entity Product\_\_v | The Product referenced by CLM content in PromoMats/MedComms does not have a match in CRM. | Create a Product in CRM if one does not exist. Ensure the values for the external\_id\_\_v in CRM and external\_id\_\_v in PromoMats/MedComms match. |
| Failed to upsert [N] records into SF DB, status code: INVALID\_FIELD error message: Foreign key external ID: [Vault Detail Group Picklist Key] not found for field VExternal\_Id\_\_v in entity Product\_\_v | The Detail Group referenced by CLM content in PromoMats/MedComms does not have a match in CRM. | Create a Detail Group in CRM if one does not exist. Ensure the values for the external\_id\_\_v in CRM and external\_id\_\_v in PromoMats/MedComms match. |
| Failed to upsert [N] records into SF DB, status code: DUPLICATE\_VALUE error message: duplicate value found: presentation\_id\_\_v duplicates value on record with id: [CLM Presentation Id] | The field presentation\_id\_\_v cannot be unique. | Remove the unique condition on presentation\_id\_\_v. |
| Failed to upsert [N] records into SF DB, status code: DUPLICATE\_VALUE error message: duplicate value found: media\_file\_name\_\_v duplicates value on record with id: [Key Message Id] | The field media\_file\_name\_v cannot be unique. | Remove the unique condition on media\_file\_name\_\_v. |
| Shared Resource flag is not set to Yes | In PromoMats/MedComms, the slide is referenced but not defined as a Shared Resource. | Set Shared Resource to Yes for the slide that is supposed to be the Shared Resource or delete the Shared Resource relationship if it is not correct. |
| Distribution record version does not match with doc id XXXXX | The version of the distribution record is older than the version of the associated document. | Select the appropriate value for the CRM Media Type field for the document in Vault. This field must be populated correctly. For example, for a PNG or JPG file, the CRM Media Type must be Image.  If the error persists, manually upload the distribution package in Vault for the erring document version. See [Manually Uploading Distribution Packages](https://commercial.veevavault.help/en/gr/25892/) for more information. |

There is the potential for incomplete data because of mismatched field lengths or ability to select multiple VOFs in PromoMats/MedComms. If the Vault CRM field character length is less than the PromoMats/MedComms character length, and/or if Allow user to select multiple values is true on the VOF, then a warning icon displays next to the Vault Field Type.

The warning indicates a potential for truncation if the PromoMats/MedComms field length exceeds the Vault CRM field length. For example, if a PromoMats/MedComms field supports up to 25 characters and is mapped to a Vault CRM field that supports only 20 characters, the warning icon displays. If the PromoMats/MedComms field contains a 25-character value, only the first 20 characters are inserted into the Vault CRM field when the sync runs.

In Vault CRM, the cdn\_path\_\_v field on the key\_message\_\_v object is limited to 255 characters. If the CDN file path for a key message containing a long file name exceeds 255 characters, the file path is truncated when the content is synced from PromoMats/MedComms, which causes errors when end users present content.

| Field Type | Characters |
| --- | --- |
| Vault Picklist | 128 |
| VOF Name | 128 |
| VOF Id | 128 |
| Vault CRM Picklist | 255 |
| Vault CRM Multi-select Picklist | 40 |
| Vault Text | =<1000 |
| Vault CRM Text Area | =<255 |
| Vault CRM Text | =<132,000 |

### Related Topics

[Configuring CLM as Object Model](CLMBasicConfig.htm)

[Managing CLM Syncs in the CLM Administration Console](ManageCLMSync.htm)

[Using Auto-Publishing for CLM](AutoPublishing.htm)
