• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 一套完整自定義工作流的實現(2)

    發表于:2014-05-23來源:博客園作者:王洪劍點擊數: 標簽:
    (關聯角色表與員工表) 5)、步驟角色關系表S_action_role(action_role_id,action_id,role_id) (關聯角色表與步驟表) 6)、下一處理人表L_loan_next_emp(loan_next_emp_id,loan_id,ne

      (關聯角色表與員工表)

      5)、步驟角色關系表S_action_role(action_role_id,action_id,role_id)

      (關聯角色表與步驟表)

      6)、下一處理人表L_loan_next_emp(loan_next_emp_id,loan_id,next_emp_id,step_id)

      (其中next_emp_id關聯操作員工表E_emp_info,step_id關聯S_action_info)

      其中數據流向如下:

      1)業務最開始發生時,數據主表L_loan_info插入數據,其step_id為其所在流程的第一個步驟的編號,可根據下一步驟的重復次數來去將下一處理人的操作員編號插入到下一處理人表L_loan_next_emp中;插入流程處理明細表中數據,step_id為當前步驟編號;更新主表 L_loan_info的step_id為下一步驟編號;

      2)流程進入下一步驟;

      3)下一處理人可查看當前待處理數據(以及本環節待處理數據),選定進行處理,將處理結果(0:不通過,1:通過,2:退回,3:否決)插入到流程處理明細表中,若為通過由更新主表L_loan_info的step_id為下一步驟編號,退回更新為上一步驟編號,否決則更新到第一個步驟編號;

      4)在本人已處理數據中可查看已處理過的數據,若下一步驟中操作員還沒有進行操作,則可對數據操作進行撤回,撤回時將處理結果(4:撤回)插入到流程處理明細表中,其中的next_emp_id為本人操作員工編號);更新主表L_loan_info的step_id為流程的第一步驟的編號;

      5)下一處理人繼續3)、4)的循環,直至流程的結束;

      6)流程最后一個步驟,將處理結果中step_id值為0插入至流程處理明細中。

      第三部分、實現細節

      1、第一步驟中獲得數據列表代碼如下:

      ?

    1
    SELECT * FROM L_loan_info WHERE step_id=@step_id

      其中@step_id使用代碼得到當前數據的第一步驟編號

      2、第一步驟獲得已處理數據列表代碼:

      ?

    1
    SELECT * FROM L_loan_info WHERE loan_id IN (SELECT DISTINCT loan_id<br> FROM l_tranct_proc WHERE step_id=@step_id)

      3、獲得任一步驟數據列表(含未處理和已處理)

      View Code

      以上為核心代碼,當然由于工作流的具體需求不同,可調整相應代碼。

      第四部分、運行結果

      1、系統參數配置

      2、待處理列表

      3、處理頁面

      (注:當前為最后一處理,下一處理人選擇不可見)

      4、撤回頁面

    原文轉自:http://kb.cnblogs.com/page/70376/

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>