摘要: 本期結合一個“生產執行管理”案例場景涉及的相關業務活動流程,系統地介紹了華為云數字工廠平臺的邏輯模型編排器的使用方法,
本文分享自華為云社區《數字工廠深入淺出系列(三):邏輯模型編排器的使用方法介紹》,作者:云起MAE ,
華為云數字工廠平臺的制造應用構建引擎(Manufacturing App Engine,以下簡稱MAE引擎),采用實時事件驅動架構,業務邏輯支持動態配置和加載運行,實作業務邏輯與資料模型解耦、業務應用與技術平臺解耦,華為云數字工廠平臺MAE引擎,提供強大易用的邏輯流編排工具、規則引擎與資料流引擎,實時感知業務物件的狀態變化,自動觸發不同業務物件之間的資料分析、處理和流轉,邏輯流編排工具與業務物件的資訊模型天然融合,業務人員也能看懂與快速編排業務流程處理所需的背景關系資訊,隨時回應業務需求變化調整數字系統中的業務邏輯流程,實作數字系統能真正適配日益柔性化的生產業務流程,實作敏捷可柔性化配置,實作真正由業務需求快速驅動數字化應用的構建與升級,
華為云數字工廠平臺MAE引擎的邏輯流由三類節點組成:
- 觸發器:邏輯流引擎的觸發源,支持以下四種觸發器型別:資料變化(創建/變更)、用戶操作、IoT訊息和定期計劃,能實時感知與回應業務資料/IoT設備資料的變化和用戶的執行操作;
- 規則引擎:對業務規則進行建模配置,支持復雜的嵌套規則條件,能實時動態運算和判斷,驅動業務流的合規執行;
- 動作執行器:業務流的執行動作結果,支持以下四種動作型別:業務流轉(業務物件A的邏輯流執行結果,流轉觸發業務物件B的邏輯流執行)、事件記錄(創建事件記錄或者回填相關業務物件資料)、訊息通知(業務訊息的主動通知:系統通知/郵件/短信/IM工具等)和外部集成(呼叫外部系統API,觸發外部系統業務流),
本期結合上期的“生產執行管理”場景案例繼續展開,來詳細介紹華為云數字工廠平臺的“邏輯模型”編排器的使用方法,
(一)案例場景說明
本期場景案例,需要通過實作以下4個業務邏輯流的編排與運行,來完成“生產執行管理”涉及的相關業務物件之間資料的按需自動流轉:
- 工序任務單生成:在創建生產訂單時,根據生產訂單的工藝路線資訊,自動根據工藝路線下的程序工序來拆解生成生產任務單;
- 生產物料需求生成:在生產訂單上提供操作“生成物料需求單”,根據生產訂單的產品和計劃產量資訊,自動根據產品的制造BOM里的物料清單資料來生成物料需求單;
- 生產訂單關閉:在生產訂單上提供操作“關閉生產訂單”,用戶操作時需要填寫“關閉原因”,更新生產訂單以及其下的工序任務單的狀態為“已關閉”;
- 完工入庫更新產品及倉庫的庫存量:用戶提交確認“完工入庫單”后,根據完工入庫單上的“產品”、“倉庫”和“數量”,自動回寫更新產品主資料的“庫存現有量”和產品在相應倉庫的“庫存現有量”,
(二)正式搭建步驟
下面介紹如何使用華為云數字工廠平臺MAE引擎的邏輯編排器,來實作本期場景案例中4個業務邏輯流:
2.1.相關資訊模型準備:
上期我們介紹華為云數字工廠平臺的資訊配置器的使用方法時,完成了以下業務物件的資訊模型配置:生產訂單、工序任務單和物料需求單,為了完成第4個業務流“更新庫存量”,我們需要補充配置完成“完工入庫單”的資訊模型,
在“事務”模型構建器,選擇“生產”領域頁簽,然后新建或者使用已有的業務場景“生產管理”,在業務場景下新建事務模型“完工入庫單”:
“完工入庫單”的資訊模型欄位的配置方法,請參考上期介紹的資訊配置器的使用方法,這里不再展開說明,
2.2.生產執行相關業務邏輯流建模:
用戶在華為云數字工廠平臺的“建模作業臺”,使用“事務”模型構建器,選擇相應的事務模型,在事務模型的“邏輯模型”中新建和發布所需的邏輯流程:
通常我們在觸發源的事務模型下創建相應的邏輯流來完成業務流轉處理,在邏輯流運行時,會自動帶入觸發來源模型的實體資料作為輸入資訊,然后在邏輯流里面可以按需選擇串聯到與來源模型存在資訊關聯關系的其他業務模型,從來實作資料從觸發源業務物件自動處理流轉到目標業務物件,
邏輯流模型,主要提供以下幾種操作:
a.編輯:修改邏輯流的名稱、優先級和狀態等基礎資訊;
b.啟用:啟用或者停用邏輯流;
c.配置:打開邏輯流編排器,配置邏輯流的執行邏輯;
d.復制:復制當前邏輯流,創建一個新的邏輯流;
e.日志:查看邏輯流的歷史運行日志,可用來查看邏輯流某次運行的詳細日志,來診斷例外原因,針對邏輯流的運行結果狀態為例外的運行實體,支持通過“重試”操作重新運行,
邏輯流1:創建生產訂單,生成工序任務單
在“生產訂單”模型的“邏輯模型”下,操作“新建流程”按鈕,新增一個邏輯流 “生成工序任務單”:
新增完成后,點擊邏輯流右側的“配置”操作,打開邏輯流編排器,配置邏輯流的執行邏輯:
(1) 觸發器配置
觸發器用來觸發邏輯流運行,邏輯編排器目前支持以下觸發器型別,根據實際業務需求選擇相應的觸發器型別:
a.資料創建:在所選的觸發物件模型的資料實體創建時,自動觸發邏輯流的執行;
b.資料變更:在所選的觸發物件模型資料實體所設定的某些欄位值變化時,自動觸發邏輯流的執行;
c.用戶操作:當用戶在前端界面,操作執行當前模型定義的某個“用戶操作”按鈕,自動觸發邏輯流的執行;
d.定時觸發:按定時計劃策略觸發,需要設定任務執行周期(每小時/每天/每周/每月/每年)、計劃有效期范圍(開始日期/終止日期)等等,根據計劃策略定期自動定時觸發邏輯流的運行,“定時觸發”的邏輯流,支持配置“過濾規則”來按一定的條件來篩選觸發資料模型的資料實體范圍,
觸發器的“觸發物件”支持選擇當前業務模型的主資訊模型和其下的子資訊模型(比如在“產品”模型下創建的邏輯流的觸發物件,可選擇“產品資訊”主資料模型,也可選擇“BOM/BOM清單”等子模型),在邏輯流運行時,“觸發物件”所選定的業務模型的資料實體資訊自動放到邏輯流的輸入資訊背景關系,可被邏輯流中后續的“規則”或“動作”節點所使用,
用戶需要在創建“生產訂單”后,自動根據生產訂單的工藝路線拆解成程序工序資料來生成工序任務單,則“觸發器型別”選擇“資料創建”,然后觸發物件選擇“生產訂單”,填寫一個有業務含義的觸發器名稱“生產訂單創建”:
(2) 創建動作節點
點擊創建的“觸發器”后面的“+”圖示,選擇“添加動作(當前)”或者“添加動作(分支)”,可以創建一個動作節點,前者是在前一個節點(即觸發器節點)后面創建一個動作節點,后者是與前一個節點并行創建一個動作節點分支,
邏輯流的“動作”節點,主要有以下2個配置項:
- 輸出型別:目前支持創建資料、更新資料、管道快取和訊息通知四種輸出型別,其中“創建資料”和“更新資料”用來根據邏輯流的輸入資訊以及程序處理后的管道資料,來創建或者更新當前觸發物件模型的相關上下游業務物件的資料;“管道快取”是用來將當前動作節點的執行結果資料臨時快取下來,作為邏輯流后續節點(規則/動作)的資料輸入;“訊息通知”是用來將邏輯流運行的結果資料主動發送訊息通知用戶,
- 輸出模型:可選擇所有與觸發物件模型,以及動作節點處理后新增關聯的業務模型:
- 邏輯流的輸入模型(即觸發物件,比如“生產訂單”),以及程序處理后的管道中模型(比如生產訂單在邏輯流動作節點中關聯了“產品”、“工藝路線”等模型);
- 上面b1模型的子模型(比如“產品”的子模型“庫存出入庫記錄”)和父模型;
- 上面b1模型的被關聯模型,即某業務模型的資訊欄位如果關聯了b1模型,比如假設b1模型是“生產訂單”,“物料需求單”模型的資訊欄位關聯了“生產訂單”模型,則輸出模型可選到“物料需求單”模型,
如果在創建動作節點時,輸出模型選不到所需的業務模型,可以暫時留空,在動作節點中通過編排資料轉換邏輯來串聯補充其他相關的業務物件模型后,即可選擇到所需的業務模型,
用戶需要在創建“生產訂單”后,自動根據生產訂單的工藝路線來拆解后,創建相應的工序任務單資料,則“輸出型別”選擇“創建資料”,輸出模型選擇“工序任務單”,最后填寫一個有業務含義的動作名稱“創建工序任務”:
(3)配置動作節點的資料轉換邏輯
添加創建動作節點后,進入“動作配置器”,根據實際業務需求,在動作配置器中進一步編排“資料轉換邏輯”,以滿足目標輸出模型的資料需求:
“動作配置器”有以下3個配置項:

- 輸入資料欄位展示:左側展示當前動作節點的輸入資料資訊欄位,輸入資訊主要來自:前一個邏輯流節點的輸出資料欄位、用戶操作所定義的輸入引數欄位,
- 資料轉換邏輯編排:目前提供4類資料轉換算子節點:
關聯節點:用來獲取與輸入資料或者前一個資料轉換節點的輸出資料有關聯關系的其他業務物件的資料欄位;
拆分節點:用來獲取輸入資料或者前一個資料轉換節點的輸出資料的子模型資料;
計算節點:用來對輸入資料或者前一個資料轉換節點的輸出資料中的數值類欄位值進行四則運算處理或者參考標準函式進行資料處理;
聚合節點:用來對輸入資料或者前一個資料轉換節點的輸出資料按某些維度欄位匯總統計,
根據實際業務需求,靈活組合編排4類資料轉換算子節點,實作對動作節點的輸入資料進行資料轉換加工,以滿足當前動作節點最終輸出的資料結果需求
3.輸出資料欄位映射:將動作節點經過“資料轉換”處理后快取在資料管道中資料欄位,映射配置到輸出模型的欄位值,輸出模型欄位值,也支持手工輸入常值、參考標準函式運算結果和系統變數(系統時間、當前登錄人員等),
根據業務需求,需要將生產訂單按照其生產的工藝路線下的程序工序來拆分,創建相應的工序任務單資料,則需要在“創建工序任務”動作節點中:
a.添加一個關聯節點“關聯工藝路線”,來實作從輸入的“生產訂單”資料關聯獲取到相關的“工藝路線”主資料:
關聯轉換節點有以下3個配置區:
- 源模型:從動作節點的輸入資料或者前一個資料轉換節點的輸出資料中選擇所需的模型作為關聯轉換節點的輸入源資料,比如對于當前案例場景,“源模型”選擇“生產訂單”;
- 目標模型:根據關聯轉換節點所選的“源模型”業務物件,可選擇與該業務物件的資料模型存在關聯關系的其他業務物件的資料模型,在邏輯流運行時,會根據輸入的“源模型”資料實體自動串聯獲取到所選目標關聯模型的資料實體,比如對于當前案例場景,“目標關聯模型”選擇與“生產訂單”存在關聯關系的“工藝路線”;
- 目標欄位:配置關聯轉換節點需要回傳輸出的“目標模型”的具體資料欄位范圍,比如對于當前案例場景,“目標欄位”選擇需要從“工藝路線”資料中回傳的欄位范圍,
b.添加一個拆分轉換節點“展開工藝程序工序”,基于上一步關聯節點轉換輸出的“工藝路線”資料,來進一步獲取“工藝路線”資料下的“程序工序”子模型資料實作資料拆分轉換:
拆分轉換節點有以下3個配置項:
- 源模型:從動作節點的輸入資料或者前一個資料轉換節點的輸出資料中選擇所需的模型作為拆分轉換節點的輸入源資料,比如對于當前案例場景,“源模型”選擇前一個關聯節點的輸出“工藝路線”;
- 目標模型:根據關聯轉換節點所選的“源模型”業務物件,可選擇該業務物件的資料模型的子模型或者關聯了該業務物件的其他業務物件模型,在邏輯流運行時,會根據輸入的“源模型”資料實體自動串聯獲取到所選目標關聯模型的資料實體,比如對于當前案例場景,“目標模型”選擇“工藝路線”模型的子模型“程序工序”;
- 目標欄位:配置拆分轉換節點需要回傳輸出的“目標模型”的具體資料欄位范圍,比如對于當前案例場景,“目標欄位”選擇需要從“程序工序”資料中回傳的欄位范圍,
(4)輸出模型配置
通過“動作配置器”編排動作節點“創建工序任務”的“資料轉換邏輯”后,獲得滿足創建輸出模型“工序任務單”資料所需的工藝路線和程序工序資料后,最后按需映射配置“輸出模型”的欄位值,
“輸出模型配置器”有以下3個配置區:
- 管道資料展示:左側展示當前動作節點的輸入資料經過“資料轉換處理”后的資料欄位,
- 輸出模型欄位值映射:輸出欄位值的映射方式,支持以下4種方式:
- 拖動管道欄位:拖入映射左側資料管道中的資料欄位,“輸出模型配置器”會自動校驗管道欄位和輸出欄位的資料型別是否兼容(點擊“輸出模型”的表頭“欄位值”列后的提示圖示,可以查看詳細的欄位映射規則);
- 手工輸入固定常值:輸出模型欄位值支持直接手工錄入固定的常值;
- 參考標準函式計算:平臺內置了一些常用的資料計算函式,用戶可根據業務需求,點擊并拖動某個函式到某個輸出模型欄位,然后配置函式所需的引數值(引數支持選擇參考管道中的某個欄位值或者輸出模型的某個欄位值),以“計算實際工時”來舉例,可參考“日期間隔函式”拖動到“工序任務單”的“實際工時(分鐘)”欄位:
按需配置標準函式的引數值,支持參考管道資料欄位:
- 參考系統全域變數:平臺內置了一些系統全域變數,比如系統時間、當前登錄人員、當前人員組織等,支持拖動某個全域變數映射到某個輸出模型欄位,
對于輸出型別是“創建資料”的動作節點,輸出模型配置會自動校驗除了“資料標識”欄位以外其他所有的模型必填欄位都必需映射值(資料標識欄位留空時后臺會自動處理),對于“更新資料”等其他輸出型別的動作節點,對需要變更的欄位值配置映射值即可,
通過以上4個配置步驟,完成了“創建生產訂單,生成工序任務單”業務邏輯流的建模配置,
邏輯流2:操作生產訂單,生成物料需求單
“操作生產訂單,生成物料需求單”邏輯流需求:
用戶操作某個生產訂單上點擊“生成物料需求”按鈕時,根據生產訂單的產品欄位資訊和計劃產量,自動根據產品主資料展開獲取BOM物料清單資料,把展開的物料清單的基準數量乘以“生產訂單”的計劃產量得到物料需求數量,然后創建相應的物料需求單和需求物料明細資料,邏輯流中生成的物料需求單號,需要回填到“生產訂單”,
(1)新增用戶操作“生成物料需求”
在“生產訂單”模型上,新增一個用戶操作“生成物料需求”:
“用戶操作”有以下3個配置項:
- 操作物件:可選擇當前模型的主資訊模型及其子資訊模型,比如我們可以對“物料需求單”的主模型資料(即某個物料需求單)或者對物料需求單的子模型“物料需求明細”分別定義所需的用戶操作;
- 啟用引數:配置用戶在前端界面使用操作時,是否需要輸入一些引數資訊,比如下一個案例中“關閉生產訂單”操作,需要用戶輸入“關閉原因”,在下一個案例中,詳細介紹用戶操作的“引數”的配置方法;
- 用戶操作的前端顯示控制:支持配置用戶操作在前端顯示的規則條件:
比如控制已創建物料需求單的生產訂單不能再使用“生成物料需求”操作,則配置“生成物料需求”用戶操作可用顯示的規則條件為“生產訂單”的“關聯物料需求單”欄位值為空,
(2)創建用戶操作觸發的邏輯流
在新增的“生成物料需求”操作的配置視窗,可選擇“保存并配置邏輯流”,快速創建一個由用戶操作觸發執行的邏輯流,也可以先確定保存“用戶操作”,后續在新增邏輯流的觸發器配置中系結“用戶操作”:
“生成物料需求”的邏輯流的編排配置步驟中,與上面“創建生產訂單,生成工序任務單”的邏輯流中類似需求的配置方法不再展開說明:
差異性的需求以及相應邏輯流的配置方法,有以下3點:
1.物料需求數量的計算:輸出創建物料需求單明細中的物料需求數量的欄位值,需要按產品主資料拆分成BOM物料清單資料后,將物料清單上的基準數量乘以“生產訂單”的計劃產量來計算得到“物料需求數量”,
滿足此需求,需要在“創建物料需求單明細”的動作節點的“資料轉換邏輯”中使用到“計算節點”:
以下是計算節點“計算物料需求數量”的配置:
點擊“度量資訊欄位”右側的“添加”按鈕,添加一個計算欄位“物料需求數量”,依次配置:計算欄位名稱、計算欄位編碼,然后編輯計算公式:從左側資料管道中拖入“生產訂單”的“計劃產量”欄位和“BOM物料清單”的“數量”欄位作為計算引數,然后在中間輸入乘號“*”運算子,計算公式支持“+-*/”加減乘除四則運算子,支持點擊拖動參考標準函式計算,
2.按相同物料匯總需求數量后,生成物料需求明細:
需要將前序轉換節點輸出的物料清單資料,按相同物料編碼匯總需求數量后,再生成相應物料需求明細資料,
在“創建物料需求單明細”的動作節點,需要在“資料轉換邏輯”中使用到“聚合算子節點”:
以下是聚合節點“按物料匯總需求”的配置:
聚合轉換節點的配置說明:
- 勾選所需輸出的維度欄位:在左側資料管道欄位中,勾選聚合節點所需輸出的維度欄位,作為聚合運算的匯總維度,未勾選的欄位不會出現在聚合節點的輸出結果,比如對于當前案例,輸出模型需要資料管道中的BOM清單的物料、計量單位欄位,以及物料需求單的編碼欄位,則勾選左側資料管道中相應的欄位;
- 添加需要匯總計算的數值欄位:點擊“聚合資訊欄位”右側的“添加”按鈕,添加一個聚合計算欄位“物料需求數量匯總”,依次配置:聚合欄位名稱、聚合欄位編碼、選擇聚合計算型別為“總和”,然后編輯聚合計算公式:從左側資料管道中拖入需要匯總的“物料需求數量”欄位作為計算引數,計算公式支持“+-*/”加減乘除四則運算子,以及點擊拖動參考標準函式計算,
保存聚合節點后,我們配置輸出模型時,會看到資料管道中只保留了勾選的聚合維度欄位和計算欄位:
3.物料需求單的資料是“頭行結構”,創建物料需求單需要同步創建需求明細:
在邏輯流中先創建“生成物料需求單”動作節點,然后再創建“生成物料需求單明細”的動作節點,前一個動作節點,根據輸入的“生產訂單”資料實體,輸出創建相應的物料需求單資料,平臺自動將動作節點輸出創建的物料需求單資料添加到資料管道中;在后一個動作節點,輸出創建相應的物料需求單明細(即物料需求單的子模型“需求明細”)資料時,可以從資料管道中拿到創建“物料需求單明細”資料所需關聯的“物料需求單號”,
4.創建的物料需求單號,需要回填更新“生產訂單”:
前一個“創建物料需求單”動作節點輸出創建的物料需求單號,需要回填更新到“生產訂單”的“關聯物料需求單”欄位,
在“創建物料需求單”動作節點后,點擊“添加動作(分支)”,新增一個與“創建物料需求單明細”動作節點并行的分支節點“回填訂單需求單號”:
“回填訂單需求單號”動作節點的輸出型別選擇“更新資料”,然后配置輸出模型欄位:
對于輸出型別為“更新資料”的輸出模型配置說明:
- 如果資料管道中存在輸出模型的“資料標識”欄位(比如物料需求單的“編碼”),則拖動映射到輸出模型的“資料標識”欄位值,并勾選“過濾欄位”,通過“資料標識”值,來確定需要更新輸出模型的具體資料實體;
- 如果是需要組合一定的欄位條件來確定目標更新的輸出模型資料范圍,則拖動所需的資料管道欄位映射到輸出模型的相應欄位值并勾選“過濾欄位”,以及通過“輸出模型”選框右側的“配置過濾規則”來組合設定輸出模型的目標資料過濾條件:
至此,完成了 “操作生產訂單,生成物料需求單”業務邏輯流的建模配置,
邏輯流3:關閉生產訂單,自動關閉工序任務單
“關閉生產訂單,自動關閉工序任務單”邏輯流的需求:
針對“未開始/進行中/已完成”任一狀態的“生產訂單”,提供“關閉訂單”的操作按鈕,用戶操作“關閉訂單”按鈕時,需要填寫“關閉原因”后,然后驗證生產訂單的狀態是否滿足條件,不滿足條件提示用戶原因,如果滿足條件,則更新“生產訂單”的狀態為“已關閉”,將用戶填寫的“關閉原因”更新到“生產訂單”的“關閉原因”欄位,關閉“生產訂單”后,需要同步關閉 “生產訂單”相關的所有“工序任務單”,即更新工序任務單的狀態為“已關閉”,
(1)新增用戶操作“關閉”
在“生產訂單”模型上,新增一個用戶操作“關閉”,勾選“啟用引數?”:
“用戶操作”的引數配置視窗有以下2個配置項:

1.引數型別:引數支持兩種定義方式:
- 參考模型欄位:可以參考操作所屬業務模型的某個欄位來作為引數,參考模型欄位的引數,在用戶使用操作時,引數值會自動參考當前模型的資料實體上相應的欄位值,比如定義一個引數“執行人”參考“生產訂單”模型的“負責人”欄位,在用戶使用操作時,“執行人”引數值會自動默認為當前“生產訂單”的“負責人”;
- 自定義:選擇引數的欄位型別,支持數值、文本、日期、時間和陣列,其中“陣列”類引數,用來滿足這類業務需求:用戶在執行操作時,需要填寫多行資料作為輸入資訊,比如對于生產訂單拆分為多個訂單的需求場景,需要定義一個陣列類的引數來承載需要拆分成多個訂單資訊,
2.引數顯示控制:
- “僅顯示”:用來控制引數在前端界面只做展示不可編輯,通常適用于參考模型欄位的引數,來展示當前模型資料實體的相應欄位值作為用戶操作時的背景關系參考資訊,比如對于拆分生產訂單的場景,定義一個僅顯示的引數,參考“生產訂單”的“計劃產量”欄位,用來在前端操作視窗展示“生產訂單”拆分前的“計劃產量”資料,作為用戶使用拆分操作時的參考資訊;
- “必填”:用來控制引數在用戶使用操作時,是否要求引數值必須填寫,
針對“關閉訂單”操作,我們添加一個“自定義”型別的引數,欄位型別選“文本”,然后填寫引數在前端顯示的名稱,以及用于后臺傳遞的“引數編碼”,最后勾選“必填”,完成引數配置,
配置完成“關閉訂單”的引數后,選擇點擊“保存并配置邏輯流”,開始配置“關閉訂單”操作的處理邏輯流,
(2)新增規則節點,校驗訂單狀態
添加一個“規則”節點,配置規則條件:
規則節點有以下3個配置項:
1.規則編輯模式:提供“常規”和“腳本”兩種編輯規則條件的方式:
- 常規:完全圖形化的編輯規則條件,通常默認使用這種方式,可以滿足絕大部分場景需求;
- 腳本:手工填寫規則運算式,支持拖動參考左側管道中的資料欄位、系統全域變數或者參考標準函式作為運算式的引數,能實作復雜的規則運算式,
2.匹配規則:支持通過添加多個“條件組”來組合復雜的規則條件,每個條件組可以設定條件組合方式是“滿足所有條件”或者“滿足任一條件”,在條件組下,添加具體的條件:選擇“條件欄位”、選擇條件運算子,以及選擇或錄入條件值,
3.校驗提示文案:配置的提示文案內容,用來在邏輯流運行時,當規則判斷不滿足條件時,在前端提醒用戶,
針對“關閉訂單”的規則節點,“匹配規則”選擇“任一條件”,然后添加三個條件,依次配置“生產訂單”的狀態欄位允許滿足的三個狀態值:“進行中”、“已完成”和“未開始”,
“關閉訂單”邏輯流的其他編排配置步驟,與上面介紹“創建生產訂單,生成工序任務單”的邏輯流的配置方法類似,不再展開說明:
至此,完成了 “關閉生產訂單,自動關閉工序任務單”業務邏輯流的建模配置,
邏輯流4:確認完工入庫單,自動更新產品及倉庫庫存量
“確認完工入庫單,自動更新產品及倉庫庫存量”邏輯流的需求:
“完工入庫單”,提供“確認完成”的操作按鈕,用戶操作“確認完成”按鈕時,需要驗證“完工入庫單”的狀態是否滿足條件,不滿足條件提示用戶,如果滿足條件,則根據“完工入庫單”的“產品”、“倉庫”和“入庫數量”等資訊,更新相應產品主資料的“庫存現有量”,以及相應倉庫下產品的庫存現有量,最后更新“完工入庫單”狀態為“已完成”,
“確認完工入庫單”邏輯流涉及的編排配置方法,已經在上面幾個邏輯流案例中介紹過的,不再展開說明,
這里重點介紹“更新倉庫產品庫存”動作節點的配置方法:
- 輸出型別選擇“更新資料”,并且勾選“無匹配則創建資料”:因為在某產品第一次入庫到某個倉庫時,倉庫下不存在該產品的庫存現有量資料(即“倉庫”空間位置模型的子模型“產品庫存”中不存在該產品庫存的資料實體),那么第一次入庫是創建相應的產品庫存資料,后續的完工入庫操作則是更新相應的產品庫存資料,所以針對這種業務場景,需要勾選“無匹配則創建資料”,
- 配置輸出模型“倉庫-產品庫存”的欄位映射“完工入庫單”的“倉庫位置”和“產品”欄位值,并勾選“過濾欄位”,來匹配“倉庫-產品庫存”模型的目標資料,最后參考標準函式“當前值自增函式”來計算得到完工入庫后的“庫存現有量”:
“基準欄位”引數選擇輸出模型“倉庫-產品庫存”的“庫存現有量”欄位(可獲取相應倉庫產品的當前庫存量),“增量欄位”引數選擇“完工入庫單”的“入庫數量”,實作在倉庫下某產品的當前庫存量上增加“入庫數量”,
至此,我們完成了案例場景的4個業務邏輯流的建模配置,邏輯流建模完成后,需要啟用發布邏輯流以及所屬的業務模型,邏輯流才會生效:
(三)運行效果驗證
邏輯1:創建生產訂單,自動生成工序任務單
創建一個生產訂單,錄入訂單的生產“產品”、“工藝路線”和“計劃產量”等欄位資訊:
保存“生產訂單”后,進入創建的生產訂單的詳情編輯頁面,查看驗證是否同步創建相應的工序任務單:
邏輯流2:操作生產訂單,生成物料需求單
使用上一步創建的生產訂單,驗證是否有“生成物料需求”的操作按鈕:
然后點擊“生成物料需求”按鈕,等待執行完畢后,查看是否生成了相應的物料需求單、生產訂單上的“關聯物料需求單”欄位值是否已自動回填更新,以及“生成物料需求”按鈕是否已不可見:
查看生成的物料需求單的需求明細是否涵蓋了生產訂單上產品的BOM物料:
邏輯流3:關閉生產訂單,自動關閉工序任務單
使用上一步創建的生產訂單,驗證是否有“關閉”的操作按鈕:
然后點擊“關閉”按鈕,驗證是否彈窗需要錄入“關閉原因”:
確定后,驗證生產訂單、以及相關工序任務單的狀態是否已自動更新為“已關閉”:
邏輯流4:確認完工入庫單,自動更新產品及倉庫庫存
創建一個“完工入庫單”,錄入訂單的生產“產品”、“入庫數量”和“倉庫位置”等欄位資訊:
保存“完工入庫單”后,在完工入庫單的資料查看頁面,點擊操作,然后選擇“確認完成”:
等待操作執行完成后,在“產品”主資料功能,查看產品的現有量是否增加:
在“工廠>倉庫”主資料功能,查看“成品倉”倉庫下產品的現有量是否增加:
以上是結合一個實際的“生產執行管理”場景涉及的相關業務活動流程,系統地介紹了使用華為云數字工廠平臺的邏輯模型編排器,如何完成相關業務流程邏輯的建模和使用,下期將系統介紹如何使用華為云數字工廠平臺的“分析”模型配置器,來搭建業務資料統計分析類功能,
添加華為云IoT小助手微信hwc-iot,回復“數字工廠”,申請體驗華為云數字工廠
點擊關注,第一時間了解華為云新鮮技術~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/553313.html
標籤:其他
上一篇:開發者福利來了 | 京東云全系核心產品公開比價:我們承諾,買貴就賠!
下一篇:返回列表
