Skip to content

Commit 7c9b4dc

Browse files
committed
Update TSG
1 parent 102c016 commit 7c9b4dc

File tree

5 files changed

+78
-57
lines changed

5 files changed

+78
-57
lines changed

articles/data-factory/TOC.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -562,8 +562,6 @@ items:
562562
href: connector-salesforce.md
563563
- name: Salesforce (legacy)
564564
href: connector-salesforce-legacy.md
565-
- name: How to configure Salesforce connected App
566-
href: configure-salesforce-connected-app.md
567565
- name: Salesforce Service Cloud
568566
href: connector-salesforce-service-cloud.md
569567
items:
@@ -1252,6 +1250,9 @@ items:
12521250
- name: REST
12531251
href: connector-troubleshoot-rest.md
12541252
displayName: troubleshooting
1253+
- name: Salesforce and Salesforce Service Cloud
1254+
href: connector-troubleshoot-salesforce.md
1255+
displayName: troubleshooting
12551256
- name: SAP Table, SAP Business Warehouse Open Hub, and SAP ODP
12561257
href: connector-troubleshoot-sap.md
12571258
displayName: troubleshooting

articles/data-factory/configure-salesforce-connected-app.md

Lines changed: 0 additions & 51 deletions
This file was deleted.

articles/data-factory/connector-salesforce-service-cloud.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ You can explicitly set the API version used to read/write data via [`apiVersion`
4545
## Prerequisites
4646

4747
- API permission must be enabled in Salesforce.
48-
- You need configure the Connected Apps in Salesforce portal referring to this [Configure Salesforce Connected App](configure-salesforce-connected-app.md).
48+
- You need configure the Connected Apps in Salesforce portal referring to this [official doc](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5) or refer to our step by step guideline in the recommendation in this [article](connector-troubleshoot-salesforce.md#error-code-salesforceoauth2clientcredentialfailure).
4949

5050
>[!IMPORTANT]
5151
> - The execution user must have the API Only permission.
@@ -204,7 +204,7 @@ To copy data from Salesforce Service Cloud, set the source type in the copy acti
204204
| Property | Description | Required |
205205
|:--- |:--- |:--- |
206206
| type | The type property of the copy activity source must be set to **SalesforceServiceCloudV2Source**. | Yes |
207-
| SOQLQuery | Use the custom query to read data. You can only use [Salesforce Object Query Language (SOQL)](https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql.htm) query with [limitations](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/queries.htm#SOQL%20Considerations). If query is not specified, all the data of the Salesforce object specified in "ObjectApiName/reportId" in dataset will be retrieved. | No (if "ObjectApiName/reportId" in the dataset is specified) |
207+
| SOQLQuery | Use the custom query to read data. You can only use [Salesforce Object Query Language (SOQL)](https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql.htm) query with limitations. For SOQL limitations, see this [article](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/queries.htm#SOQL%20Considerations). If query is not specified, all the data of the Salesforce object specified in "ObjectApiName/reportId" in dataset will be retrieved. | No (if "ObjectApiName/reportId" in the dataset is specified) |
208208
| includeDeletedObjects | Indicates whether to query the existing records, or query all records including the deleted ones. If not specified, the default behavior is false. <br>Allowed values: **false** (default), **true**. | No |
209209

210210
> [!IMPORTANT]

articles/data-factory/connector-salesforce.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ You can explicitly set the API version used to read/write data via [`apiVersion`
4545
## Prerequisites
4646

4747
- API permission must be enabled in Salesforce.
48-
- You need configure the Connected Apps in Salesforce portal referring to this [Configure Salesforce Connected App](configure-salesforce-connected-app.md).
48+
- You need configure the Connected Apps in Salesforce portal referring to this [official doc](https://help.salesforce.com/s/articleView?id=sf.connected_app_client_credentials_setup.htm&type=5) or refer to our step by step guideline in the recommendation in this [article](connector-troubleshoot-salesforce.md#error-code-salesforceoauth2clientcredentialfailure).
4949

5050
>[!IMPORTANT]
5151
> - The execution user must have the API Only permission.
@@ -249,7 +249,7 @@ To copy data from Salesforce, set the source type in the copy activity to **Sale
249249
| Property | Description | Required |
250250
|:--- |:--- |:--- |
251251
| type | The type property of the copy activity source must be set to **SalesforceV2Source**. | Yes |
252-
| SOQLQuery | Use the custom query to read data. You can only use [Salesforce Object Query Language (SOQL)](https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql.htm) query with [limitations](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/queries.htm#SOQL%20Considerations). If query is not specified, all the data of the Salesforce object specified in "ObjectApiName/reportId" in dataset will be retrieved. | No (if "ObjectApiName/reportId" in the dataset is specified) |
252+
| SOQLQuery | Use the custom query to read data. You can only use [Salesforce Object Query Language (SOQL)](https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql.htm) query with limitations. For SOQL limitations, see this [article](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/queries.htm#SOQL%20Considerations). If query is not specified, all the data of the Salesforce object specified in "ObjectApiName/reportId" in dataset will be retrieved. | No (if "ObjectApiName/reportId" in the dataset is specified) |
253253
| includeDeletedObjects | Indicates whether to query the existing records, or query all records including the deleted ones. If not specified, the default behavior is false. <br>Allowed values: **false** (default), **true**. | No |
254254

255255
> [!IMPORTANT]
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
---
2+
title: Troubleshoot the Salesforce and Salesforce Service Cloud connectors
3+
titleSuffix: Azure Data Factory & Azure Synapse
4+
description: Learn how to troubleshoot issues with the Salesforce and Salesforce Service Cloud connectors in Azure Data Factory and Azure Synapse Analytics.
5+
author: jianleishen
6+
ms.service: data-factory
7+
ms.subservice: data-movement
8+
ms.topic: troubleshooting
9+
ms.date: 03/04/2024
10+
ms.author: jianleishen
11+
ms.custom: has-adal-ref, synapse
12+
---
13+
14+
# Troubleshoot the Salesforce and Salesforce Service Cloud connectors in Azure Data Factory and Azure Synapse
15+
16+
[!INCLUDE[appliesto-adf-asa-md](includes/appliesto-adf-asa-md.md)]
17+
18+
This article provides suggestions to troubleshoot common problems with the Salesforce and Salesforce Service Cloud connectors in Azure Data Factory and Azure Synapse.
19+
20+
## Error code: SalesforceOauth2ClientCredentialFailure
21+
22+
- **Cause**: You encounter this error code as you don't complete the Salesforce Connected App Configuration.
23+
24+
- **Recommendation**:
25+
26+
1. Create your connected app, and complete its [basic information](https://help.salesforce.com/s/articleView?id=sf.connected_app_create_basics.htm&type=5) and [OAuth settings](https://help.salesforce.com/s/articleView?id=sf.connected_app_create_api_integration.htm&type=5) for the connected app.
27+
1. Configure the **Connected App Name**, **API Name** and **Contact Email**.
28+
1. Select **Enable OAuth Settings**.
29+
1. Callback url can be random as Client Credential Flow don't need callback, for example: `https://login.salesforce.com/services/oauth2/callback`
30+
1. Setup OAuth access token scope, it's better to set up "**Full access**" for Azure Data Factory in case of permission issue.
31+
<br/>If you want to keep the mini scope, at least the "**Manage user data via APIs (api)**" should be added.
32+
<br/>If you don't set proper scope, you may get following similar message like: **Unauthorized, This session is not valid for use with the REST API**
33+
1. Select **Enable Client Credentails FLow**.
34+
35+
:::image type="content" source="media/connector-salesforce/configure-basic-information.png" alt-text="Screenshot of configuring basic information for the Salesforce connector app.":::
36+
37+
1. Get Client Id and Secret through **Manage Consumer Details**.
38+
39+
:::image type="content" source="media/connector-salesforce/manage-consumer-details.png" alt-text="Screenshot of the manage consumer details.":::
40+
41+
1. Copy the client id and secret to a txt file for Azure Data Factory linked service.
42+
43+
:::image type="content" source="media/connector-salesforce/client-id-secret.png" alt-text="Screenshot of the Client Id and Secret.":::
44+
45+
1. Create a user who has the API Only User permission.
46+
47+
1. Set up a permission set which only have API only permission.
48+
:::image type="content" source="media/connector-salesforce/set-up-a-permission.png" alt-text="Screenshot of setting system permissions.":::
49+
1. Specify the **API Enabled** and **Api Only User**.
50+
:::image type="content" source="media/connector-salesforce/system-permissions.png" alt-text="Screenshot of the system permissions.":::
51+
52+
1. Create a new user and link the permission set in the user detail page: **Permission Set Assignments**.
53+
:::image type="content" source="media/connector-salesforce/permission-set-assignments.png" alt-text="Screenshot of the permission set assignments.":::
54+
55+
1. From the connected app detail page, click Manage, Click **Edit Policies**. For **Run As**, select an execution user who has the API Only User permission. Set the **Timeout Value** value to None.
56+
57+
:::image type="content" source="media/connector-salesforce/connected-app-detail.png" alt-text="Screenshot of the connected app detail.":::
58+
59+
:::image type="content" source="media/connector-salesforce/edit-policies.png" alt-text="Screenshot of the edit policies.":::
60+
61+
## Related content
62+
63+
For more troubleshooting help, try these resources:
64+
65+
- [Connector troubleshooting guide](connector-troubleshoot-guide.md)
66+
- [Data Factory blog](https://techcommunity.microsoft.com/t5/azure-data-factory-blog/bg-p/AzureDataFactoryBlog)
67+
- [Data Factory feature requests](/answers/topics/azure-data-factory.html)
68+
- [Azure videos](https://azure.microsoft.com/resources/videos/index/?sort=newest&services=data-factory)
69+
- [Microsoft Q&A page](/answers/topics/azure-data-factory.html)
70+
- [Stack Overflow forum for Data Factory](https://stackoverflow.com/questions/tagged/azure-data-factory)
71+
- [Twitter information about Data Factory](https://twitter.com/hashtag/DataFactory)

0 commit comments

Comments
 (0)