隨筆-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 閱讀(1265) 評論(0)  編輯  收藏 所屬分類: 流程數據庫

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


          網站導航:
           
          主站蜘蛛池模板: 荥经县| 正蓝旗| 浦北县| 绥阳县| 新河县| 法库县| 茌平县| 瑞昌市| 微山县| 九台市| 阿尔山市| 龙江县| 凯里市| 洛隆县| 长宁区| 南和县| 沙洋县| 盐池县| 长寿区| 贺兰县| 合肥市| 阿拉善盟| 津南区| 霍山县| 屏山县| 汽车| 通辽市| 双辽市| 柘荣县| 海阳市| 龙里县| 聂荣县| 和硕县| 镇巴县| 景泰县| 石屏县| 黄冈市| 高安市| 合肥市| 安西县| 合山市|