第 5 章Workflow 進階設計第 5 章Workflow 進階設計\5-7動態流程處理

5-7動態流程處理

 

 

在一般情況下,作業流程都是事先規劃好並被XOML事先定義好了,但有些流程是無法事先定義好的,必須由呈送者來指定呈送流程,因此如果要滿足動態決定的流程,就須透過FLDetails來動態設定流程的步驟與其呈送對象。下文中,我們將此客戶申請流程改用動態的決定方式,交給申請者自行決定流程,如下的設計步驟:

 

Step1先準備好一個CustomerFLDetails這個Table,結構如下:

 

其中Primary Key主鍵欄位設定為 CustomerID; SeqID

SQL語法如下

create table CustomerFLDetails

(

  CustomerID nchar(5) not null,

  SeqID nvarchar(2) not null,

  RoleID nvarchar(10) null,

  Parallel char(1) not null,

  constraint PK_CustomerFLDetails PRIMARY KEY(CustomerID,SeqID)

)

Table創建完成以後,在EEPManager.exe/DataDictionary中新增CustomerFLDetails這個table,並對其做如下設定

FieldName

Caption

Control Type

CustomerID

客戶編號

 

SeqID

次序

 

RoleID

對象角色

RefValBox

Parallel

會簽處理

 

 

Step2接著使用Server Wizard產生一個名為SCustomers2Package其中Customers為主檔,CustomerFLDetails為明細檔Customers.CustomerIDCustomerFLDetails.CustomerID作為Relation

 

手動在SCustomers2上添加一個名為RolesInfoCommand如下圖:

 

設定好后,重新建置。Build完成SCustomers2.DLL後,在EEPNetServer中將此DLL註冊到PackageManager中。

 

Step3使用JQuery Web Wizard產生一個JQueryMasterDetail1TemplateWeb Form,我們將其命名為WCustomers2,產生時,Details選次序、對象角色和會簽處理三個欄位即可,次序則為動態產生活動的順序,對象角色使用RefValBox用選的(D.D.中定義),會簽處理如果為’Y’代表該活動與上一個活動為平行會簽。產生完成後,同樣將JQDataFormIsShowFlowIcon更換為True

 

 

Step4進入 FLDesigner.exe,打開 CUSTOMERS.XOML,將原來的「信用審核流程」(FLSubFlow)刪除,改用FLDetails,並將其命名為「客戶資料簽核」

 

 

接著,我們進行屬性設定,定義如下圖,這裡要說明如下的屬性:

 

DetailsTableNameFLDetails活動元件參照Table名稱

RelationKeys主檔TableFLDetails活動元件參照Table名稱關聯欄位

ParallelField會簽參照欄位,當此欄位的值為”Y”代表該活動與上一個活動為平行會簽;

SendToField簽核指定角色欄位。

 

為了配合這個流程的設定,請將Customers.xoml中的其他活動的WebFormName都改成WCustomers2這個Web表單。

 

Step5003User 等入「Logon.aspx」打開「客戶申請」CUSTOMERS.XOML開啟WCustomers2.aspx輸入如下 C020資料,在Detail中輸入三個角色,前兩個客服經理與專案經理為會簽,往下則還有行政經理簽核等。輸入完畢後將資料上呈至005

 

 

003送出後,同樣會呈送給005業務經理,當005業務經理審核後,則透過FLDetails首先會送出給007客服經理及010的專案經理,等這兩位一起會簽完畢後,會繼續給002行政經理來簽核,最後等002簽核完畢才會送出通過通知,並結束該流程。

 

 

 

 

 

 

 

 

Top of Page