前面所使用的活動對象大都是固定的角色或是呈送者的直屬主管,但有些特殊情況下,會用到動態的角色,無法事先知道要送往哪一個對象,我們可以從FLStandard或FLApprove的「SendToKind」屬性中來了解動態的參考角色意義。其中共有RefRole與RefManager兩種參考角色,前者RefRole代表簽核的對象為該單據的某一個指定欄位內容,如上例中的ServiceRole欄位就存放著一個角色的代號,是在簽核過程的「指定服務窗口」時才被決定為R04,如果下一個活動被設定為RefRole者,將會送往該欄位所指定的角色R04的待辦中;後者RefManager則代表會送往該欄位指定角色的直屬主管,如上例中服務窗口為R04,則會送往R04的主管,依組織設定則為R05。
Step1>接著CustomersFL流程往下做,在指定服務窗口下方拖入一個FLStand標準活動,目的用來讓服務窗口確認,命名為服務窗口確認,此服務窗口是動態決定的,因此就必須使用到RefRole的型態,如圖:
現將這個FLStand的活動元件,屬性設定如下:
ID:活動名稱,直接輸入中文服務窗口確認。
NavigatorMode:設定打開此表單後,要控制其Navigator的進入的狀態,此
活動是不允許更改的,所以我們設定為Normal,代表不可以對資料進行任何
的動作 (不能新增/更改/刪除/查詢資料等等)。
FLNavigatorMode:在此設定為Continue,代表只顯示「上呈」的按鈕,而
不會顯示「審核」與「退回」的按鈕,目的就是讓此活動可以讓該角色得以確認,按下「上呈」的按鈕後即可讓流程往下持續。
SendToKind:活動的對象種類,我們設定為 RefRole,代表此活動指定了一個動態的參考的角色,必須另外定義SendToField來指定哪一個欄位名稱存有該參考角色的內容。
SendToField:當SendToKind為RefRole或RefManager時,即用此屬性來定義一個欄位名稱,用來存放該活動的對應角色,在此可以下拉選擇欄位名稱,我們選 ServiceRole這個欄位。
最後將CustomerFL存檔。
Step2>同樣以 003這個User登入,一樣打開「客戶申請」這個,接著我們輸入一筆客戶資料,如下:
我們將信用額度輸入為5萬,可以免簽總經理與行政經理,以簡化簽核流程。
Step3>使用005再從「待辦事項」中找到2407這個申請單,在待辦事項中直接審核,當按下「確認」時,系統只會告知送往R05客服經理(指定服務窗口),因為信用額度不超過10萬,所以不會送往R03行政經理(信用審核)的活動中。
Step4>接著使用R05客服經理004帳號再從「待辦事項」中找到2407這個申請單,在待辦事項中打開此單據,可直接更改「服務窗口」的欄位,此時我們設定為R04,代表指定某一個工程師的角色,因為R04(工程師)有1個USER(004),因此004工程師會收到待辦。
更改後按下「存檔」,最後按下「審核」,因為後面活動是根據ServiceRole來決定的,因此系統會告知已經送往 R04 (工程師),對象004。
Step5>我們使用004登入,再從「待辦事項」中找到2407這個申請單,在待辦事項中打開此單據,如圖因為此FLNavigatorMode為Continue ,所以只能往下呈送,呈送後往下為『通過通知』活動,所以不會停在申請者的待辦上,會自動將流程結案。
Related Topics