設定背景工作流程階段和步驟

注意

2020 年 11 月生效:

  • Common Data Service 已重新命名為 Microsoft Dataverse。 深入了解
  • Microsoft Dataverse 中的部分術語已更新。 例如,實體 現在是 資料表,而 欄位 則是 資料行深入了解

本文章即將更新,以反映最新的術語。

當您設計工作流程時,可以選擇包含您要在 階段步驟 中執行的邏輯。

階段 可讓工作流程邏輯更易於讀取,並可解釋工作流程邏輯。 不過,階段不會影響工作流程的邏輯或行為。 如果程序具有階段,程序中的所有步驟都必須包含在階段中。

步驟 是工作流程內的商務邏輯單位。 步驟可以包括條件、動作、其他步驟或這些項目的組合。

背景工作流程處理可以執行的動作

背景工作流程程序可以執行下表中列出的動作。

目的 描述
建立記錄 為實體建立新記錄,並將所選取的值指派給屬性。
更新記錄 您可以更新背景工作流程執行的記錄、連結至 N:1 關聯中的該記錄的任何一個記錄,或先前步驟中建立的任何記錄。
指派記錄 您可以指派背景工作流程執行的記錄、連結至 N:1 關聯中的該記錄的任何一個記錄,或先前步驟中建立的任何記錄。
傳送電子郵件 傳送電子郵件。 您可以選擇建立新的電子郵件訊息,或為背景工作流程執行的記錄、與該實體具有 N:1 關聯的任何實體,或先前步驟中建立的任何記錄,使用為相關實體設定的電子郵件範本。
啟動子工作流程 啟動已設定為子工作流程的背景工作流程處理。
變更狀態 變更工作流程程序執行之記錄、連結至 N:1 關聯中的該記錄的任何一個記錄,或先前步驟中建立的任何記錄的狀態。
停止工作流程 停止目前的工作流程。 您可以設定 成功已取消 狀態和指定狀態訊息。
自訂步驟 開發人員可以建立定義動作的自訂背景工作流程步驟。 預設沒有提供自訂步驟。

設定記錄值

當您建立記錄時,可以設定記錄的值。 當您更新記錄時,可以設定、附加、遞增、遞減、相乘或清除值。

當您選取 設定屬性 時,對話方塊會開啟並顯示實體的預設表單。

在對話方塊的底端,可以看到表單中沒有的其他欄位清單。

針對所有欄位,您可以設定靜態值 (該值會由工作流程設定)。

在對話方塊右側,表單小幫手 可讓您從目前記錄的內容設定或附加動態值。 這包括可從實體的 N:1 (多對一) 關聯中存取之相關記錄的值。

表單小幫手 中的可用選項取決於您選取的表單欄位。 當您設定動態值,您會看到黃色預留位置 (稱為「動態資料欄位」),顯示動態資料將會包含的地方。 如果您要移除值,請選取這個的動態資料欄位並刪除它。 對於文字欄位,您可以使用靜態和動態資料的組合。

對於動態值,您不確定欄位或相關實體是否具有您要設定的值。 您可以實際設定一些欄位,嘗試設定值和使用綠色箭號依值順序排序。 如果第一個欄位沒有資料,則會嘗試第二個欄位,以此類推。 如果所有欄位都沒有資料,您可以指定要使用的預設值。

設定背景工作流程動作的條件

您要套用的動作通常取決於條件。 背景工作流程處理提供幾種方式,可以設定條件及建立分支邏輯以取得想要的結果。 您可以檢查背景工作流程處理執行之記錄的值、連結至 N:1 關聯中的該記錄的任何一個記錄的值,或程序本身的值。。

條件類型 描述
檢查條件 邏輯「if <condition> then」陳述式。

您可以檢查背景工作流程執行之記錄的目前值、連結至 N:1 關聯中的該記錄的任何一個記錄的值,或先前步驟中建立的任何記錄的值。 根據這些值,您可以定義當條件為 true 時的其他步驟。

在「if <condition> then」陳述式中,您可以使用下列運算子:等於不等於包含資料不包含資料在下面不在下面

附註在下面不在下面 是階層式運算子。 它們只能使用於已定義階層式關聯的實體。 若嘗試將這些運算子使用於未定義階層式關聯的實體,看到錯誤訊息:「您在未定義階層式關聯的實體上使用了階層式運算子。 請將實體設為階層式 (將關聯標記為階層式),或使用其他運算子。」

如需階層關聯的詳細資訊,請參閱定義和查詢階層式相關資料。 表格之後的螢幕擷取畫面是使用 在下面不在下面 階層式運算子的背景工作流程處理定義範例。
條件分支 邏輯「else-if-then」陳述式。 編輯器使用「否則,如果 <condition> 則:」文字

選取先前定義的檢查條件,而且您可以加入條件分支,來定義當檢查條件傳回 false 時的其他步驟。
預設動作 邏輯 "else" 陳述式。 編輯器使用文字「否則:」

選取您先前定義的檢查條件、條件分支、等待條件或等待分支,而且您可以使用預設動作,針對不符合條件或分支項目中定義的準則的所有案例來定義步驟。
等待條件 在符合條件所定義的準則之前,讓背景工作流程暫停它自己。 背景工作流程會在符合等待條件中的準則時自動再次啟動。
平行等待分支 定義背景工作流程的替代等待條件,其一組對應的額外步驟只有在初始準則符合時才會執行。 您可以使用平行等待分支,於背景工作流程邏輯中建立時間限制。 這些逾時有助於防止背景工作流程無限期地等待符合等待條件中所定義的準則。
自訂步驟 開發人員可以建立定義條件的自訂背景工作流程步驟。 預設沒有提供自訂步驟。

以下螢幕擷取畫面包含使用 在下面不在下面 階層式運算子的背景工作流程處理定義範例。 在我們範例中,我們將兩個不同折扣套用至兩個客戶群組。 在 新增步驟,我們選取 檢查條件,指定包含 在下面不在下面 運算子的 if-then 條件。 第一個 if-then 條件適用於 在 Alpine Ski House 客戶下面 的所有客戶。 這些客戶對於購買的商品和服務獲得 10% 折扣。 第二個 if-then 條件適用於 不在 Alpine Ski House 客戶下面 的所有客戶,他們獲得 5% 折扣。 然後,我們選取 更新記錄,根據條件定義要執行的動作。

工作流程程序使用小於/不小於運算子。

後續步驟

透過程序建立自訂商務規則
工作流程程序概觀
監視和管理背景工作流程處理
背景工作流程處理的最佳做法