如何處理Teamcenter流程回退情況
近期會有很多Teamcenter實(shí)施工程師會來咨詢小迪,在配置workflow的時候流程的回退節(jié)點(diǎn)設(shè)置,到底是使用失敗路徑設(shè)置吶,還是通過handler設(shè)置?
相信很多人在以往的項目實(shí)施中經(jīng)常會按照往常的習(xí)慣,喜歡使用失敗的路徑方式,看起來比較直觀且可以很清晰地看到流程節(jié)點(diǎn)的各種流向。但是每次執(zhí)行到一半的時候你會發(fā)現(xiàn)有bug,同時經(jīng)驗豐富的人也會告訴你這種方式行不通。但是直覺告訴我,這種思維一定會被打破,于是小迪就去嘗試了下這種方法,并且收獲了一些不錯的成果。
首先我們來看看這個流程圖:
是不是看著非常的熟悉,而且也沒啥毛病。
可是小迪想說的是,這個流程是錯誤的,根本無法正常使用。
如果你強(qiáng)行使用它,很可能會遇到下面的現(xiàn)象:
1、流程直接報錯。
2、流程不報錯,但是無法前進(jìn),也無法后退,直接停止了。
3、當(dāng)Review節(jié)點(diǎn)拒絕時,流程就陷入了停止?fàn)顟B(tài),陷入了進(jìn)退兩難的境地。
此時流程一直在等待所有審核節(jié)點(diǎn)的拒絕信號。
4、如果在Approve節(jié)點(diǎn)拒絕,則會報錯:
此時流程就陷入了停止?fàn)顟B(tài),同樣陷入了進(jìn)退兩難的境地。
估計當(dāng)年的你,和小迪一樣都遇到了這樣的情況,然后就放棄了這種方法了,直接給它下個結(jié)論:此功能有bug。
小迪經(jīng)過一番折騰之后,把這個流程稍微調(diào)整了一下,如下圖所示:
小迪親測多次,此流程可以正常工作。
總結(jié):
這個流程的點(diǎn)睛之筆就在于那個Or節(jié)點(diǎn)。Or節(jié)點(diǎn)表示只要接收到任何一個退回信息,就進(jìn)行下一步任務(wù)。而原始流程最大的錯誤也是在這里,流程會一直等待所有退回節(jié)點(diǎn)的信息,以至于陷入了停滯狀態(tài)。
為了鞏固這塊知識點(diǎn),嘗試比較以下流程,并判斷其正確性:
Workflow1:
Workflow2:
Workflow3:
Workflow4:
答案揭曉:
錯誤。流程執(zhí)行完第一個節(jié)點(diǎn)Design時,就會停滯。
錯誤。流程執(zhí)行完第一個節(jié)點(diǎn)Design時,就會停滯。
錯誤。Or節(jié)點(diǎn)使用錯誤。
正確。其實(shí)細(xì)心的朋友可能就會發(fā)現(xiàn),這個流程剛好是Workflow1的改版,實(shí)現(xiàn)了每個節(jié)點(diǎn)在拒絕時,都會回退到它的上一個節(jié)點(diǎn)。
經(jīng)過多種流程設(shè)置方法的分析和總結(jié),收獲了幾個知識點(diǎn),跟大家一起分享下:
失敗路徑和Handler兩種方式,一定不要混合使用。
當(dāng)一個節(jié)點(diǎn)有多個輸入節(jié)點(diǎn)時,要善用Or節(jié)點(diǎn)。
設(shè)計出流程后要多場景綜合測試,不要理所當(dāng)然地認(rèn)為它就是正確的。
作者:許詩龍
審校:周維青
提交
PLM在汽車零部件行業(yè)中的地位和作用
如何處理Teamcenter流程回退情況
長安數(shù)字化制造產(chǎn)業(yè)升級項目
Process Simulate介紹
西門子面向機(jī)床行業(yè)的虛擬調(diào)試新技術(shù)應(yīng)用