Microsoft Dynamics CRM Connector

Installation and Configuration

Copyright ©

Mindbreeze GmbH, A-4020 Linz, 2018.

All rights reserved. All hardware and software names used are brand names and/or trademarks of their respective manufacturers.

These documents are strictly confidential. The submission and presentation of these documents does not confer any rights to our software, our services and service outcomes, or any other protected rights. The dissemination, publication, or reproduction hereof is prohibited.

For ease of readability, gender differentiation has been waived. Corresponding terms and definitions apply within the meaning and intent of the equal treatment principle for both sexes.

InstallationPermanent link for this heading

Before installing the Microsoft Dynamics CRM connector, make sure to verify that the Mindbreeze server is already installed and that this connector is also included in the Mindbreeze license.

Installation of the connector pluginPermanent link for this heading

The Microsoft Dynamics CRM connector is available as a ZIP file. This file must be registered as follows in the Mindbreeze server via the management UI or mesextension.exe REST client:

mesextension --interface=plugin --type=archive --file= MicrosoftCrmConnector-<version>.zip install

PLEASE NOTE: A re-installation can also update the connector.

Uninstalling the connector pluginPermanent link for this heading

To uninstall the Microsoft Dynamics CRM connector, first delete all instances in the configuration and then remove the plugin via the management UI or execute the following command:

mesextension --interface=plugin --type=archive --file= MicrosoftCrmConnector-<version>.zip uninstall

Creating and testing a crawler accountPermanent link for this heading

Create a new account for Microsoft Dynamics CRM. This account must have the required read access rights for all data relevant for crawling in the CRM. A read-only administrator account is best suited for this purpose.

Then test the account by logging in to your Microsoft Dynamics CRM and checking whether you can see all the data relevant for crawling.

Configuring MindbreezePermanent link for this heading

IndexPermanent link for this heading

Click the “Indices” tab and then click the “Add new index” icon to create a new index (optional).

Enter the index path. If necessary, adjust the display name of the index service and the associated filter service.

Next, activate the “Advanced Settings”.

The following “Dynamic Constraints have to be configured:

Dynamic Constraint Source Expr


Dynamic Constraint Pattern

NOT categoryclass:systemuser

Dynamic Constraint Static Fraction

NOT categoryclass:systemuser

Data sourcePermanent link for this heading

Set-upPermanent link for this heading

Add a new data source with the “Add new custom source” icon (located at the bottom right).

PLEASE NOTE: In this version of the Microsoft Dynamics CRM connector, the indexed documents do not contain ACLs; this means that the CRM authorizations are not shown. For this reason, the connector can only be used if the data source is configured in such a way that everyone has access to it by default.

The “Advanced Settings” must first be activated.

Activate the “Unrestricted Public Access” option. You can then deactivate the “Advanced Settings” option.

CredentialsPermanent link for this heading

For the next step, you’ll need the login information from chapter 2, “Creating and Testing a Crawler Account”.

Enter the user name in the “Username” field and your password in the “Password” field.

Note: Your CRM must be configured to run the registrations via AD FS (Active Directory Federation Services).

URLsPermanent link for this heading

Now enter the URL for your CRM in the “CRM URL” field.

You can disregard the “Organization Service URL” field if you have not changed the URL to the “Organization SOAP Service” of your Microsoft Dynamics CRM instance.

SourcesPermanent link for this heading

For the final step, specify which parts of your CRM should be indexed in Mindbreeze InSpire.

First, go to the entity settings of your CRM. The entity name of the relevant entity from Microsoft Dynamics CRM is required to index all entities of a particular entity type from Microsoft Dynamics CRM in Mindbreeze InSpire.

The following screenshot shows the configuration of the entity type “Opportunity” in Microsoft Dynamics CRM. In this example, all sales opportunities (blue-bordered in the screenshot) are to be indexed; the Microsoft Dynamics CRM connector requires the internal name of the entity type (name "opportunity", red-bordered in the screenshot).

In addition, the internal name of the main field is required for the configuration of the connector (red-bordered in the following screenshot).

Navigate back to the data source settings in Mindbreeze InSpire and enter all the entity types you want to index in the “Entity Types” field, separated by a line break. If you want to index all sales opportunities, enter the value “opportunity” in a new line in the field “Entity Types”.

For each entity type entered, the main field must be entered in the “Primary Name Attributes” field. The first line of “Entity Types” is linked to the first line of “Primary Name Attributes”; the second line of “Entity Types” is linked to the second line of “Primary Name Attributes” and so on. Since “opportunity” is written in the last line of the field “Entity Types” in this example, the corresponding main field “Name” must be placed in the last line of the field “Primary Name Attributes”.


Synthesized metadataPermanent link for this heading

In Microsoft Dynamics CRM, entities are often related to other entities (frequently also to entities with a different entity type). In order to display attributes of the linked entity in the search client, synthesized metadata” needs to be configured. To do this, the “Advanced Settings” must be activated first.

Click the “Add Composite Property” icon and assign a name for the referenced attribute in the “Name” field.

The link is created in the “Property Expression” field using the following pattern:
mscrm_<foreign key attribute>/mscrm_<attribute in the referenced entity>.

In “categoryDescriptor.xml”, the name (“mscrm_parentcustomer_name” in the screenshot) can then be used as the metadata date ID.

Must-Have synthesized metadataPermanent link for this heading

The following synthesized metadata definitions have to be configured, as they are used in the “categoryDescriptor.xml” which is included in the standard delivery:

Name: mscrm_parentaccount_name
Property expression: mscrm_parentaccountid/mscrm_name

Name: mscrm_owninguser_fullname
Property expression: mscrm_owninguser/mscrm_fullname

Name: mscrm_parentcustomer_name
Property expression: mscrm_parentcustomerid/mscrm_name