How to connect Salesforce with SharePoint

This "how-to-connect" documentation will explain the initial configuration of an example connection from Salesforce to a SharePoint Online List in Office 365. We will be synchronizing data stored in Salesforce.

 

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 necessary information.

 

 

Contents

1. Configuring Salesforce

2. Configuring the Layer2 Cloud Connector

2.1 Creating a new connection

2.2 Configuring the Data Entity 1

2.3 Configuring the Data Entity 2

2.4 Running your connection

3. Hints and known issues

3.1 Data model

3.2 Column not found

3.3 Error [HY000]

3.4 Api enabled

 

 

1. Configuring Salesforce

Go to your Salesforce account and into Settings:

Salesforce settings

 

Open My Personal Information and Reset My Security Token to create a new token. Copy this value.

 

Salesforce token

 

Go to https://www.progress.com/odbc/salesforce download and install the ODBC driver for your system. Check if you need the 32 or the 64 version first. After you installed the driver, open the ODBC Data Source Administrator (press the Windows key and start typing "ODBC") and add a new User DSN:

 

Salesforce new data source progress

 

 

Note the name of the driver in this window. Open the created data source and set the parameters in the General tab as showed:

 

 

Salesforce new data source settings

 

Open the Security tab and enter your email account from Salesforce. Paste the generated security token into the designed field.

 

Salesforce new data source security

 

 

Finalize the settings with the OK button. 

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 Salesforce 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 synchronisation finished successfully.

 

Step 1 Salesforce connection setup

 

 

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 .Net Framework Data Provider for Odbc from the data provider list. You can search for Odbc by typing into the selection box.

 

Step 2 Salesforce integration source setup

 

For the Connection String, we need the in step 1 mentioned information. 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.

 

 

DRIVER=(DataDirect 7.1 Salesforce);UID=[email protected];

 

 

  • "DRIVER" this property points to the installed driver to be used. This is the name of the driver we installed and copied in the section 1. Please note that the version number can be different, depending on the version your provider uses.
  • "UID" this property defines the user account in Salesforce.

 

Enter the user token as the 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 the contacts from the Contact table. 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.

 

SELECT * FROM CONTACT

 

Step 2.5 Salesforce integration connection string setup

 

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 Salesforce entity.

 

 

Preview data of Salesforce integration

 

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 prior to 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:

https://www.layer2solutions.com/support/cloud-connector-faqs/layer2-csom-sharepoint-ado-net-provider.

 

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_list_url/AllItems.aspx;Authentication=Microsoft_Modern;

 

  • "URL=https://your_custom_sharepoint_url/AllItems.aspx;" this property defines the URL of your custom list that will be addressed.
  • "Authentication=Microsoft_Modern;" this property will determine the authentication method used. Microsoft_Modern is the default authentication method to access Microsoft Office 365 / SharePoint Online and should work in most cases, even if the SharePoint site is connected to an ADFS. This authentication does not need any further connection string settings, other than the URL of the connected system.

 

Save your changes by using the right-hand pane option Save Changes.

 

Step 3 Salesforce integration target setup

 

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.

 

Step 4 Salesforce integration mapping

 

2.4. Running your connection

To run your connection switch back to the main connection configuration node and use the Run Now Button located on the bottom of the setup page. The Run Synchronization Toolbox will also display the synchronization process. 

 

Step 5 Salesforce data integration start

 

Below is a data preview of the information we have accessed in our source entity:

 

Salesforce integration ready

 

This will be the result in our SharePoint Online list after our initial successful synchronization:

 

Finished Salesforce integration

 

If you want to use a bi-directional syncronization, you can now switch your connection directon after our first initial synchronization run 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 to choose a Conflict Resolution that matches your environments needs. You can find out more about the different conflict resolutions in our Layer2 Cloud Connector User Documentation.

 

3.2 Column not found

The Data Direct provider from Progress caches the schema for the Saleforce fields. After adding a new field, you may not be able to find it with the select statement (error [42S22] Column Not Found in Statement) as the cache is stale. To update it, go to the ODBC driver settings on the host machine, click on the Advanced tab, and check the box for the option "Refresh Schema". Save the DSN and try to access the data again. The schema should refresh and the column will be available.

3.3 Error [HY000]

The Data Direct provider from Progress has some odd behavior regarding using "Select *" for the select statement in a connection that writes TO SalesForce. It will throw an error "[HY000]...Unable to create/update fields", unless you specifically select which fields you want to pull in the table.

3.4 Api enabled

Not all versions of Salesforce have the API functionality available. If you are using a version that doesn't have it available, then you will get an error "API_DISABLED_FOR_ORG". Please see Salesforce Help's document Enabling API for more information on which versions have the API functionality and what to do if you need it enabled.

 

 


Search for more data integration & synchronization solutions

Icon of Contact us - Chat - Layer2 leading solutions

Questions?

Contact us directly to discuss your specific requirements, help you with purchasing, or with any other questions.

 

Icon for Layer2 Solutions Finder- Layer2 leading solutions

About the Layer2 Cloud Connector

Get more information about the Layer2 Cloud Connector on the product page.

 

 

Icon for Layer2 Solutions Finder- Layer2 leading solutions

Try it out for 15 days

Get a free trial of the Layer2 Cloud Connector after a short registration.