狀態架構
重要注意事項
本主題提到的部分或全部功能已在預覽版中一併提供。 內容和功能可能隨時變更。
本文介紹 Microsoft Dynamics 365 Intelligent Order Management中的狀態架構。
狀態架構是 Dynamics 365 Intelligent Order Management 在 2022 年 10 月版中引入的一個新概念。 狀態架構是一種可透過在執行時,檢查實體的目前狀態是否允許移動到另一個狀態,來驗證商務程序規則的方法。 例如,如果定義了從新增到處理中的轉換,這將會成功,但是從已完成到處理中就會拋出錯誤。
使用者可以新增自己的狀態、狀態原因和轉換。 但是,他們無法自訂現成的定義。
狀態架構資料模型
狀態架構資料模型對目前資料模型進行了一些更新和新增。
下圖顯示了已新增到狀態架構資料模型中的資料表。
更新到資料模型
實體狀態和狀態原因欄
狀態架構為作為 Intelligent Order Management 一部分的實體引入了兩個新欄。 新增這些欄是為了支援可當地語系化的狀態和狀態原因狀態欄位。 狀態架構還引入了一個新的唯讀欄位,指示記錄在使用者介面 (UI) 中不應是可編輯的。
欄位 | 描述 |
---|---|
狀態 | 實體所處的狀態,如狀態定義資料表所定義。 |
狀態原因 | 實體之所以處於目前狀態的詳細描述。 |
唯讀 | 如果記錄不應在 UI 中編輯,則將值設定為 True。 否則,將其設為 False。 |
資料模型的新增內容
狀態定義資料表
狀態定義資料表可建立每個實體允許的狀態組。 這些狀態具有關聯的屬性,這些屬性包含中繼資料,以指示每個狀態的不同行為。
附註
作為協調流程旅程的一部分,狀態用於確定有效轉換。
欄位 | 描述 |
---|---|
狀態定義 | 狀態的全域唯一識別碼 (GUID)。 |
相關聯實體 | 狀態所屬的實體。 |
詳細資料 | 狀態的名稱。 |
狀態定義屬性 | 關聯中繼資料的查詢。 |
唯讀 | True 值會將實體標記為唯讀。 |
狀態定義原因資料表
狀態定義原因資料表可提供為什麼某些項目處於指定狀態的額外詳細資訊,但這可能不是指示有效狀態轉換的一部分。 例如,某些項目的狀態可以是等候,但狀態原因可以是延期交貨或預購。
欄位 | 描述 |
---|---|
狀態定義原因 | 狀態原因的 GUID。 |
狀態 | 狀態原因關聯的狀態。 |
詳細資料 | 狀態原因的名稱/描述。 |
狀態定義屬性資料表
狀態定義屬性資料表包含每個狀態的額外中繼資料。
欄位 | 描述 |
---|---|
狀態定義屬性 | 屬性的 GUID。 |
時間表位置 | 狀態在 UI 的進度列時間表控制項中的顯示順序。 (此控制項在 2022 年 10 月版本中引入。) |
狀態轉換資料表
狀態轉換資料表包含引發商務活動時,將發生的狀態轉換清單。 僅當目前狀態為允許狀態時,商務活動才會設定狀態。
欄位 | 描述 |
---|---|
狀態轉換 | 狀態轉換的 GUID。 |
商業活動定義 | 查詢商務活動定義資料表以確定記錄屬於哪個商務活動。 |
來源狀態 | 允許轉換的來源狀態。 |
目標狀態 | 如果狀態正在從允許的來源狀態轉換,則要設定的目標狀態。 |
目標狀態原因 | 如果狀態正在從允許的來源狀態轉換,則要設定的目標狀態原因。 |
下表顯示了此資料表中資料的範例。
商業活動定義 | 來源狀態 | 目標狀態 | 目標狀態原因 |
---|---|---|---|
現有檢查成功 | 進行中 | 履行進行中 | 庫存檢查成功 |
現有檢查成功 | 保留 | 履行進行中 | 庫存檢查成功 |
現有檢查失敗 | 進行中 | 保留 | 延期交貨保留 |
案例
商務活動不存在轉換
如果在狀態轉換資料表中沒有找到引發商務活動的記錄,驗證將自動成功,但不會設定狀態或狀態原因值。
新增新狀態和轉換
要新增狀態和轉換,請執行以下步驟。
新增狀態定義。
如有需要,可新增狀態定義原因。
新增狀態轉換,然後執行以下步驟:
- 將新的狀態轉換與新的商務活動相關聯。
- 將來源欄位設為允許的值。 每個允許的來源新增一列。
- 將狀態欄位設定為引發商務活動時應設定的狀態。
- 將狀態原因欄位設定為引發商務活動時您希望的原因。
新增所需的任何屬性 (唯讀或時間表)。