共用方式為


設定複製活動中的 Salesforce

本文概述如何使用資料管線中的複製活動,從 Salesforce 複製資料及將資料複製到該處。

支援的設定

對於複製活動下每個索引標籤的組態,請分別參閱下列各節。

一般

請參閱<[一般] 設定>指導,來設定 [一般] 設定索引標籤。

來源

在複製活動的 [來源] 索引標籤下,Salesforce 支援下列屬性。

螢幕擷取畫面,其中顯示 [來源] 索引標籤。

以下是必要的屬性:

  • 連線:從連線清單中選取 [Salesforce] 連線。 如果不存在連線,請選取 [新增],以建立新的 Salesforce 連線。
  • 使用查詢:從 [物件 API]、[報表] 或 [SOQL 查詢] 中選取。
    • 如果您選取 [物件 API]

      • 物件 API:指定要從其中擷取資料的 Salesforce 物件名稱。 從下拉式清單中選取名稱。
    • 如果您選取 [報表]

      • 報表 ID:指定要從中擷取資料的 Salesforce 報表識別碼。 目的地中不支援此選項。 使用報表時有限制

        螢幕擷取畫面,其中顯示了 [使用查詢 - 報表]。

    • 如果您選取 [SOQL 查詢]

      • SOQL 查詢:使用自訂查詢來讀取資料。 您只能使用具有限制Salesforce Object Query Language (SOQL) 查詢,了解 Bulk API 2.0 查詢。 如果未指定 SOQL 查詢,將擷取物件 API報表 ID 中所指定之 Salesforce 物件的所有資料。

        螢幕擷取畫面,其中顯示了 [使用查詢 - SOQL 查詢]。

在 [進階] 下,可以指定下列欄位:

  • 包含已刪除的物件:指定是否要查詢現有的記錄 (未選取),或查詢所有記錄,包括已刪除的記錄 (已選取)。
  • 其他資料行:新增其他資料行來儲存來源檔案的相對路徑或靜態值。 後者支援運算式。

Destination

在複製活動的 [目的地] 索引標籤下,Salesforce 支援下列屬性。

螢幕擷取畫面,其中顯示 [目的地] 索引標籤和屬性清單。

以下是必要的屬性:

  • 連線:從連線清單中選取 [Salesforce] 連線。 如果不存在連線,請選取 [新增],以建立新的 Salesforce 連線。
  • 物件 API:指定要寫入到資料的 Salesforce 物件名稱。 從下拉式清單中選取名稱。

在 [進階] 下,可以指定下列欄位:

  • 寫入行為:指定作業的寫入行為。 允許的值為 InsertUpsert。 可以從下拉式清單中選擇行為。

    如果您選取 [Upsert]

    • 外部 ID 欄位:upsert 作業的外部識別碼欄位名稱。 指定的欄位在 Salesforce 物件中必須定義為外部 ID 欄位。 對應的輸入資料中不能有 NULL 值。

      顯示寫入行為的螢幕快照 - Upsert。

  • 略過 null 值:指定在寫入作業期間是否要略過輸入資料中的 null 值。

    • 當此選項為已選取狀態時,執行 upsert 或更新作業時,讓目的地物件中的資料保持不變。 執行插入作業時,插入已定義的預設值。
    • 當此選項為選取狀態時,執行 upsert 或更新作業時,將目的地物件中的資料更新為 NULL。 執行插入作業時,插入 NULL 值。
  • 寫入批次大小:指定每個批次中寫入 Salesforce 的資料列計數。 建議將此值從 10,000 設定為 200,000。 每個批次中的資料列太少,可降低複製效能。 每個批次中的資料列數太多,可能會導致 API 逾時。

  • 並行連線數上限:在活動執行期間,與資料存放區建立的並行連線數上限。 僅在想要限制並行連線時,才需要指定值。

對應

對於 [對應] 索引標籤組態,請參閱<在 [對應] 索引標籤下設定對應>。

設定

對於 [設定] 索引標籤組態,請參閱<在 [設定] 索引標籤下進行其他設定>。

資料表摘要

下列各表包含有關 Salesforce 中複製活動的詳細資訊。

來源資訊

名稱 描述 必要 JSON 指令碼屬性
[連接] 您與來源資料存放區的連線。 <您的 Salesforce 連線> Yes connection
連線類型 您的連線類型。 選取 [Salesforce 物件] SalesforceObject Yes /
使用查詢 從 Salesforce 讀取資料的方式。 物件 API
報表
SOQL 查詢
Yes /
針對物件 API
物件 API 要從其中擷取資料的 Salesforce 物件名稱。 <您的物件名稱> Yes objectApiName
針對報表
Report ID \(報表識別碼\) 要從中擷取資料的 Salesforce 報表識別碼。 目的地中不支援此選項。 使用報表時有限制 <您的報表 ID> Yes reportId
針對 SOQL 查詢
SOQL 查詢 使用自訂查詢來讀取資料。 您只能使用具有限制Salesforce Object Query Language (SOQL) 查詢,了解 Bulk API 2.0 查詢。 如果未指定 SOQL 查詢,將擷取物件 API報表 ID 中所指定之 Salesforce 物件的所有資料。 <您的 SOQL 查詢> Yes query
包括已刪除的物件 指出是要查詢現有記錄,還是要查詢包含已刪除記錄在內的所有記錄。 已選取或未選取 (預設值) No includeDeletedObjects:
true 或 false (預設值)
其他資料行 新增其他資料行來儲存來源檔案的相對路徑或靜態值。 後者支援運算式。 • 名稱
• 值
No additionalColumns:
• 名稱
• 值

目的地資訊

名稱 描述 必要 JSON 指令碼屬性
[連接] 與目的地資料存放區的連線。 <您的 Salesforce 連線> Yes connection
物件 API 指定要寫入到資料的 Salesforce 物件名稱。 <您的物件名稱> Yes objectApiName
寫入行為 作業的寫入行為。 允許的值為 InsertUpsert。 可以從下拉式清單中選擇行為。 • 插入
• Upsert
否 (預設為 Insert) writeBehavior:
insert
upsert
外部 ID 欄位 upsert 作業的外部識別碼欄位名稱。 指定的欄位在 Salesforce 物件中必須定義為外部 ID 欄位。 對應的輸入資料中不能有 NULL 值。 <您的外部 ID 欄位> 是 (用於 upsert) externalIdFieldName
略過 null 值 指出在寫入作業期間是否要忽略輸入資料中的 NULL 值。 已選取或未選取 (預設值) No ignoreNullValues:
true 或 false (預設值)
寫入批次大小 每個批次中寫入 Salesforce 的資料列計數。 建議將此值從 10,000 設定為 200,000。 每個批次中的資料列太少,可降低複製效能。 每個批次中的資料列數太多,可能會導致 API 逾時。 <資料列數目>
(整數)
否 (預設為 100,000) writeBatchSize
並行連線數上限 在活動執行期間建立至資料存放區的同時連線上限。 僅在想要限制並行連線時,才需要指定值。 <並行連線數上限> No maxConcurrentConnections

Salesforce Bulk API 2.0 限制

我們使用 Salesforce Bulk API 2.0 來查詢和內嵌資料。 會自動在 Bulk API 2.0 中為您建立批次。 每個輪替 24 小時期間最多可以提交 15,000 個批次。 如果批次超過限制,您就會發生失敗。

在 Bulk API 2.0 中,只有內嵌作業會取用批次。 查詢作業不會取用批次。 如需詳細資料,請參閱 Bulk API 2.0 開發人員指南中的要求處理方式

如需詳細資料,請參閱<Salesforce 開發人員限制>中的 [一般限制] 一節。