在企業的簽核單據中,經常會有多個人一起簽核意見的情況,當然我們也可以一個個依次貼入多個活動元件來讓個別的對象簽核,但這樣會有時效性的問題,就是必須上一個人簽完後才能讓下一個人簽核,因此,在EEP WF的系統中,我們提供了一個 ParallelActivity活動元件來專門處理這種多個對象同時簽核的情況,這種活動會平行觸發多條方向同時簽核,可以提高企業的運作效率。另外,此活動元件中也可以設定多個活動是「AND」或「OR」的關係,一般沒有設定都是代表「AND」,就是所有活動中都必須全部簽核才能到下一個活動(我們稱之會簽功能),否則會一直等待簽核;「OR」則代表平行的活動中,只要有一人審核了,就自動往下一個活動(我們稱之為平行簽核),端看你的流程需求而定。
Step1>
在原來的Customers.Xoml當中,經過主管審核後,我們希望這個客戶的申請能指派一個服務窗口給他,因為服務窗口的指派與信用審核不衝突,因此,我們在主管審核後分流同時進行服務窗口與信用審核的指派,並且在信用審核與服務窗口指派都必須被簽核過關後,才會進入「通過通知」的活動中,為此,我們特別在Customers這個資料表中,增加了ServiceRole欄位(nVarchar 20),代表服務窗口的角色代號(Groups的GroupID),如下:
Step2>
因為sCustomers.dll這個Server端的模組,之前我們是使用「Select * From Customers」的方式下達SQL語句,因此SCustomers.dll就無須重新編譯,即可取出新的ServiceRole欄位。接著,我們打開rCustomersFL這個專案。選中RWDDataForm的Edit Columns屬性,打開RWDFormColumn,添加ServiceRole欄位,並將它上提至CreditAmount下。
Step3>
以FLDesigner打開Customers.Xoml,首先在「主管審核」與「信用額度審核」間拖入ParallelActivity活動元件,如圖,拖入後,請立即將「信用額度審核」的IfElseActivity活動元件整個拖入右邊的ParallelActivity間(在sequenceActivity2的下方)。
Step4>
ParallelActivity的「Description」是用來設定是否為會簽或平行簽核,設為「AND」代表為會簽,設為「OR」代表為平行簽核,在這裡我們輸入AND。
Step5>
接著,我們再拖入一個FLStand標準活動於ParallelActivity的左方(在sequenceActivity1的下方),如圖,我們按下文來設定此活動元件。
現將這個FLStand的活動元件,屬性設定如下:
(Name):活動名稱,直接輸入指定服務窗口。
NavigatorMode:設定打開此表單後,要控制其Navigator的進入的狀態,此活動因為要能夠讓其對象可以更改,因此我們設定為Modify,代表可以對資料進行更改的動作 (不能新增/刪除/查詢資料等等),目前是可以更改所有欄位,如果要控制只能輸入ServiceRole欄位,我們將在進階設計中來說明如何控制。
FLNavigatorMode:在此設定為Approve,代表將顯示「審核」與「退回」的按鈕,而不是Summit的「呈送」按鈕。
SendToKind:活動的對象種類,我們設定為 Role,代表此活動指定了一個特定的角色來指定服務窗口的動作。
SendToRole:活動的簽核角色,當本活動設定SendToKind為Role之後,就必須在SendToRole中來定義簽核角色。因為我們是要交給客服經理來負責服務窗口的指定,因此我們設定為R05,可以透過此SendToRole右方的下拉選項來選擇角色代號。
WebFormName:請選擇一個RWD的表單名稱,同樣選擇RWDClient.rCustomersFL這個表單。
最後別忘了對此Customers.Xoml進行存檔。
Step6>
同樣以003這個User來登入,點選「客戶申請」這個表單,接著我們輸入一筆客戶資料,信用額度我們輸入11萬,目的是為了不經過總經理審核,但又需經行政經理信用審核,服務處窗口我們暫時不輸入,最後我們按下「呈送」後,會自動送往R02業務經理待辦中。
Step7>
使用005登入,再從「待辦事項」中找到0007這個申請單,點擊「審核」輸入完批示意見後按下「確認」,系統會告知同時送往 R05客服經理(指定服務窗口),與R03行政經理(信用審核)等兩個活動,代表此兩個角色會同時收到此單據。
Step8>
我們先使用002登入,再從「待辦事項」中找到0007這個申請單,當按下「確認」時,系統會告知「等待對象」R05(客服經理),此代表在會簽當中,不管有多少對象,系統會清楚告知還要等待多少對象。
此會簽會有一個現象,就是必須大家協同一致的方向,不能有的是選擇審核,有的選擇退回,這樣系統會提出「你不能退回/前進,因為另一個的狀態為前進/退回」。
Step9>
接著使用007登入,再從「待辦事項」中找到0007這個申請單,如圖,可以按下「打開」來更改「服務窗口」的欄位,此時我們設定為R04,代表指定某一個工程師的角色,為了配合下一節的動態角色,我們在此還是輸入角色代號,不然一般情況下,都會以USER代號為主。
更改後按下「審核」存檔,最後按下「確定」送出,因後面只剩下申請者003的通過通知活動,因此系統會告知本流程已結案的訊息。
Related Topics