jbpm4.3表结构和表字段说明

整体说明:

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分别存放的是ProcessInstance、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的定义。

地址:http://blog.csdn.net/gamestart104/article/details/8608558

上一篇:leetcode dfs Validate Binary Search Tree


下一篇:.net 服务因为GC时遇到的问题和解决办法