Field Mapping Rules

Mapping rules define which Dynamics 365 metadata are used to fill the Coveo index fields for each item. By default, Dynamics 365 fields are automatically mapped to matching fields in the Coveo Cloud index, so you do not have to set those manually. You can edit the mappings for two fields, namely Title and Body, which are used when displaying search results, generating the excerpt and using the Quick View.

Mapping rule schema

Title and Body Mapping

You can edit the mapping of the Title and Body fields directly in the Sources page (see Sources). Default values exist for the Title field so one is included in search results even if you do not set any mappings manually. You can change the default settings to populate the Coveo index field with another value from a different Dynamics field or concatenate the values of two or more fields. The content included in these two fields is free text searchable, so if any word in those fields matches your query, the item shows up in the result list and the queried words are highlighted.

Since the Dynamics crawler adds the prefix dy to all Dynamics fields, you must remove this prefix before using the Coveo mapped field name in the mapping syntax (see Field Mapping Between Dynamics 365 and Coveo Cloud). Mapped field names (name given when the field is created in the Coveo Cloud administration console) are displayed in the properties of an item (see Review Item Properties).

Your Dynamics 365 organization contains the following Contact record:

You want the title of the index item to look like this: Rene Valdes, Purchasing Assistant. To do so, you enter the following in Title mapping for the Contact entity:

You also want the body of the item to show the description of your contact. To do so, you enter the following in Body mapping for the Contact entity:

The Coveo Cloud source retrieves all the appropriate fields and populates the index fields. When you search a contact, the search page displays the content as follows:

And the Quick View of the contact looks like this:

Field Mapping Between Dynamics 365 and Coveo Cloud

Coveo Cloud does not index fields from Dynamics 365 directly and they go through a renaming process to make sure that there is no conflict between indexed Dynamics fields names and the ones from the Coveo index. Field names as Name, Description, ID are very common and without a way to identify the source of the field, the index could not differentiate between Coveo fields and Dynamics fields, thus the risk of conflict.

  • The Dynamics crawler adds the prefix dy to all Dynamics fields.

    [dy]+[fieldName]dyfieldName

  • When indexing relationships fields, the crawler prefixes the field with the relationship alias, then with dy.

    [dy]+[alias]+.+[fieldName]dyaliasfieldName

  • Special characters are not allowed in fields name so the crawler removes them before the indexing.

    dyaddress1_citydyadress1city

  • The Dynamics field objecttype is set to the value of the field filetype which contains the name of the corresponding entity. The field filetype is then mapped to the Coveo field dynamicscrmitem.