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

时间:2022-12-30 14:54:12

整体说明:

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 新增一条记录

流程定义相关的布署信息就存储在(1JBPM4_DEPLOYMENT、(2JBPM4_DEPLOYPROP(3JBPM4_LOB中。上传一个包含png和jpdl.xml的zip包后,JBPM4_DEPLOYMENT多一条记录 JBPM4_DEPLOYPROP 多三条, JBPM4_LOB多两条。
(4)JBPM4_HIST_PROCINST(5JBPM4_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身上。
(10JBPM4_VARIABLE存的是进行时的临时变量。
(11JBPM4_HIST_DETAIL保存 Variable的变更记录。
(12)JBPM4_HIST_VAR保存历史的变量 。
(13JBPM4_HIST_TASK Task的历史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER这三张表很常见了,基本的权限控制,关于用户认证方面建议还是自己开发一套,JBPM4的功能太简单了,使用中有很多需要难以满足。
(17JBPM4_JOB存放的是Timer的定义。

(18JBPM4_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_)

 

 

 

 

 

 

补充说明

 

 

 

流程定义相关的布署信息就存储在

1JBPM4_DEPLOYMENT、(2JBPM4_DEPLOYPROP3JBPM4_LOB中。上传一个包含pngjpdl.xmlzip包后,JBPM4_DEPLOYMENT多一条记录JBPM4_DEPLOYPROP多三条,JBPM4_LOB多两条。
4JBPM4_HIST_PROCINST5JBPM4_HIST_ACTINST分别存放的是Process InstanceActivity Instance的历史记录。
6JBPM4_EXECUTION主要是存放JBPM4的执行信息,Execution机制代替了JBPM3Token机制(详细参阅JBPM4PVM机制,过段时间我也会进一步分析)。
7JBPM4_TASK存放需要人来完成的Activities,需要人来参与完成的Activity被称为Task
8JBPM4_PARTICIPATION存放Participation的信息,Participation的种类有CandidateClientOwnerReplaced AssigneeViewer。而具体的Participation既可以是单一用户,也可以是用户组。
9JBPM4_SWIMLANESwim Lane是一种Runtime Process Role。通过Swim Lane,多个Task可以一次分配到同一Actor身上。
10JBPM4_VARIABLE 存的是进行时的临时变量。
11JBPM4_HIST_DETAIL保存Variable的变更记录。
12JBPM4_HIST_VAR保存历史的变量。
13JBPM4_HIST_TASKTask的历史信息。
14JBPM4_ID_GROUP15JBPM_ID_MEMBERSHIP16JBPM4_ID_USER 这三张表很常见了,基本的权限控制,关于用户认证方面建议还是自己开发一套,JBPM4的功能太简单了,使用中有很多需要难以满足。
17JBPM4_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 新增一条记录

流程定义相关的布署信息就存储在(1JBPM4_DEPLOYMENT、(2JBPM4_DEPLOYPROP(3JBPM4_LOB中。上传一个包含png和jpdl.xml的zip包后,JBPM4_DEPLOYMENT多一条记录 JBPM4_DEPLOYPROP 多三条, JBPM4_LOB多两条。
(4)JBPM4_HIST_PROCINST(5JBPM4_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身上。
(10JBPM4_VARIABLE存的是进行时的临时变量。
(11JBPM4_HIST_DETAIL保存 Variable的变更记录。
(12)JBPM4_HIST_VAR保存历史的变量 。
(13JBPM4_HIST_TASK Task的历史信息。
(14)JBPM4_ID_GROUP(15)JBPM_ID_MEMBERSHIP(16)JBPM4_ID_USER这三张表很常见了,基本的权限控制,关于用户认证方面建议还是自己开发一套,JBPM4的功能太简单了,使用中有很多需要难以满足。
(17JBPM4_JOB存放的是Timer的定义。

(18JBPM4_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_)

 

 

 

 

 

 

补充说明

 

 

 

流程定义相关的布署信息就存储在

1JBPM4_DEPLOYMENT、(2JBPM4_DEPLOYPROP3JBPM4_LOB中。上传一个包含pngjpdl.xmlzip包后,JBPM4_DEPLOYMENT多一条记录JBPM4_DEPLOYPROP多三条,JBPM4_LOB多两条。
4JBPM4_HIST_PROCINST5JBPM4_HIST_ACTINST分别存放的是Process InstanceActivity Instance的历史记录。
6JBPM4_EXECUTION主要是存放JBPM4的执行信息,Execution机制代替了JBPM3Token机制(详细参阅JBPM4PVM机制,过段时间我也会进一步分析)。
7JBPM4_TASK存放需要人来完成的Activities,需要人来参与完成的Activity被称为Task
8JBPM4_PARTICIPATION存放Participation的信息,Participation的种类有CandidateClientOwnerReplaced AssigneeViewer。而具体的Participation既可以是单一用户,也可以是用户组。
9JBPM4_SWIMLANESwim Lane是一种Runtime Process Role。通过Swim Lane,多个Task可以一次分配到同一Actor身上。
10JBPM4_VARIABLE 存的是进行时的临时变量。
11JBPM4_HIST_DETAIL保存Variable的变更记录。
12JBPM4_HIST_VAR保存历史的变量。
13JBPM4_HIST_TASKTask的历史信息。
14JBPM4_ID_GROUP15JBPM_ID_MEMBERSHIP16JBPM4_ID_USER 这三张表很常见了,基本的权限控制,关于用户认证方面建议还是自己开发一套,JBPM4的功能太简单了,使用中有很多需要难以满足。
17JBPM4_JOB 存放的是Timer的定义。