隨筆-19  評論-128  文章-1  trackbacks-0
          首先,在jbpm4中,流程定義相關的部署信息就存在JBPM4_DEPLOYMENTJBPM4_DEPLOYPROPJBPM4_LOB (存放當發布一個png和xml文件后的流程定義后的記錄)。中。

          JBPM4_HIST_PROCINSTJBPM4_HIST_ACTINST兩張表中,分別存放的是process Instance、Activity Instance的歷史記錄,Activity Instance是指流程定義中各個步驟:task descition等存放Process Instance、Activity Instance歷史記錄的表有了,那他們的當前記錄存在什么地方呢?這就需要弄清楚jBPM的另外幾個概念。一般而言,在jBPM中,“a process instance is the root of a tree of executions”。因此,當一個流程實例Split出兩個并行步驟的時候,在JBPM4_EXECUTION表中將有三筆相關記錄,一筆是代表流程實例的Root Execution,另外兩筆是關于上述兩個并行步驟的Child Execution。

          此外,在jbpm中,Activity的種類是很豐富的,可以是Control Flow Activities,如sub-process,decision等,也可以是Automatic Activity,如java、script、sql等,其中需要人來參與完成的Activity被稱為Task,待辦任務放在JBPM4_TASK表中,而歷史任務放在JBPM4_HIST_TASK表中。

          對一個Task而言,它可能會有多個Participation(swim lane 同樣會有多個Participation),Participation的種類有Candidate、client、owner、Replaced Assignee和viewer,而具體的Participation既可以是單一用戶,也可以是用戶組,Participation的信息存放在JBPM4_PARTICIPATION中。

          Swim Lane是一種Runtime Process Role,通過Swim Lane,多個Task可以一次分配到同一Actor身上,存放這些信息是表JBPM4_PARTICIPATION

          JBPM4_ID_GROUPJBPM4_ID_MEMBERSHIPJBPM4_ID_USER這是基本的權限控制,建議關于用戶認證方面還是自己開發一套,這個功能太簡單了,難以滿足需求。

          JBPM4_JOB存放的是Timer的定義。

          JBPM4_PROPERTY這是jbpm引擎參數表。

          JBPM4_VAR表存放流程臨時變量,當流程實例結束后,表中內容清除。

          JBPM4_HIST_VAR表存放歷史臨時變量,但是jbpm4好像還沒有對這張表進行利用。

          JBPM4_HIST_DETAIL表保存變量變更記錄。



          了解jbpm4.3以上這18張表后,我們應該在流程運行中,詳細觀察jbpm是如何對這些表進行操作,以及進行什么樣的操作的。

          發布一個流程定義后:

          JBPM4_DEPLOYMENT新增一條記錄

          JBPM4_DEPLOYPROP新增三條記錄

          JBPM4_LOB新增兩條記錄



          開始一個流程startProcessInstanceByKey后:

          JBPM4_EXECUTION新增一條記錄

          JBPM4_TASK新增一條記錄

          JBPM4_HIST_PROCINSTJBPM4_HIST_ACTINST分別新增一條記錄

          JBPM4_HIST_TASK新增一條記錄



          當執行taskService.setVariables(task.getId(), map);時,JBPM4_VARIABLES中添加變量記錄
           
          轉載人員:Nicholas
          posted on 2010-09-16 19:51 obpm 閱讀(1272) 評論(0)  編輯  收藏 所屬分類: 流程數據庫

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 平塘县| 五指山市| 石家庄市| 土默特左旗| 如皋市| 辽源市| 教育| 兴义市| 邯郸市| 舒兰市| 无为县| 双流县| 双桥区| 蒙自县| 华蓥市| 淮北市| 绥芬河市| 伊金霍洛旗| 鄂尔多斯市| 塔河县| 天津市| 苍溪县| 泗水县| 新余市| 洛阳市| 肃宁县| 灵川县| 虎林市| 双柏县| 河北省| 株洲县| 隆德县| 巴里| 宁夏| 福清市| 绿春县| 沽源县| 满洲里市| 苍南县| 湖州市| 黑河市|