使用 Azure Data Factory 或 Synapse Analytics,複製 QuickBooks Online 的資料 (預覽版)
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
本文概述如何使用 Azure Data Factory 或 Synapse Analytics 管線中的複製活動,複製 QuickBooks Online 的資料。 本文是根據複製活動概觀一文,該文提供複製活動的一般概觀。
重要
此連接器目前為預覽版。 您可以親身體驗並提供意見反應。 如果您需要依賴解決方案中的預覽連接器,請連絡 Azure 支援。
支援的功能
此 QuickBooks 連接器支援下列功能:
支援的功能 | IR |
---|---|
複製活動 (來源/-) | 4.9 |
查閱活動 | 4.9 |
① Azure 整合執行階段 ② 自我裝載整合執行階段
如需支援做為來源/接收器的資料存放區清單,請參閱支援的資料存放區表格。
此連接器支援 QuickBooks OAuth 2.0 驗證。
開始使用
若要透過管線執行複製活動,您可以使用下列其中一個工具或 SDK:
使用 UI 建立連結至 QuickBook 的服務
使用下列步驟,在 Azure 入口網站 UI 中建立連結至 QuickBooks 的服務。
前往 Azure Data Factory 或 Synapse 工作區的 [管理] 索引標籤,選取 [連結服務],然後按一下 [新增]:
搜尋 QuickBooks 並選取 QuickBooks 連接器。
設定服務詳細資料,測試連線,然後建立新的連結服務。
連接器設定詳細資料
下列各節提供屬性的相關詳細資料,這些屬性是用來定義 QuickBooks 連接器專屬的 Data Factory 實體。
連結服務屬性
以下是針對 QuickBooks 已連結服務支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | Type 屬性必須設定為:QuickBooks | Yes |
connectionProperties | 定義如何連線至 Square 的屬性群組。 | Yes |
在 connectionProperties 之下: |
||
endpoint | QuickBooks Online 伺服器的端點。 (也就是 quickbooks.api.intuit.com) | Yes |
companyId | 要授權之 QuickBooks 公司的公司識別碼。 如需尋找公司識別碼方式的資訊,請參閱如何找到公司識別碼? | Yes |
consumerKey | 適用於 OAuth 2.0 驗證的 QuickBooks Online 應用程式用戶端識別碼。 您可以在這裡深入了解。 | Yes |
consumerSecret | 適用於 OAuth 2.0 驗證的 QuickBooks Online 應用程式用戶端密碼。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密。 | Yes |
refreshToken | 與 QuickBooks 應用程式相關的 OAuth 2.0 重新整理權杖。 您可以在這裡深入了解。 請注意,重新整理權杖會在 180 天後過期。 客戶必須定期更新重新整理權杖。 將此欄位標記為 SecureString 以便安全儲存,或參考 Azure Key Vault 中儲存的祕密。 |
Yes |
useEncryptedEndpoints | 指定是否使用 HTTPS 來加密資料來源端點。 預設值為 True。 | No |
範例:
{
"name": "QuickBooksLinkedService",
"properties": {
"type": "QuickBooks",
"typeProperties": {
"connectionProperties": {
"endpoint": "quickbooks.api.intuit.com",
"companyId": "<company id>",
"consumerKey": "<consumer key>",
"consumerSecret": {
"type": "SecureString",
"value": "<clientSecret>"
},
"refreshToken": {
"type": "SecureString",
"value": "<refresh token>"
},
"useEncryptedEndpoints": true
}
}
}
}
處理連結服務的重新整理權杖
當您在連結服務中使用 QuickBooks Online 連接器時,請務必正確地從 QuickBooks 管理 OAuth 2.0 重新整理權杖。 連結服務會使用重新整理權杖來取得新的存取權杖。 不過,QuickBooks Online 會定期更新重新整理權杖,使前一個權限失效。 連結服務不會自動更新 Azure Key Vault 中的重新整理權杖,因此您必須管理重新整理權杖更新以確保連線不中斷。 否則,一旦重新整理權杖過期,您就可能遇到驗證失敗。
您可以根據 QuickBooks Online 的重新整理權杖到期原則,手動更新 Azure Key Vault 中的重新整理權杖。 但另一種方法是使用排定的工作或 Azure Function 來自動化更新,以檢查新的重新整理權杖並在 Azure Key Vault 中更新。
資料集屬性
如需可用來定義資料集的區段和屬性完整清單,請參閱資料集一文。 本節提供 QuickBooks 資料集所支援的屬性清單。
若要從 QuickBooks Online 複製資料,請將資料集的 type 屬性設定為 QuickBooksObject。 以下是支援的屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 資料集的類型屬性必須設為:QuickBooksObject | Yes |
tableName | 資料表的名稱。 | 否 (如果已指定活動來源中的「查詢」) |
範例
{
"name": "QuickBooksDataset",
"properties": {
"type": "QuickBooksObject",
"typeProperties": {},
"schema": [],
"linkedServiceName": {
"referenceName": "<QuickBooks linked service name>",
"type": "LinkedServiceReference"
}
}
}
複製活動屬性
如需可用來定義活動的區段和屬性完整清單,請參閱管線一文。 本節提供 QuickBooks 來源所支援的屬性清單。
以 QuickBooks 作為來源
若要從 QuickBooks Online 複製資料,請將複製活動中的來源類型設定為 QuickBooksSource。 複製活動的 source 區段支援下列屬性:
屬性 | 描述 | 必要 |
---|---|---|
type | 複製活動來源的 type 屬性必須設定為:QuickBooksSource | Yes |
query | 使用自訂 SQL 查詢來讀取資料。 例如: "SELECT * FROM "Bill" WHERE Id = '123'" 。 |
否 (如果已指定資料集中的 "tableName") |
範例:
"activities":[
{
"name": "CopyFromQuickBooks",
"type": "Copy",
"inputs": [
{
"referenceName": "<QuickBooks input dataset name>",
"type": "DatasetReference"
}
],
"outputs": [
{
"referenceName": "<output dataset name>",
"type": "DatasetReference"
}
],
"typeProperties": {
"source": {
"type": "QuickBooksSource",
"query": "SELECT * FROM \"Bill\" WHERE Id = '123' "
},
"sink": {
"type": "<sink type>"
}
}
}
]
從 Quickbooks Desktop 複製資料
服務中的複製活動無法直接複製 Quickbooks Desktop 的資料。 若要從 Quickbooks Desktop 複製資料,請將您的 Quickbooks 資料匯出至逗點分隔值 (CSV) 檔案,然後將檔案上傳至 Azure Blob 儲存體。 之後您便可以使用服務複製 Quickbooks Desktop 的資料至您選擇的接收器。
查閱活動屬性
若要了解屬性的詳細資料,請參閱查閱活動。
相關內容
如需複製活動支援作為來源和接收器的資料存放區清單,請參閱支援的資料存放區。