This "how-to-connect" documentation will explain the initial configuration of an example connection from Microsoft Dynamics CRM to a SharePoint Online List in Office 365 using OData. We will be synchronizing data stored in Microsoft Dynamics CRM.
This guide presupposes that you have installed the Layer2 Cloud Connector and that you are familiar with its basic functionality. The Layer2 Cloud Connector User Documentation will provide you with all the necessary information.
1. Configuring Microsoft Dynamics CRM
To connect to Microsoft Dynamics CRM using OData you only need the URL to your Microsoft Dynamics CRM and a user e-mail with the rights to access the application. The URL needs the company name and the region where you are in. We are using the crm4. You can read more about it here.
You also need the endpoint from the API you want to connect to. We are using the account endpoint. For more information about the endpoints, use the API reference.
An example URL of what it should look like: https://yourcompany.crm4.dynamics.com/api/data/v9.0/endpoint
2. Configuring the Layer2 Cloud Connector
2.1. Creating a new connection
Create a new connection by using the Create New Connection option in the Actions pane (right-hand side). The new connection will appear at the bottom of the Connection Manager List (left-hand side). Click on your newly created connection to open the connection configuration settings.
Choose a meaningful name for your connection and replace the current "New Connection" Connection Title with it.
Connections to Microsoft Dynamics CRM can be bi-directional. An initial connection should always be uni-directional to assure that both data entities are identical before switching to bi-directional. Therefore, choose Left to Right as Direction. You can change this setting after your initial synchronization finished successfully.
2.2. Configuring the Data Entity 1
We will now set up our Data Entities. Go to the data entity “Data Entity 1” to open the configuration settings.
Choose a Data Entity Title. It is recommended to give your entities meaningful names to maintain an overview when you decide to set up multiple connections.
Select the Data Provider for OData from the data provider list. You can search for OData by typing into the selection box.
For the Connection String, we need the information mentioned in step 1. You can copy the below connection string and adjust it to match your gathered information. Use the Verify Connection String option to evaluate if the provided connection string is valid.
- "URL=https://yourcompany.region.dynamics.com/api/data/v9.0/endpoint;" this property must point to a valid Microsoft Dynamics CRM URL.
- "Authentication=microsoft_modern_crm;" this property defines the authentication method.
- "[email protected];" this property must be set to a user e-mail with rights to access the application.
Enter the user account's password into the Password field. The field masks the value for better security.
The Select Statement text box is used to define specific data queries. We will be gathering all top 5 results from our accounts endpoint. You can copy the below select statement and adjust it to match your needs. Save your changes by using the right-hand pane option Save Changes.
To check if all necessary columns are received, you can use the Preview Data option on the right-hand pane which will provide you with a pop-up window showing your sample data from your Microsoft Dynamics CRM entity.
2.3. Configuring the Data Entity 2
We are going to send the data to a custom SharePoint Online list. It's required that you set up this list before the next steps. Your list should contain matching columns according to your source entity.
Use the left-hand pane to switch to the data entity "Data Entity 2". We will be using the Layer2 SharePoint Provider for this setup.
For more information about the SharePoint provider visit:
You can copy the below Connection String which contains the minimum of required properties to connect to your custom SharePoint Online list.
- "URL=https://your_custom_sharepoint_url/AllItems.aspx;" this property defines the URL of your custom list that will be addressed.
- "Authentication=Office365;" this property will determine the authentication method used. Office 365 is the default authentication method to access Microsoft Office 365 / SharePoint Online. This method will not work in the case of federation, e.g. ADFS. For further authentication methods, you can consult the provider specifications linked above.
- "[email protected];" this property should describe the user you wish to connect to SharePoint with.
Enter the password that belongs to the user account used in the connection string into the Password field. Save your changes by using the right-hand pane option Save Changes.
In the next step, we will configure our mapping settings. Click on the Mappings option on the left-hand pane. If your fields from SharePoint are named identical to the fields from your source system, the Enable Auto Mapping option will match those columns. Disabling this option allows you to match your columns as needed. We enabled auto-mapping in our setup. Save your changes by using the right-hand pane option Save Changes.
2.4. Running your connection
To run your connection switch back to the main connection configuration node and use the Run Now Button located at the bottom of the setup page. The Run Synchronization Toolbox will also display the synchronization process.
Below is a data preview of the information we have access to our source entity:
This will be the result in our SharePoint Online list after our initial successful synchronization:
If you want to use a bi-directional synchronization, you can now switch your connection direction after our first initial synchronization run is finished successfully. See section 3.1 for further information.
3. Hints and known issues
3.1. Connection direction
As far as tested, this connection supports uni-directional as well as bi-directional synchronizations.
After adjusting the direction to bi-directional, you should check your Mappings settings again because some systems might include read-only columns that cannot be mapped directly.
We also recommend choosing a Conflict Resolution that matches your environment`s needs. You can find out more about the different conflict resolutions in our Layer2 Cloud Connector User Documentation.
3.2. Filters and queries
If you insert new items in the CRM in some cases GUIDs must be provided. You can use the Cloud Connector replication key settings to generate these GUIDs automatically. For example, to provide an accountId, set this name to the replication key settings of the data entity.