整體說明:
JBPM4_DEPLOYMENT 流程定義表
JBPM4_DEPLOYPROP 流程定義屬性表
JBPM4_EXECUTION 流程實例表
JBPM4_HIST_ACTINST 流程活動(節點)實例表
JBPM4_HIST_DETAIL 流程歷史詳細表
JBPM4_HIST_PROCINST流程實例歷史表
JBPM4_HIST_TASK 流程任務實例歷史表
JBPM4_HIST_VAR 流程變量(上下文)歷史表
JBPM4_ID_GROUP 組表
JBPM4_ID_MEMBERSHIP 用戶角色表
JBPM4_ID_USER 用戶表
JBPM4_JOB 定時表
JBPM4_LOB 存儲表
JBPM4_PARTICIPATION 參與者表
JBPM4_SWIMLANE 泳道表
JBPM4_TASK 任務表
JBPM4_VARIABLE 上下文表
紅 色的表爲經常使用的表.這裏不使用JBPM自己的權限角色定義.
發佈一個流程deploy後
jbpm4_deployment新增一條記錄
jbpm4_deployprop新增三條記錄
jbpm4_lob 新增一條記錄
開始一個流程startProcessInstanceByKey後
jbpm4_execution新增一條記錄
jbpm4_hist_actinst 新增一條記錄
jbpm4_hist_procinst新增一條記錄
jbpm4_hist_task新增一條記錄
jbpm4_task 新增一條記錄
流程定義相關的佈署信息就存儲在(1)JBPM4_DEPLOYMENT、(2)JBPM4_DEPLOYPROP及(3)JBPM4_LOB中。上傳一個包含png和jpdl.xml的zip包後,JBPM4_DEPLOYMENT多一條記錄
JBPM4_DEPLOYPROP 多三條, JBPM4_LOB多兩條。
(4)JBPM4_HIST_PROCINST與(5)JBPM4_HIST_ACTINST分別存放的是Process
Instance、Activity Instance的歷史記錄。
(6)JBPM4_EXECUTION主要是存放JBPM4的執行信息,Execution機制代替了JBPM3的Token機制(詳細參閱JBPM4的PVM機制,過段時間我也會進一步分析)。
(7)JBPM4_TASK存放需要人來完成的Activities,需要人來參與完成的Activity 被稱爲Task。
(8)JBPM4_PARTICIPATION存放 Participation的信息,Participation的種類有Candidate、Client、Owner、Replaced Assignee和Viewer。而具體的Participation既可以是單一用戶,也可以是用戶組。
(9)JBPM4_SWIMLANE。Swim Lane是一種Runtime ProcessRole。通過Swim Lane,多個Task可以一次分配到同一Actor身上。
(10)JBPM4_VARIABLE存的是進行時的臨時變量。
(11)JBPM4_HIST_DETAIL保存 Variable的變更記錄。
(12)JBPM4_HIST_VAR保存歷史的變量 。
(13)JBPM4_HIST_TASK Task的歷史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER這三張表很常見了,基本的權限控制,關於用戶認證方面建議還是自己開發一套,JBPM4的功能太簡單了,使用中有很多需要難以滿足。
(17)JBPM4_JOB存放的是Timer
的定義。
(18)JBPM4_PROPERTY JBPM引擎參數表。
1.1.1.1. 表JBPM4_DEPLOYMENT
表名 |
流程定義表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
NAME_ |
CLOB |
Y |
|
流程模版名稱 |
TIMESTAMP_ |
NUMBER(19) |
Y |
|
時間戳 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
可用狀態 |
補充說明 |
|
|
1.1.1.2. 表JBPM4_DEPLOYPROP
表名 |
流程定義屬性表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
DEPLOYMENT_ |
NUMBER(19) |
Y |
FK(JBPM4_DEPLOYMENT, DBID_) |
流程ID |
OBJNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
流程名稱 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
類型 |
STRINGVAL_ |
VARCHAR2(255 CHAR) |
Y |
|
類型是字符串時的值 |
LONGVAL_ |
NUMBER(19) |
Y |
|
類型是數值時的值 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.3. 表JBPM4_EXECUTION
表名 |
流程實例表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程實例ID |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
步驟版本 |
ACTIVITYNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
節點名稱 |
PROCDEFID_ |
VARCHAR2(255 CHAR) |
Y |
|
流程定義ID |
HASVARS_ |
NUMBER(1) |
Y |
|
是否有變量值 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
名稱 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
UK |
令牌ID |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌狀態 |
SUSPHISTSTATE_ |
VARCHAR2(255 CHAR) |
Y |
|
保存暫停之前狀態 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
HISACTINST_ |
NUMBER(19) |
Y |
|
歷史活動實例ID |
PARENT_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
父實例 |
INSTANCE_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
流程實例 |
SUPEREXEC_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
父令牌 |
SUBPROCINST_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
子流程實例 |
PARENT_IDX_ |
NUMBER(10) |
Y |
|
父實例序號 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.4. 表JBPM4_HIST_ACTINST
表名 |
流程活動(節點)實例表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
activity類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
歷史流程實例 |
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例類型 |
EXECUTION_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌 |
ACTIVITY_NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例名稱 |
START_ |
TIMESTAMP(6) |
Y |
|
開始名稱 |
END_ |
TIMESTAMP(6) |
Y |
|
結束時間 |
DURATION_ |
NUMBER(19) |
Y |
|
節點停留時間 |
TRANSITION_ |
VARCHAR2(255 CHAR) |
Y |
|
遷移路徑 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
對應的定義任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.5. 表JBPM4_HIST_DETAIL
表名 |
流程歷史詳細表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
USERID_ |
VARCHAR2(255 CHAR) |
Y |
|
用戶ID |
TIME_ |
TIMESTAMP(6) |
Y |
|
時間 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
對應的歷史流程實例 |
HPROCIIDX_ |
NUMBER(10) |
Y |
|
|
HACTI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_ACTINST, DBID_) |
對應的歷史活動實例ID |
HACTIIDX_ |
NUMBER(10) |
Y |
|
|
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
對應的任務 |
HTASKIDX_ |
NUMBER(10) |
Y |
|
|
HVAR_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_VAR, DBID_) |
對應的變量值 |
HVARIDX_ |
NUMBER(10) |
Y |
|
|
MESSAGE_ |
CLOB |
Y |
|
消息 |
OLD_STR_ |
VARCHAR2(255 CHAR) |
Y |
|
老的String類型的值 |
NEW_STR_ |
VARCHAR2(255 CHAR) |
Y |
|
新的String類型的值 |
OLD_INT_ |
NUMBER(10) |
Y |
|
|
NEW_INT_ |
NUMBER(10) |
Y |
|
|
OLD_TIME_ |
TIMESTAMP(6) |
Y |
|
|
NEW_TIME_ |
TIMESTAMP(6) |
Y |
|
|
PARENT_ |
NUMBER(19) |
Y |
|
變量的父變量 |
PARENT_IDX_ |
NUMBER(10) |
Y |
|
變量的父變量序號 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.6. 表JBPM4_HIST_PROCINST
表名 |
流程實例歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PROCDEFID_ |
VARCHAR2(255 CHAR) |
Y |
|
流程定義ID |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
|
START_ |
TIMESTAMP(6) |
Y |
|
開始時間 |
END_ |
TIMESTAMP(6) |
Y |
|
結束時間 |
DURATION_ |
NUMBER(19) |
Y |
|
停留時間 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
流程實例狀態(活動,完成) |
ENDACTIVITY_ |
VARCHAR2(255 CHAR) |
Y |
|
是否完成 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.7. 表JBPM4_HIST_TASK
表名 |
流程任務實例歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
EXECUTION_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌 |
OUTCOME_ |
VARCHAR2(255 CHAR) |
Y |
|
路徑名稱 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
完成情況 |
CREATE_ |
TIMESTAMP(6) |
Y |
|
創建時間 |
END_ |
TIMESTAMP(6) |
Y |
|
完成時間 |
DURATION_ |
NUMBER(19) |
Y |
|
任務節點停留時間 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
SUPERTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
父任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.8. 表JBPM4_HIST_VAR
表名 |
流程變量(上下文)歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
PROCINSTID_ |
VARCHAR2(255 CHAR) |
Y |
|
對應運行的流程實例 |
EXECUTIONID_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例ID |
VARNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
變量名稱 |
VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
值 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
歷史流程實例 |
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
歷史任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.9. 表JBPM4_ID_GROUP
表名 |
組表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PARENT_ |
NUMBER(19) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.10. 表JBPM4_ID_MEMBERSHIP
表名 |
用戶角色表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
USER_ |
NUMBER(19) |
Y |
|
|
GROUP_ |
NUMBER(19) |
Y |
|
|
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.11. 表JBPM4_ID_USER
表名 |
用戶表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PASSWORD_ |
VARCHAR2(255 CHAR) |
Y |
|
|
GIVENNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
FAMILYNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
BUSINESSEMAIL_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.12. 表JBPM4_JOB
表名 |
定時表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
版本 |
DBVERSION_ |
NUMBER(10) |
N |
|
|
DUEDATE_ |
TIMESTAMP(6) |
Y |
|
到期時間 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
狀態 |
ISEXCLUSIVE_ |
NUMBER(1) |
Y |
|
是否可執行 |
LOCKOWNER_ |
VARCHAR2(255 CHAR) |
Y |
|
鎖定的參與者 |
LOCKEXPTIME_ |
TIMESTAMP(6) |
Y |
|
鎖定釋放時間 |
EXCEPTION_ |
CLOB |
Y |
|
活動實例 |
RETRIES_ |
NUMBER(10) |
Y |
|
重複次數 |
PROCESSINSTANCE_ |
NUMBER(19) |
Y |
|
流程實例 |
EXECUTION_ |
NUMBER(19) |
Y |
|
異常信息 |
CFG_ |
NUMBER(19) |
Y |
FK(JBPM4_LOB, DBID_) |
配置 |
SIGNAL_ |
VARCHAR2(255 CHAR) |
Y |
|
信號 |
EVENT_ |
VARCHAR2(255 CHAR) |
Y |
|
事件 |
REPEAT_ |
VARCHAR2(255 CHAR) |
Y |
|
重複 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.13. 表JBPM4_LOB
表名 |
存儲表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
BLOB_VALUE_ |
BLOB |
Y |
|
流程定義文件(xml、img、class) |
DEPLOYMENT_ |
NUMBER(19) |
Y |
FK(JBPM4_DEPLOYMENT, DBID_) |
流程模版標識ID |
NAME_ |
CLOB |
Y |
|
流程定義文件名 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.14. 表JBPM4_PARTICIPATION
表名 |
參與者表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
GROUPID_ |
VARCHAR2(255 CHAR) |
Y |
|
組ID |
USERID_ |
VARCHAR2(255 CHAR) |
Y |
|
用戶ID |
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
類型 |
TASK_ |
NUMBER(19) |
Y |
FK(JBPM4_SWIMLANE, DBID_) |
任務ID |
SWIMLANE_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK,DBID_) |
對應泳道 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.15. 表JBPM4_PROPERTY
表名 |
序列表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
KEY_ |
VARCHAR2(255 CHAR) |
N |
|
|
VERSION_ |
NUMBER(10) |
N |
|
|
VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.16. 表JBPM4_SWIMLANE
表名 |
泳道表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
泳道名 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
EXECUTION_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
活動實例 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.17. 表JBPM4_TASK
表名 |
任務表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
CLASS_ |
CHAR(1 CHAR) |
N |
|
類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動節點名稱 |
DESCR_ |
CLOB |
Y |
|
描述 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
狀態 |
SUSPHISTSTATE_ |
VARCHAR2(255 CHAR) |
Y |
|
保存暫停之前狀態 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
FORM_ |
VARCHAR2(255 CHAR) |
Y |
|
表單地址 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
CREATE_ |
TIMESTAMP(6) |
Y |
|
創建時間 |
DUEDATE_ |
TIMESTAMP(6) |
Y |
|
任務持續時間,表明任務應在多長時間內完成 |
PROGRESS_ |
NUMBER(10) |
Y |
|
活動實例名 |
SIGNALLING_ |
NUMBER(1) |
Y |
|
簽收 |
EXECUTION_ID_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例ID |
ACTIVITY_NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例名稱 |
HASVARS_ |
NUMBER(1) |
Y |
|
是否有流程變量 |
SUPERTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK, DBID_) |
父任務 |
EXECUTION_ |
NUMBER(19) |
Y |
|
活動實例 |
PROCINST_ |
NUMBER(19) |
Y |
|
流程實例 |
SWIMLANE_ |
NUMBER(19) |
Y |
FK(JBPM4_SWIMLANE, DBID_) |
對應的泳道 |
TASKDEFNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
任務定義名 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.18. 表JBPM4_VARIABLE
表名 |
上下文表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
版本 |
DBVERSION_ |
NUMBER(10) |
N |
|
變量類型 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
變量索引 |
CONVERTER_ |
VARCHAR2(255 CHAR) |
Y |
|
數值轉換器 |
HIST_ |
NUMBER(1) |
Y |
|
對應的流程實例 |
EXECUTION_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
活動實例 |
TASK_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK, DBID_) |
對應的任務 |
LOB_ |
NUMBER(19) |
Y |
FK(JBPM4_LOB, DBID_) |
|
DATE_VALUE_ |
TIMESTAMP(6) |
Y |
|
當值爲date類型時,存值 |
DOUBLE_VALUE_ |
FLOAT |
Y |
|
當值爲double類型時,存值 |
CLASSNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
變量類名 |
LONG_VALUE_ |
NUMBER(19) |
Y |
|
當值爲long類型時,存值 |
STRING_VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
當值爲String類型時,存值 |
TEXT_VALUE_ |
CLOB |
Y |
|
當值爲date類型時,存值 |
EXESYS_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
|
|
|
|
|
|
補充說明 |
|
|
流程定義相關的佈署信息就存儲在
(1)JBPM4_DEPLOYMENT、(2)JBPM4_DEPLOYPROP及(3)JBPM4_LOB中。上傳一個包含png和jpdl.xml的zip包後,JBPM4_DEPLOYMENT多一條記錄JBPM4_DEPLOYPROP多三條,JBPM4_LOB多兩條。
(4)JBPM4_HIST_PROCINST與(5)JBPM4_HIST_ACTINST分別存放的是Process
Instance、Activity Instance的歷史記錄。
(6)JBPM4_EXECUTION主要是存放JBPM4的執行信息,Execution機制代替了JBPM3的Token機制(詳細參閱JBPM4的PVM機制,過段時間我也會進一步分析)。
(7)JBPM4_TASK存放需要人來完成的Activities,需要人來參與完成的Activity被稱爲Task。
(8)JBPM4_PARTICIPATION存放Participation的信息,Participation的種類有Candidate、Client、Owner、Replaced
Assignee和Viewer。而具體的Participation既可以是單一用戶,也可以是用戶組。
(9)JBPM4_SWIMLANE。Swim Lane是一種Runtime
Process Role。通過Swim Lane,多個Task可以一次分配到同一Actor身上。
(10)JBPM4_VARIABLE 存的是進行時的臨時變量。
(11)JBPM4_HIST_DETAIL保存Variable的變更記錄。
(12)JBPM4_HIST_VAR保存歷史的變量。
(13)JBPM4_HIST_TASKTask的歷史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER 這三張表很常見了,基本的權限控制,關於用戶認證方面建議還是自己開發一套,JBPM4的功能太簡單了,使用中有很多需要難以滿足。
(17)JBPM4_JOB 存放的是Timer的定義。
整體說明:
JBPM4_DEPLOYMENT 流程定義表
JBPM4_DEPLOYPROP 流程定義屬性表
JBPM4_EXECUTION 流程實例表
JBPM4_HIST_ACTINST 流程活動(節點)實例表
JBPM4_HIST_DETAIL 流程歷史詳細表
JBPM4_HIST_PROCINST流程實例歷史表
JBPM4_HIST_TASK 流程任務實例歷史表
JBPM4_HIST_VAR 流程變量(上下文)歷史表
JBPM4_ID_GROUP 組表
JBPM4_ID_MEMBERSHIP 用戶角色表
JBPM4_ID_USER 用戶表
JBPM4_JOB 定時表
JBPM4_LOB 存儲表
JBPM4_PARTICIPATION 參與者表
JBPM4_SWIMLANE 泳道表
JBPM4_TASK 任務表
JBPM4_VARIABLE 上下文表
紅 色的表爲經常使用的表.這裏不使用JBPM自己的權限角色定義.
發佈一個流程deploy後
jbpm4_deployment新增一條記錄
jbpm4_deployprop新增三條記錄
jbpm4_lob 新增一條記錄
開始一個流程startProcessInstanceByKey後
jbpm4_execution新增一條記錄
jbpm4_hist_actinst 新增一條記錄
jbpm4_hist_procinst新增一條記錄
jbpm4_hist_task新增一條記錄
jbpm4_task 新增一條記錄
流程定義相關的佈署信息就存儲在(1)JBPM4_DEPLOYMENT、(2)JBPM4_DEPLOYPROP及(3)JBPM4_LOB中。上傳一個包含png和jpdl.xml的zip包後,JBPM4_DEPLOYMENT多一條記錄
JBPM4_DEPLOYPROP 多三條, JBPM4_LOB多兩條。
(4)JBPM4_HIST_PROCINST與(5)JBPM4_HIST_ACTINST分別存放的是Process
Instance、Activity Instance的歷史記錄。
(6)JBPM4_EXECUTION主要是存放JBPM4的執行信息,Execution機制代替了JBPM3的Token機制(詳細參閱JBPM4的PVM機制,過段時間我也會進一步分析)。
(7)JBPM4_TASK存放需要人來完成的Activities,需要人來參與完成的Activity 被稱爲Task。
(8)JBPM4_PARTICIPATION存放 Participation的信息,Participation的種類有Candidate、Client、Owner、Replaced Assignee和Viewer。而具體的Participation既可以是單一用戶,也可以是用戶組。
(9)JBPM4_SWIMLANE。Swim Lane是一種Runtime ProcessRole。通過Swim Lane,多個Task可以一次分配到同一Actor身上。
(10)JBPM4_VARIABLE存的是進行時的臨時變量。
(11)JBPM4_HIST_DETAIL保存 Variable的變更記錄。
(12)JBPM4_HIST_VAR保存歷史的變量 。
(13)JBPM4_HIST_TASK Task的歷史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER這三張表很常見了,基本的權限控制,關於用戶認證方面建議還是自己開發一套,JBPM4的功能太簡單了,使用中有很多需要難以滿足。
(17)JBPM4_JOB存放的是Timer
的定義。
(18)JBPM4_PROPERTY JBPM引擎參數表。
1.1.1.1. 表JBPM4_DEPLOYMENT
表名 |
流程定義表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
NAME_ |
CLOB |
Y |
|
流程模版名稱 |
TIMESTAMP_ |
NUMBER(19) |
Y |
|
時間戳 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
可用狀態 |
補充說明 |
|
|
1.1.1.2. 表JBPM4_DEPLOYPROP
表名 |
流程定義屬性表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
DEPLOYMENT_ |
NUMBER(19) |
Y |
FK(JBPM4_DEPLOYMENT, DBID_) |
流程ID |
OBJNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
流程名稱 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
類型 |
STRINGVAL_ |
VARCHAR2(255 CHAR) |
Y |
|
類型是字符串時的值 |
LONGVAL_ |
NUMBER(19) |
Y |
|
類型是數值時的值 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.3. 表JBPM4_EXECUTION
表名 |
流程實例表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程實例ID |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
步驟版本 |
ACTIVITYNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
節點名稱 |
PROCDEFID_ |
VARCHAR2(255 CHAR) |
Y |
|
流程定義ID |
HASVARS_ |
NUMBER(1) |
Y |
|
是否有變量值 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
名稱 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
UK |
令牌ID |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌狀態 |
SUSPHISTSTATE_ |
VARCHAR2(255 CHAR) |
Y |
|
保存暫停之前狀態 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
HISACTINST_ |
NUMBER(19) |
Y |
|
歷史活動實例ID |
PARENT_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
父實例 |
INSTANCE_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
流程實例 |
SUPEREXEC_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
父令牌 |
SUBPROCINST_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
子流程實例 |
PARENT_IDX_ |
NUMBER(10) |
Y |
|
父實例序號 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.4. 表JBPM4_HIST_ACTINST
表名 |
流程活動(節點)實例表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
activity類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
歷史流程實例 |
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例類型 |
EXECUTION_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌 |
ACTIVITY_NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例名稱 |
START_ |
TIMESTAMP(6) |
Y |
|
開始名稱 |
END_ |
TIMESTAMP(6) |
Y |
|
結束時間 |
DURATION_ |
NUMBER(19) |
Y |
|
節點停留時間 |
TRANSITION_ |
VARCHAR2(255 CHAR) |
Y |
|
遷移路徑 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
對應的定義任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.5. 表JBPM4_HIST_DETAIL
表名 |
流程歷史詳細表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
USERID_ |
VARCHAR2(255 CHAR) |
Y |
|
用戶ID |
TIME_ |
TIMESTAMP(6) |
Y |
|
時間 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
對應的歷史流程實例 |
HPROCIIDX_ |
NUMBER(10) |
Y |
|
|
HACTI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_ACTINST, DBID_) |
對應的歷史活動實例ID |
HACTIIDX_ |
NUMBER(10) |
Y |
|
|
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
對應的任務 |
HTASKIDX_ |
NUMBER(10) |
Y |
|
|
HVAR_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_VAR, DBID_) |
對應的變量值 |
HVARIDX_ |
NUMBER(10) |
Y |
|
|
MESSAGE_ |
CLOB |
Y |
|
消息 |
OLD_STR_ |
VARCHAR2(255 CHAR) |
Y |
|
老的String類型的值 |
NEW_STR_ |
VARCHAR2(255 CHAR) |
Y |
|
新的String類型的值 |
OLD_INT_ |
NUMBER(10) |
Y |
|
|
NEW_INT_ |
NUMBER(10) |
Y |
|
|
OLD_TIME_ |
TIMESTAMP(6) |
Y |
|
|
NEW_TIME_ |
TIMESTAMP(6) |
Y |
|
|
PARENT_ |
NUMBER(19) |
Y |
|
變量的父變量 |
PARENT_IDX_ |
NUMBER(10) |
Y |
|
變量的父變量序號 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.6. 表JBPM4_HIST_PROCINST
表名 |
流程實例歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PROCDEFID_ |
VARCHAR2(255 CHAR) |
Y |
|
流程定義ID |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
|
START_ |
TIMESTAMP(6) |
Y |
|
開始時間 |
END_ |
TIMESTAMP(6) |
Y |
|
結束時間 |
DURATION_ |
NUMBER(19) |
Y |
|
停留時間 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
流程實例狀態(活動,完成) |
ENDACTIVITY_ |
VARCHAR2(255 CHAR) |
Y |
|
是否完成 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.7. 表JBPM4_HIST_TASK
表名 |
流程任務實例歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
EXECUTION_ |
VARCHAR2(255 CHAR) |
Y |
|
令牌 |
OUTCOME_ |
VARCHAR2(255 CHAR) |
Y |
|
路徑名稱 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
完成情況 |
CREATE_ |
TIMESTAMP(6) |
Y |
|
創建時間 |
END_ |
TIMESTAMP(6) |
Y |
|
完成時間 |
DURATION_ |
NUMBER(19) |
Y |
|
任務節點停留時間 |
NEXTIDX_ |
NUMBER(10) |
Y |
|
|
SUPERTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
父任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.8. 表JBPM4_HIST_VAR
表名 |
流程變量(上下文)歷史表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
流程模版標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
PROCINSTID_ |
VARCHAR2(255 CHAR) |
Y |
|
對應運行的流程實例 |
EXECUTIONID_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例ID |
VARNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
變量名稱 |
VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
值 |
HPROCI_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_PROCINST, DBID_) |
歷史流程實例 |
HTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_HIST_TASK, DBID_) |
歷史任務 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.9. 表JBPM4_ID_GROUP
表名 |
組表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PARENT_ |
NUMBER(19) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.10. 表JBPM4_ID_MEMBERSHIP
表名 |
用戶角色表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
USER_ |
NUMBER(19) |
Y |
|
|
GROUP_ |
NUMBER(19) |
Y |
|
|
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.11. 表JBPM4_ID_USER
表名 |
用戶表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
|
|
DBVERSION_ |
NUMBER(10) |
N |
|
|
ID_ |
VARCHAR2(255 CHAR) |
Y |
|
|
PASSWORD_ |
VARCHAR2(255 CHAR) |
Y |
|
|
GIVENNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
FAMILYNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
|
BUSINESSEMAIL_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.12. 表JBPM4_JOB
表名 |
定時表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
版本 |
DBVERSION_ |
NUMBER(10) |
N |
|
|
DUEDATE_ |
TIMESTAMP(6) |
Y |
|
到期時間 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
狀態 |
ISEXCLUSIVE_ |
NUMBER(1) |
Y |
|
是否可執行 |
LOCKOWNER_ |
VARCHAR2(255 CHAR) |
Y |
|
鎖定的參與者 |
LOCKEXPTIME_ |
TIMESTAMP(6) |
Y |
|
鎖定釋放時間 |
EXCEPTION_ |
CLOB |
Y |
|
活動實例 |
RETRIES_ |
NUMBER(10) |
Y |
|
重複次數 |
PROCESSINSTANCE_ |
NUMBER(19) |
Y |
|
流程實例 |
EXECUTION_ |
NUMBER(19) |
Y |
|
異常信息 |
CFG_ |
NUMBER(19) |
Y |
FK(JBPM4_LOB, DBID_) |
配置 |
SIGNAL_ |
VARCHAR2(255 CHAR) |
Y |
|
信號 |
EVENT_ |
VARCHAR2(255 CHAR) |
Y |
|
事件 |
REPEAT_ |
VARCHAR2(255 CHAR) |
Y |
|
重複 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.13. 表JBPM4_LOB
表名 |
存儲表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
BLOB_VALUE_ |
BLOB |
Y |
|
流程定義文件(xml、img、class) |
DEPLOYMENT_ |
NUMBER(19) |
Y |
FK(JBPM4_DEPLOYMENT, DBID_) |
流程模版標識ID |
NAME_ |
CLOB |
Y |
|
流程定義文件名 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.14. 表JBPM4_PARTICIPATION
表名 |
參與者表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
GROUPID_ |
VARCHAR2(255 CHAR) |
Y |
|
組ID |
USERID_ |
VARCHAR2(255 CHAR) |
Y |
|
用戶ID |
TYPE_ |
VARCHAR2(255 CHAR) |
Y |
|
類型 |
TASK_ |
NUMBER(19) |
Y |
FK(JBPM4_SWIMLANE, DBID_) |
任務ID |
SWIMLANE_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK,DBID_) |
對應泳道 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.15. 表JBPM4_PROPERTY
表名 |
序列表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
KEY_ |
VARCHAR2(255 CHAR) |
N |
|
|
VERSION_ |
NUMBER(10) |
N |
|
|
VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
|
|
|
|
|
|
補充說明 |
|
|
1.1.1.16. 表JBPM4_SWIMLANE
表名 |
泳道表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
泳道名 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
EXECUTION_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
活動實例 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.17. 表JBPM4_TASK
表名 |
任務表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
主鍵 |
CLASS_ |
CHAR(1 CHAR) |
N |
|
類型 |
DBVERSION_ |
NUMBER(10) |
N |
|
版本 |
NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動節點名稱 |
DESCR_ |
CLOB |
Y |
|
描述 |
STATE_ |
VARCHAR2(255 CHAR) |
Y |
|
狀態 |
SUSPHISTSTATE_ |
VARCHAR2(255 CHAR) |
Y |
|
保存暫停之前狀態 |
ASSIGNEE_ |
VARCHAR2(255 CHAR) |
Y |
|
處理人 |
FORM_ |
VARCHAR2(255 CHAR) |
Y |
|
表單地址 |
PRIORITY_ |
NUMBER(10) |
Y |
|
優先級 |
CREATE_ |
TIMESTAMP(6) |
Y |
|
創建時間 |
DUEDATE_ |
TIMESTAMP(6) |
Y |
|
任務持續時間,表明任務應在多長時間內完成 |
PROGRESS_ |
NUMBER(10) |
Y |
|
活動實例名 |
SIGNALLING_ |
NUMBER(1) |
Y |
|
簽收 |
EXECUTION_ID_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例ID |
ACTIVITY_NAME_ |
VARCHAR2(255 CHAR) |
Y |
|
活動實例名稱 |
HASVARS_ |
NUMBER(1) |
Y |
|
是否有流程變量 |
SUPERTASK_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK, DBID_) |
父任務 |
EXECUTION_ |
NUMBER(19) |
Y |
|
活動實例 |
PROCINST_ |
NUMBER(19) |
Y |
|
流程實例 |
SWIMLANE_ |
NUMBER(19) |
Y |
FK(JBPM4_SWIMLANE, DBID_) |
對應的泳道 |
TASKDEFNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
任務定義名 |
|
|
|
|
|
補充說明 |
|
|
1.1.1.18. 表JBPM4_VARIABLE
表名 |
上下文表 |
|||
列名 |
數據類型(精度範圍) |
空/非空 |
約束條件 |
中文名 |
DBID_ |
NUMBER(19) |
N |
PK |
標識 |
CLASS_ |
VARCHAR2(255 CHAR) |
N |
|
版本 |
DBVERSION_ |
NUMBER(10) |
N |
|
變量類型 |
KEY_ |
VARCHAR2(255 CHAR) |
Y |
|
變量索引 |
CONVERTER_ |
VARCHAR2(255 CHAR) |
Y |
|
數值轉換器 |
HIST_ |
NUMBER(1) |
Y |
|
對應的流程實例 |
EXECUTION_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
活動實例 |
TASK_ |
NUMBER(19) |
Y |
FK(JBPM4_TASK, DBID_) |
對應的任務 |
LOB_ |
NUMBER(19) |
Y |
FK(JBPM4_LOB, DBID_) |
|
DATE_VALUE_ |
TIMESTAMP(6) |
Y |
|
當值爲date類型時,存值 |
DOUBLE_VALUE_ |
FLOAT |
Y |
|
當值爲double類型時,存值 |
CLASSNAME_ |
VARCHAR2(255 CHAR) |
Y |
|
變量類名 |
LONG_VALUE_ |
NUMBER(19) |
Y |
|
當值爲long類型時,存值 |
STRING_VALUE_ |
VARCHAR2(255 CHAR) |
Y |
|
當值爲String類型時,存值 |
TEXT_VALUE_ |
CLOB |
Y |
|
當值爲date類型時,存值 |
EXESYS_ |
NUMBER(19) |
Y |
FK(JBPM4_EXECUTION, DBID_) |
|
|
|
|
|
|
補充說明 |
|
|
流程定義相關的佈署信息就存儲在
(1)JBPM4_DEPLOYMENT、(2)JBPM4_DEPLOYPROP及(3)JBPM4_LOB中。上傳一個包含png和jpdl.xml的zip包後,JBPM4_DEPLOYMENT多一條記錄JBPM4_DEPLOYPROP多三條,JBPM4_LOB多兩條。
(4)JBPM4_HIST_PROCINST與(5)JBPM4_HIST_ACTINST分別存放的是Process
Instance、Activity Instance的歷史記錄。
(6)JBPM4_EXECUTION主要是存放JBPM4的執行信息,Execution機制代替了JBPM3的Token機制(詳細參閱JBPM4的PVM機制,過段時間我也會進一步分析)。
(7)JBPM4_TASK存放需要人來完成的Activities,需要人來參與完成的Activity被稱爲Task。
(8)JBPM4_PARTICIPATION存放Participation的信息,Participation的種類有Candidate、Client、Owner、Replaced
Assignee和Viewer。而具體的Participation既可以是單一用戶,也可以是用戶組。
(9)JBPM4_SWIMLANE。Swim Lane是一種Runtime
Process Role。通過Swim Lane,多個Task可以一次分配到同一Actor身上。
(10)JBPM4_VARIABLE 存的是進行時的臨時變量。
(11)JBPM4_HIST_DETAIL保存Variable的變更記錄。
(12)JBPM4_HIST_VAR保存歷史的變量。
(13)JBPM4_HIST_TASKTask的歷史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER 這三張表很常見了,基本的權限控制,關於用戶認證方面建議還是自己開發一套,JBPM4的功能太簡單了,使用中有很多需要難以滿足。
(17)JBPM4_JOB 存放的是Timer的定義。