使用流程取代傳統 Microsoft Dataverse 工作流程

本主題會將 Power Automate 功能與傳統工作流程做比較。

Power Automate 對於傳統背景工作流程模型有顯著優勢;您應該考慮使用 Power Automate 來自動化您的程序,而不是使用傳統工作流程。

建立流程,而不是傳統 Microsoft Dataverse 工作流程,以建置新的自動化程序。 此外,您應該檢閱現有的傳統背景工作流程處理,並考慮以流程來取代。

功能比較

下表摘要說明 Power Automate 和傳統工作流程功能之間的比較。

我們會不斷將新功能新增至 Power Automate。 Power Automate 獲得新功能時,本表中的資訊會更新,請經常回來查看! 如需即將推出之功能 (可協助您將傳統背景工作流程取代為流程) 的詳細資訊,請參閱 Power Automate 的新功能和規劃中功能

功能 Power Automate 傳統工作流程
建立模型 條件分支
迴圈
資料行上的等待條件
平行分支
外部系統的現成可用連接器 (在外部服務中觸發和執行動作)
組合 動態內容
事件資料前置影像的存取權
執行子工作流程
執行 Microsoft Dataverse 動作 (包括自訂)
執行自訂背景工作流程活動
組成要在交易中執行的步驟群組 是 (變更集)
核准工作流程
執行 資料行變更時觸發
依資料行值的條件式觸發 (例如,日期資料行中的特定日期)
在多個 Dataverse 資料表事件上觸發
視需要執行
執行身分範圍
(例如,組織、業務單位、使用者)
依排程執行
同步執行 (即時)
歷程記錄 稽核
執行分析
製作和可攜性 解決方案支援
新式設計工具
AI 輔助撰寫

範例案例:使用雲端流程取代背景工作流程

假設有一個銷售案例,您已經整理出客戶的報價,現在必須在傳送報價給客戶之前,向您的管理團隊請求核准。 若使用傳統工作流程,這不是容易執行的作業,而且大部分的解決方案都需要開發人員撰寫自訂背景工作流程活動來取得報價明細。

若使用流程,可以更輕鬆地進行組建此案例,如稍後逐步解說所示,解說中將包括一些 Power Automate 的功能。 這些功能包括:

  • 建立視需要執行的雲端流程。
  • 取得與資料表相關的資料列清單 Dataverse。
  • 對資料列清單進行迴圈。
  • 傳送核准要求。

允許銷售人員視需要觸發核准要求:

  1. 登入 Power Automate在解決方案中建立雲端流程

  2. 從觸發器清單中,選取 Microsoft Dataverse – 當選取某資料列時,然後選取報價做為資料表。

    此觸發程序可讓您視需要在資料列或資料列組執行雲端流程。

  3. 設定觸發程序之後,新增要在流程中執行的動作。 這會為核准者提供識別報價項目及值所需的摘要詳細資料。 首先新增 Microsoft Dataverse - 清單資料列動作。 目標是從報價中取得個別項目,因此將資料表名稱設為報價行。 為了確保清單僅包含屬於觸發流程之報價的報價明細,我們指定 OData 樣式篩選準則。 在篩選查詢方塊中,輸入 _quoteid_value eq,然後從出現的動態值清單中選取報價

  4. 因為我們想摘要報價的明細項目,用來取得核准,所以新增初始化變數動作。 將 名稱設定報價行摘要,然後輸入字串 (從下拉式清單輸入字串),並將保留空白。

  5. 新增附加至字串變數動作,然後選取我們稍早建立的報價明細摘要變數。 在方塊中,從動態值清單中選取數量名稱每單位價格應收金額手動折扣。 Power Automate 設計工具會識別出這些值是來自報價明細清單的,並將此動作新增至套用到每個迴圈中,以確保每個明細的資訊都會新增至此摘要中。

    選取值的螢幕截圖。

  6. 若要要求核准我們已建立的報價摘要,請新增核准 - 開始並等待核准動作。 選取核准類型 (例如核准/拒絕 - 第一個回應),將提供核准要求的標題\(例如,要求進行核准的報價名稱 (從動態值清單選取)\),在指派給方塊中輸入人員 (必須檢閱並核准報價) 的電子郵件。 在詳細資料方塊中,新增明細摘要變數,以及其他可能與動態值選擇器相關的資訊 (例如總金額)。

  7. 若要判斷接受或拒絕核准之後會發生什麼事,請新增條件動作。 從條件中的第一個欄位,選取動態值清單內的結果,在第二個欄位中,從下拉式清單中選取包含,然後在條件的第三個欄位中輸入核准。 最後,新增以核准結果為基礎的動作 (例如,傳送通知電子郵件)。

    條件動作的螢幕擷取畫面。

我們現在已經建立核准結構,因此核准者會有在後續步驟中作決定所需的所有資訊。 以下是完整範例:

核准流程結構的螢幕擷取畫面

當您對您的報價執行此流程時,它會摘要顯示該報價的報價明細,並傳送核准者可以從 Power Automate 回應的要求,或傳送他們可採取動作的電子郵件。 以下是這個展示的範例:

動作中流程的螢幕擷取畫面。

  • 使用複雜 else-if 條件式邏輯的工作流程

    我們建議改為使用 切換動作 ,而不是使用條件。

  • 從外掛程式/程式碼執行的工作流程

    我們建議您重新設計流程,以觸發程序開始:

    • 使用 Microsoft Dataverse 觸發程序,來執行以其中事件為基礎的流程。

    • 若要執行以外部服務中事件為基礎的流程,有超過 260 個的現成連接器可利用。

    • 若在某些案例中,您需要的連接器沒有現成的,您可以輕鬆地建立自訂連接器。 詳細資訊:從頭開始建立自訂連接器

    • 最後,如果在某些情況下您無法使用預先建立的其中一個連接器、或透過建立自訂連接器來觸發流程,請使用收到 HTTP 要求時的觸發來叫用流程。

  • 以遞迴方式執行的工作流程

    在流程中,請改為使用 do-until套用到每個進行迴圈。

  • 需要資料列清單的工作流程

    使用清單資料列動作。 使用此動作時,請使用 OData 語法來定義資料列篩選準則,藉由將您要擷取的資料列數目減至最少來將動作最佳化。

  • 睡眠並依排程執行的工作流程

    使用週期觸發程序,依週期性間隔執行商務邏輯。

  • 執行受管理的工作流程,以確保活動是以在單一交易中執行

    使用變更集動作來確保其中的動作都是以單次且不可部分完成的方式執行,這種方式不是全部成功,就會以群組方式失敗。 如果變更集中的任何一個動作失敗,則系統會回復已完成作業所做的變更。

  • 監視背景工作流程執行是否發生失敗

    在 Power Automate 中,在動作上使用事後執行設定,將其設定成在上一個動作失敗時執行。 例如,當更新資料列動作失敗或逾時時,傳送 Power Automate 行動通知。

常見問題集

  • 我有 Dynamics 365 授權。 我可以使用 Power Automate 嗎?

    每個 Dynamics 365 使用者都有權使用 Power Automate。 檢閱我們的授權資訊。

  • 我的流程可以多頻繁地觸發?

    Dynamics 365 (或 Microsoft Dataverse) 流程會在觸發後,以近即時執行,因為它們使用 Webhook (不需要輪詢)。

    • 和直接 API 存取一樣,系統中有節流/限制。 中更多資訊:Power Automate 的限制與設定
    • 尤其,每個流量每 5 分鐘限制最多 100,000 個動作。 雲端流程中的單一迴圈一次無法處理超過 100,000 個項目。
    • 每 5 分鐘有 6GB 的輸送量上限。
  • 單一流程可以執行多久?

    單一流程的執行會在 30 天後逾時。

  • 如何在環境之間移動我的流程?

    就像傳統工作流程,您可以在解決方案中建立流程,以支援程序的完整應用程式生命週期。

  • 系統是否會在 Microsoft Dataverse 中追蹤 Power Automate 相依性?

    與解決方案中其他元件類似,在 Microsoft Dataverse 中,系統會追蹤解決方案中流程的所有相依性。

  • 那麼同步工作流程呢?

    已知的意見反應指出,同步工作流程是造成終端使用者效能問題的主要原因。 建議評估是否可以使用一個雲端流程來組建您的目標或部分背景工作流程。 如果您可將動作分割為非同步,使用者就可以在 Power Automate 完成動作時繼續其活動。

  • 若使用 Power Automate,我的資料是否會留在區域內 (也就是與我的 Dynamics 365 或 Microsoft Dataverse 環境相同的區域)?

    是的,Power Automate 一律使用與 Microsoft Dataverse 相同的區域。

  • 我是否需要進行 Proxy/防火牆變更?

    請參閱 IP 位址設定參考,以判斷是否需要進行任何 Proxy/防火牆變更。