Dynamics 365 Business Central

Dynamics 365 Business Central 連接器可讓您針對 Dynamics 365 Business Central 資料執行插入、刪除、更新和讀取作業。

支援的版本

這個連接器支援下列版本:

  • Dynamics 365 Business Central Cloud,正式環境版本:24.5.23489.26544
  • Dynamics 365 Business Central 內部部署版本 - Dynamics.365.BC.25445.IN.DVD
  • 事前準備

    使用 Dynamics 365 連接器前,請先完成下列工作:

    • 在 Google Cloud 專案中:
      • 確認已設定網路連線。如要瞭解網路模式,請參閱「網路連線」。
      • 啟用下列服務:
        • secretmanager.googleapis.com (Secret Manager API)
        • connectors.googleapis.com (連接器 API)

        如要瞭解如何啟用服務,請參閱「啟用服務」。

      如果先前未為專案啟用這些服務或權限,系統會在設定連接器時提示您啟用。

    設定連接器

    連線是特定資料來源的連線,也就是說,如果您有多個資料來源,則必須為每個資料來源建立個別的連線。如要建立連線,請按照下列步驟操作:

    1. Cloud 控制台中,前往「Integration Connectors」 >「Connections」頁面,然後選取或建立 Google Cloud 專案。

      前往「連線」頁面

    2. 按一下「+ 建立新連線」,開啟「建立連線」頁面。
    3. 在「位置」部分,選擇連線的位置。
      1. 區域:從下拉式清單中選取位置。

        支援的連接器地區包括:

        如需所有支援地區的清單,請參閱「位置」一節。

      2. 點按「Next」
    4. 在「連線詳細資料」部分中,完成下列操作:
      1. 連接器:從可用連接器的下拉式清單中選取「Dynamics 365 Business Central」
      2. 連接器版本:從可用版本的下拉式清單中選取連接器版本。
      3. 在「Connection Name」欄位中,輸入連線例項的名稱。

        連線名稱必須符合下列條件:

        • 連線名稱可以包含英文字母、數字或連字號。
        • 字母必須為小寫。
        • 連線名稱的開頭必須為英文字母,結尾則須為英文字母或數字。
        • 連結名稱不得超過 49 個半形字元。
      4. 視需要輸入連線例項的「Description」(說明)
      5. 您可以選擇啟用 Cloud Logging,然後選取記錄層級。根據預設,記錄層級會設為 Error
      6. 服務帳戶:選取具備必要角色的服務帳戶。
      7. (選用) 設定連線節點設定
        • 節點數量下限:輸入連線節點數量下限。
        • 節點數量上限:輸入連線節點數量上限。

        節點是用來處理交易的連線單位 (或備用資源)。處理的交易量越多,就需要越多節點;反之,處理的交易量越少,就需要越少節點。如要瞭解節點對連接器定價的影響,請參閱「 連線節點的定價」。如果您未輸入任何值,系統會預設將最小節點設為 2 (以提高可用性),並將最大節點設為 50。

      8. Azure 用戶群:指定用於存取資料的 Microsoft Online 用戶群。如未指定,系統會使用您的預設租用戶。
      9. 公司:指定您在 Dynamics 365 中設定的公司名稱。您可以在 Dynamics 365 Business Central 的「公司資訊」頁面中找到這項資訊。
      10. 端點類型:指定 OrganizationUrl 必須解析至哪種端點。
      11. Include Navigation Properties:指定資料欄清單是否必須包含導覽屬性。導覽屬性可讓您瀏覽兩個實體類型之間的關聯。
      12. 使用沙箱:指定是否要使用沙箱。
      13. 使用者定義的檢視畫面:指定 JSON 設定檔的路徑,以便定義自訂檢視畫面。
      14. 按一下「+ 新增標籤」,以鍵/值組合的形式將標籤新增至連線。
      15. (選用) 如果要使用 SSL,請選取「Enable SSL」。系統隨即顯示安全資料傳輸層 (SSL) 設定詳細資料。
        1. 選取信任存放區類型。可以是「公開」、「私人」或「不安全的連線」
        2. 根據所選信任存放區,選取畫面上顯示的憑證。
        3. 如果您使用 mTLS,請在「Key Store」部分選取金鑰庫憑證。
      16. 點按「Next」
    5. 選取「驗證類型」並輸入相關詳細資料。

      Dynamics 365 Business Central 連線支援下列驗證類型:

      • 存取金鑰
      • OAuth 2.0 - 用戶端憑證
      • Azure AD
    6. 如要瞭解如何設定這些驗證類型,請參閱「設定驗證」。

    7. 點按「Next」
  • 查看:查看連線和驗證詳細資料。
  • 按一下 [建立]。
  • 設定驗證機制

    根據要使用的驗證方法輸入詳細資料。

    • 存取金鑰
      • 使用者名稱:指定 Dynamics 365 On-Premise 帳戶的使用者名稱,用於向 Microsoft Dynamics 365 Business Central 伺服器進行驗證。
      • 密碼:選取包含 Dynamics 365 On-Premise 帳戶密碼的密鑰。
      • 密鑰版本:選取密鑰的版本。
      • 存取金鑰:指定用於驗證 Microsoft Dynamics 365 Business Central 的存取金鑰。
    • OAuth 2.0 用戶端憑證
      • 用戶端 ID:指定您建立的應用程式用戶端 ID。
      • 用戶端密鑰:指定 Secret Manager 密鑰,其中包含您建立的已連結應用程式的用戶端密鑰。
      • 密鑰版本:選取用戶端密鑰的版本。
    • Azure AD
      • 用戶端 ID:指定用於要求存取權存證的用戶端 ID。您可以在 Azure 入口網站中建立的已連結應用程式總覽中找到這項資訊。
      • 範圍:指定所需範圍的逗號分隔清單。
      • 用戶端密鑰:指定含有帳戶存取金鑰的 Secret Manager 密鑰。
      • 授權網址:請輸入您在建立 OAuth 用戶端時產生的授權網址。 請使用下列格式輸入網址:https://login.microsoftonline.com/TENANT_IDENTIFIER/oauth2/v2.0/authorize?prompt=consent。 例如 https://login.microsoftonline.com/9bxxxxxxxxx8112/oauth2/v2.0/authorize?prompt=consent

    連線設定範例

    本節列出您在建立連線時設定的各種欄位範例值。

    OAuth 2.0 - 用戶端憑證連線類型

    欄位名稱 詳細資料
    位置 europe-west1
    連接器 Dynamics365BusinessCentral
    連接器版本 1
    連線名稱 dynamics-businesscentral-conn
    啟用 Cloud Logging
    服務帳戶 SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Azure 用戶群 c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    公司 Organization_Name
    節點數量下限 2
    節點數量上限 50
    機構網址 https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    驗證 OAuth 2.0 - 用戶端憑證
    用戶端 ID fd04bae4-c30c-4faf-bbae-9263d4d96d61
    用戶端密鑰 projects/617888503870/secrets/businesscentral-client-secret
    密鑰版本 1

    存取金鑰連線類型

    欄位名稱 詳細資料
    位置 europe-west1
    連接器 Dynamics365BusinessCentral
    連接器版本 1
    連線名稱 dynamics-businesscentral-on-prem-conn
    啟用 Cloud Logging
    服務帳戶 SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
    Azure 用戶群 BC250
    公司 Altostart Ltd.
    節點數量下限 2
    節點數量上限 50
    機構網址 http://10.128.0.78:7059/BC250/ODataV4
    驗證 存取金鑰
    使用者名稱 businesscentral
    密碼 密碼
    密鑰版本 1
    存取金鑰 OQq9qggeWxt9iZPSWrs8wgfNjsAq06PT2uls7Luhbp8=
    密鑰版本 1

    Azure AD 連線類型

    欄位名稱 詳細資料
    位置 europe-west1
    連接器 Dynamics365BusinessCentral
    連接器版本 1
    連線名稱 d365-business-central-oauth
    啟用 Cloud Logging
    服務帳戶 my-service-account@my-project.iam.gserviceaccount.com
    Azure 用戶群 c9f472d9-7d8a-44cf-8ee0-458d32e26bce
    公司 Altostart Ltd.
    節點數量下限 2
    節點數量上限 50
    機構網址 https://api.businesscentral.dynamics.com/v2.0/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/production/api/v2.0
    驗證 AzureAD
    用戶端 ID fd04bae4-c30c-4faf-bbae-9263d4d96d61
    範圍 https://api.businesscentral.dynamics.com/.default
    用戶端密鑰 projects/617888503870/secrets/d365bc-secret
    密鑰版本 3
    授權網址 https://login.microsoftonline.com/c9f472d9-7d8a-44cf-8ee0-458d32e26bce/oauth2/v2.0/authorize

    如要瞭解如何建立 Dynamics 365 Business Central 工作區,請參閱「歡迎使用 Dynamics 365 Business Central」一文。

    如需 Dynamics 365 Business Central API 的相關資訊,請參閱 Dynamics365BusinessCentral API 參考資料

    系統限制

    Dynamics 365 Business Central 連接器每個節點每秒最多可處理 25 筆交易,並節流超過此限制的所有交易。根據預設,Integration Connectors 會為連線分配 2 個節點 (可提高可用性)。

    如要瞭解 Integration Connectors 適用的限制,請參閱「限制」一節。

    在整合中使用 Dynamics 365 Business Central 連線

    建立連線後,即可在 Apigee Integration 和 Application Integration 中使用。您可以透過「連接器」工作,在整合中使用連線。

    • 如要瞭解如何在 Apigee Integration 中建立及使用連接器工作,請參閱「連接器工作」。
    • 如要瞭解如何在 Application Integration 中建立及使用連接器工作,請參閱「連接器工作」。

    實體操作範例

    本節說明如何在這個連接器中執行部分實體作業。

    範例:列出所有銷售訂單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrders
    3. 選取 List 作業,然後按一下「完成」
    4. 在「連接器」任務的「任務輸入」部分中,您可以設定「filterClause」
    5. 您必須使用單引號 (') 括住篩選器子句的值。您可以使用篩選子句,根據資料欄篩選記錄。

    範例:取得銷售訂單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrders
    3. 選取 Get 作業,然後按一下「完成」
    4. 將實體 ID 設為「841c04f9-3391-ef11-8a6b-002248d4e29e」,這是要傳遞的鍵。如要設定實體 ID,請在「資料對應」的「資料對應器」專區中,按一下「開啟資料對應編輯器」,然後在「輸入值」欄位中輸入 "841c04f9-3391-ef11-8a6b-002248d4e29e",並選擇 EntityId 做為區域變數。

      實體 ID 的值應直接傳遞,例如「841c04f9-3391-ef11-8a6b-002248d4e29e」。 其中「841c04f9-3391-ef11-8a6b-002248d4e29e」是唯一的主鍵值。

      如果傳遞單一實體 ID 時,因存在兩個複合鍵而發生錯誤,您可以使用篩選器子句傳遞值。

    範例:刪除銷售訂單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrders
    3. 選取 DELETE 運算,然後按一下「Done」
    4. 將實體 ID 設為「841c04f9-3391-ef11-8a6b-002248d4e29e」,這是要傳遞的鍵。如要設定實體 ID,請在「資料對應」的「資料對應器」專區中,按一下「開啟資料對應編輯器」,然後在「輸入值」欄位中輸入 "841c04f9-3391-ef11-8a6b-002248d4e29e",並選擇 EntityId 做為區域變數。

      如果實體有兩個複合式商務或主鍵,而非指定 entityId,您也可以將 filterClause 設為 id='841c04f9-3391-ef11-8a6b-002248d4e29e'

    範例:建立銷售訂單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrders
    3. 選取 Create 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
      {
           "orderDate": "2024-10-30",
           "customerNumber": "10000",
           "currencyCode": "INR",
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07"
           }
           

      如果整合成功,salesOrders 工作項的 connectorOutputPayload 回應參數會包含類似以下的值:

      {
           "id": "2e048d8a-a796-ef11-8a6b-6045bdae882d"
           }
           

    範例:建立銷售訂單明細

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrderLines
    3. 選取 Create 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分中,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
      {
           "documentId": "b747cc93-c37f-ef11-ac23-7c1e523b4365",
           "sequence": 10014,
           "itemId": "8b0f75c5-f26e-ef11-a678-6045bdc89b07",
           "lineType": "Item",
           "lineObjectNumber": "1996-S"
           }
           

      如果整合成功,salesOrderLines 工作項的 connectorOutputPayload 回應參數會包含類似以下的值:

      {
           "id": "35535130-d09d-ef11-8a6b-002248d4cc93"
           }
           

    範例:建立銷售報價

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesQuotes
    3. 選取 Create 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分中,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
      {
           "paymentTermsId": "590d75c5-f26e-ef11-a678-6045bdc89b07",
           "currencyCode": "INR",
           "customerNumber": "30000"
           }
           

      如果整合成功,salesQuotes 工作項的 connectorOutputPayload 回應參數會包含類似以下的值:

      {
           "id": "2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e"
           }
           

    範例:建立訂購單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 purchaseOrders
    3. 選取 Create 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分中,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
      {
           "vendorId": "7e0f75c5-f26e-ef11-a678-6045bdc89b07",
           "vendorNumber": "10000"
           }
           

      如果整合成功,purchaseOrders 工作項的 connectorOutputPayload 回應參數會包含類似以下的值:

      {
           "id": "53389ee7-a796-ef11-8a6b-6045bdae882d"
           }
           

    範例:建立項目

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 items
    3. 選取 Create 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分中,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload 做為本機變數。
      {
           "number": "4000-D",
           "displayName": "Charlie Altostrat",
           "type": "Inventory",
           "itemCategoryId": "d61672cb-f26e-ef11-a678-6045bdc89b07",
           "baseUnitOfMeasureCode": "PCS"
           }
           

      如果整合成功,items 工作項的 connectorOutputPayload 回應參數會包含類似以下的值:

      {
           "id": "fad09437-8d9e-ef11-8a6b-000d3af0e092"
           }
           

    範例:更新銷售訂單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrders
    3. 選取 Update 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。
      {
           "phoneNumber": "7764872993"
           }
           
    5. 將 Data Mapper 中的實體 ID 設為 salesOrders 實體。如要設定實體 ID,請按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為區域變數。

      您也可以將 entityId 設為 id ='5e9226d3-1c7b-ef11-a671-6045bdaef76c',而非指定 entityId

    範例:更新銷售訂單明細

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesOrderLines
    3. 選取 Update 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。
      {
           "description": "Test from Altostrat"
           }
           
    5. 將 Data Mapper 中的實體 ID 設為 salesOrderLines 的實體。如要設定實體 ID,請按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。

      您也可以將 entityId 設為 id ='35535130-d09d-ef11-8a6b-002248d4cc93',而非指定 entityId

    範例:更新銷售報價

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 salesQuotes
    3. 選取 Update 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。
      {
           "currencyCode": "USD"
           }
           
    5. 將 Data Mapper 中的實體 ID 設為 salesQuotes 的實體。如要設定實體 ID,請按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。

      您也可以將 entityId 設為 id='2116bd4e-3ba3-ef11-8a6b-6045bdacfb5e',而非指定 entityId

    範例:更新訂購單

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 purchaseOrders
    3. 選取 Update 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。
      {
           "shipToName": "Charlie Cruz"
           }
           
    5. 將 Data Mapper 中的實體 ID 設為 purchaseOrders 的實體。如要設定實體 ID,請按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。

      您也可以將 entityId 設為 id ='6b88738e-3891-ef11-8a6b-002248d4e29e',而非指定 entityId

    範例:更新商品

    1. Configure connector task 對話方塊中,按一下 Entities
    2. Entity 清單中選取 items
    3. 選取 Update 運算,然後按一下「Done」
    4. 在「資料對應」任務的「資料對應器」部分,按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為本機變數。
      {
           "displayName": "Updates Altostrat name"
           }
           
    5. 將 Data Mapper 中的實體 ID 設為項目實體。如要設定實體 ID,請按一下 Open Data Mapping Editor,然後在 Input Value 欄位中輸入類似下列的值,並選擇 EntityId/ConnectorInputPayload/FilterClause 做為區域變數。

      您也可以將 entityId 設為 id ='fad09437-8d9e-ef11-8a6b-000d3af0e092',而非指定 entityId

    向 Google Cloud 社群尋求協助

    如有任何問題,歡迎在 Cloud 論壇中發問並討論這個連接器。

    後續步驟