建立重覆性資料匯出 App
適用於這些 Dynamics 365 應用程式:
Human Resources
本文介紹如何創建 Microsoft Azure 按定期計劃從 Microsoft Dynamics 365 Human Resources 中匯出數據的邏輯應用。 本教學課程充分運用 Human Resources 的 DMF 封包 REST 應用程式編寫程式界面 (API) 來匯出資料。 資料匯出後,邏輯應用程式將匯出的資料儲存到 Microsoft OneDrive 商業資料夾。
商務案例
在一個典型的 Microsoft Dynamics 365 整合商務方案中,資料務必以重覆性排程匯出到下游系統。 本教程介紹如何從 Microsoft Dynamics 365 Human Resources for Business 資料夾中匯出所有工作人員記錄並將工作人員清單保存在資料夾中 OneDrive 。
提示
在本教學課程匯出的特定資料和匯出資料目的地只是範例,僅供參考。 您可以輕鬆變更它們以符合您的業務需求。
使用的技術
本教學課程使用技術如下:
Dynamics 365 Human Resources –將匯出的工作人員的主數據源。
Azure Logic Apps –提供定期導出的業務流程和計劃的技術。
連接器 - 用於將邏輯應用連線到所需終結點的技術。
- 帶 Microsoft Entra ID 連接器的 HTTP
- OneDrive 對於商務 連接器
DMF 包 REST API –用於發射鍵匯出和監視其進度的技術。
OneDrive 對於企業 –出口工作人員的目的地。
先決條件
開始本教學課程的練習題之前,您必須備妥下列各項:
- 具備環境管理員級權限的 Human Resources 環境
- 託管邏輯應用程式的 Azure 訂閱
練習題
本練習題結束時,您將擁有連接您的 Human Resources 環境和您的 OneDrive 商業帳戶的邏輯應用程式。 邏輯應用程式將從 Human Resources 匯出資料封包,等待匯出完成、下載匯出的資料封包後儲存在您指定的 OneDrive 商業資料夾。
完成的邏輯應用程式將仿照下圖。
第 1 步:在 Human Resources 建立資料匯出專案
請在 Human Resources 建立匯出背景工作角色的資料匯出專案 為專案命名為匯出背景工作角色,並確定產生資料封包選項設定為是。 新增單一實體 (背景工作角色) 到專案,然後選取要匯出的格式。 (本教學課程使用 Microsoft Excel 格式。)
重要
請記住資料匯出專案的名稱。 當您下一步建立邏輯應用程式時將會需要它。
步驟 2:建立邏輯應用程式
大量練習題涉及建立邏輯應用程式。
請在 Azure 入口網站建立邏輯應用程式。
請從 Logic Apps Designer 的空白邏輯應用程式開始。
新增重覆性排程觸發程序每 24 小時執行一次邏輯應用程式 (或根據您選擇的時程)。
呼叫 ExportToPackage DMF REST API 排程您的資料封包匯出。
請從 HTTP Microsoft Entra 連接器使用叫用 HTTP 要求的動作。
- 基本資源 URL: 人力資源環境的 URL(不包括路徑/命名空間資訊。
- Microsoft Entra 資源 URI:
http://hr.talent.dynamics.com
附註
Human Resources 服務尚未提供連接器公開構成 DMF 封包 REST API 的所有 API,例如 ExportToPackage。 您反而必須透過 HTTP Microsoft Entra連接器使用原始 HTTPS 要求調用 API。 此連接器使用 Microsoft Entra 識別碼進行 Human Resources 的驗證和授權。
透過 HTTP Microsoft Entra 連接器登入您的 Human Resources 環境。
設定 HTTP POST 要求呼叫 ExportToPackage DMF REST API。
方法: 開機自檢
請求的網址: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.ExportToPackage
要求正文:
{ "definitionGroupId":"Export Workers", "packageName":"talent_package.zip", "executionId":"", "reExecute":false, "legalEntityId":"USMF" }
提示
您可能想要重新命名每個步驟,讓它比預設名稱更有意義,叫用 HTTP 要求。 例如,您可以重新命名這個步驟ExportToPackage。
初始化變數 以存儲匯出到包 請求的執行 狀態。
請等到資料匯出的執行狀態為成功。
新增直到迴圈重複到執行狀態變數值為成功為止。
新增延遲動作,在目前匯出的執行狀態輪詢之前等待五秒鐘的動作。
附註
將限制計數設定為 15 以便等待最長 75 秒 (15 次反覆運算 × 5 秒) 完成匯出。 如果您的匯出需要更長時間,請適時調整限制計數。
新增叫用 HTTP 要求動作以便呼叫 GetExecutionSummaryStatus DMF REST API,並設定執行狀態變數為 GetExecutionSummaryStatus 的回覆結果。
本範例並不檢查錯誤。 GetExecutionSummaryStatus API 可以傳回未成功的終端機狀態 (亦即,成功以外的狀態)。 更多資訊,請參閱 API 文件。
方法: 開機自檢
請求的網址: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExecutionSummaryStatus
請求的正文: body ('Invoke_an_HTTP_request')?['值']
附註
您可能需要在 Designer 的程式碼視圖或函數編輯器裡輸入要求本文值。
重要
設定變數動作值 (body('InvokeanHTTPrequest2')?['value']) 將有別於叫用 HTTP 要求 2 本文值,即使設計工具將以相同方式顯示值。
取得匯出封包的下載 URL。
新增叫用 HTTP 要求動作以便呼叫 GetExportedPackageUrl DMF REST API。
- 方法: 開機自檢
- 請求的網址: https://<hostname>/namespaces/<namespace_guid>/data/DataManagementDefinitionGroups/Microsoft.Dynamics.DataEntities.GetExportedPackageUrl
- 請求正文:“ {executionId”:body ('GetExportedPackageURL')?['值']}
下載匯出的封包。
新增 HTTP GET 要求 (內建的 HTTP 連接器動作) 以便從上一步傳回的 URL 下載封包。
方法: 獲取
URI: body ('Invoke_an_HTTP_request_3').value
附註
您可能需要在 Designer 的程式碼視圖或函數編輯器裡輸入 URL 值。
附註
本項要求不需要任何額外驗證,因為 GetExportedPackageUrl API 傳回的 URL 包括共用存取簽章 Token,授予下載檔案的訪問權。
使用 OneDrive 商務版連接器儲存下載的封包。
新增 OneDrive 商務版建立檔案動作。
根據需求連接到您的 OneDrive 商務帳戶。
- 資料夾路徑: 您選擇的資料夾
- 檔案名稱: worker_package.zip
- 檔案內容: 上一步中的正文 (動態內容)
步驟 3:測試邏輯應用程式
若要測試您的邏輯應用程式,請選取 Designer 中的執行按鈕。 您將會看到邏輯應用程式開始執行的步驟。 30 到 40 秒鐘後,邏輯應用程式應該完成執行動作,而您的 OneDrive 商務版資料夾應包括內含匯出背景工作角色的新封包檔案。
如果有任何一步回報失敗,請在 Designer 選取失敗的步驟,然後檢查它的輸入和輸出欄位。 根據需求偵錯和調整步驟以便改正錯誤。
下圖顯示當所有邏輯應用程式步驟執行成功時,Logic Apps Designer 的外觀。
摘要
在本教學課程中,您已經學習到如何使用邏輯應用程式從 Human Resources 匯出資料,並將匯出的資料儲存到 OneDrive 商務資料夾。 您可以根據需求修改本教學課程的步驟以符合您的業務需求。