簡體   English   中英

Azure 數據工廠將 Salesforce 表的“對象 api 名稱”作為 ForEach 的參數傳遞

[英]Azure Data Factory Pass “Object api name” of Salesforce Tables as Parameter from ForEach

我試圖從Salesforce加載一些表,表的數量可能會不時改變。 我們在 blob 存儲上創建了 CSV 文件,其中包含我們要從 Salesforce 加載的表的名稱,此 CSV 包含一列,如下所示:

CSV 文件

我創建了一個引用 CSV 文件的Lookup 活動(並且我只禁用了 First row 的選項),然后我將它連接到一個ForEach 活動,該活動遍歷Lookup 活動的每一行,如下所示:

@activity('TablesLookup').output.value

在 Foreach 內部,我創建了一個復制數據活動,其中Salesforce 作為數據源

這里的問題是我試圖將 Salesforce 數據源的表名Object api 名稱)作為 ForEach 的參數傳遞。 但是我沒有找到可以傳遞 table name的選項。 下圖的詳細信息:

Salesforce 數據集 - 參數

Salesforce 數據集 - 連接

ForEach - 復制數據,Salesforce 數據源

這給了我以下錯誤:

ErrorCode=UserErrorOdbcOperationFailed,'Type=Microsoft.DataTransfer.Common.Shared.HybridDeliveryException,Message=ERROR [HY000] [Microsoft][Salesforce] (120) SOQL_FIRST mode prepare failure: SOQL error: [Microsoft][SQLEngine] (31480) syntax error near 'SELECT *<<< ??? >>> FROM "Student"'. SQL error: [Microsoft][SQLEngine] (31740) Table or view not found: Deloitte..Student,Source=Microsoft.DataTransfer.ClientLibrary.Odbc.OdbcConnector,''Type=System.Data.Odbc.OdbcException,Message=ERROR [HY000] [Microsoft][Salesforce] (120) SOQL_FIRST mode prepare failure: SOQL error: [Microsoft][SQLEngine] (31480) syntax error near 'SELECT *<<< ??? >>> FROM "Student"'. SQL error: [Microsoft][SQLEngine] (31740) Table or view not found: Deloitte..Student,Source=Microsoft Salesforce ODBC Driver,'

此致,

如果您的 Lookup 活動的 output 是這樣的:

在此處輸入圖像描述

當您將表名稱的值從查找活動的 output 傳遞到數據集中名為“tableName”的參數時,您需要將@item()更改為@item().Names (在“ForEach - 復制數據,Salesforce 數據源”步驟中) .

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM