JBPM 相关表介绍
表关系图JBPM 流程引擎的数据库结构图JBPM4 常用表结构及其说明
第一部分:表结构说明
Jbpm4 共有18张表,如下,其中红色的表为经常使用的表
一:资源库与运行时表结构JBPM4_DEPLOYMENT 流程定义表 JBPM4_DEPLOYPROP 流程定义属性表 JBPM4_EXECUTION 流程实例表 JBPM4_PROPERTY 流程引擎表 JBPM4_TASK 任务表 JBPM4_VARIABLE 上下文表 JBPM4_JOB 定时表 JBPM4_LOB 存储表 JBPM4_SWIMLANE泳道表 JBPM4_PARTICIPATION 参与者表
二: 历史数据表- JBPM4_HIST_ACTINST 流程活动(节点)实例表
- JBPM4_HIST_DETAIL 流程历史详细表
- JBPM4_HIST_PROCINST 流程实例历史表
- [backcolor=rgb(255, 255, 0) !important]JBPM4_HIST_TASK 流程任务实例历史表
- JBPM4_HIST_VAR 流程变量(上下文)历史表
三:身份认证表结构- JBPM4_ID_GROUP 组表
- JBPM4_ID_MEMBERSHIP 用户角色表
- JBPM4_ID_USER 用户表
这三张表很常见,基本的权限控制,关于用户认证方面建议还是自己开发一套,组件自带的功能太简单,使用中有很多需求难以满足
第二部分:表结构描述
一:表结构描述JBPM4_DEPLOYMENT 流程定义表 JBPM4_DEPLOYPROP 流程定义属性表 JBPM4_EXECUTION 流程实例表
主要是存放JBPM4的执行信息,Execution机制代替了JBPM3的Token机制。 JBPM4_PROPERTY 流程引擎表 JBPM4_TASK 任务表
存放需要人来完成的Activities,需要人来参与完成的Activity 被称为Task JBPM4_VARIABLE 上下文表 存的是进行时的临时变量 JBPM4_JOB 定时表 存放的是Timer的定义 JBPM4_LOB 存储表 JBPM4_SWIMLANE泳道表
Swim Lane是一种Runtime Process Role。通过Swim Lane,多个Task可以一次分配到同一Actor身上。 JBPM4_PARTICIPATION 参与者表
存放 Participation的信息,Participation的种类有Candidate、Client、Owner、 Replaced Assignee和Viewer。而具体的Participation既可以是单一用户,也可以是用户组。
二: 历史数据表- JBPM4_HIST_ACTINST 流程活动(节点)实例表 存放Activity Instance的历史记录
- JBPM4_HIST_DETAIL 流程历史详细表 保存Variable的变更记录
- JBPM4_HIST_PROCINST 流程实例历史表 存放Process Instance的历史信息
- [backcolor=rgb(255, 255, 0) !important]JBPM4_HIST_TASK 流程任务实例历史表 Task的历史信息。
- JBPM4_HIST_VAR 流程变量(上下文)历史表 保存历史的变量
第三部分:操作信息变化注意:以下操作步骤向表中增加记录的顺序(经过测试) 发布一个流程deploy后
Ø jbpm4_deployment(流程定义):新增一条记录
Ø jbpm4_lob(存储表): 新增一条记录
Ø jbpm4_deployprop(流程定义属性表):新增四条记录 上传一个zip包(包含png和jpdl.xml)后
Ø JBPM4_DEPLOYMENT多一条记录
Ø JBPM4_DEPLOYPROP 多三条
Ø JBPM4_LOB多两条。 开始一个流程startProcessInstanceByKey后
Ø jbpm4_execution(流程实例表):新增一条记录
Ø jbpm4_hist_procinst(流程实例历史表):新增一条记录
Ø jbpm4_variable (上下表):新增一条记录
Ø jbpm4_task (任务表):新增一条记录
Ø jbpm4_hist_task(任务历史表):新增一条记录
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录 填写申请信息
Ø jbpm4_variable(上下表) : 新增N条记录,根据表单信息决定
Ø jbpm4_task (任务表):新增一条记录
Ø jbpm4_hist_task(任务历史表):新增一条记录
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录 审批申请信息
1.同意:
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录
2.驳回:
Ø jbpm4_task (任务表):新增一条记录
Ø jbpm4_hist_task(任务历史表):新增一条记录
Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录
审批结束 Ø jbpm4_hist_actinst (活动节点实例表):新增一条记录
第四部分:相关SQL
- #流程定义的部署记录
- select * from JBPM4_DEPLOYMENT;
- #已部署的流程定义的具体属性
- select * from JBPM4_DEPLOYPROP;
- #JBPM4_LOB 存储流程定义相关的资源信息
- #包括 JPDL_XML ,图片, 用户代码 JAVA 类等。以二进制的格式统一存储在此表中。
- select * from JBPM4_LOB;
- /*发布一个流程deploy后
- jbpm4_deployment新增一条记录
- jbpm4_deployprop新增三条记录
- jbpm4_lob新增两条记录
- */
- #随着发布流程,及创建流程实例自增的ID,实现ID的唯一性
- select * from JBPM4_PROPERTY;
- #流程实例表(未完结的)
- select * from JBPM4_EXECUTION;
- #流程实例任务表(未完结的)
- select * from JBPM4_TASK t where TASKid = '320007';-- 320007
- #流程实例历史表
- select * from JBPM4_HIST_PROCINST;
- #流程节点(活动)历史表
- select * from JBPM4_HIST_ACTINST;
- #保存流程实例、活动实例、任务实例运行过程中历史明细数据
- select * from JBPM4_HIST_DETAIL ;
- #保存历史的任务实例记录
- select * from JBPM4_HIST_TASK;
- #流程实例变量表 存的是进行时的临时变量。当流程实例结束后,表中内容清除。
- select * from JBPM4_VARIABLE;
- /*
- 开始一个流程startProcessInstanceByKey后
- jbpm4_execution新增一条记录
- jbpm4_hist_actinst新增一条记录
- jbpm4_hist_procinst新增一条记录
- jbpm4_hist_task新增一条记录
- jbpm4_task新增一条记录
- */
- #泳道表 SwimLane是一种Runtime Process Role。通过SwimLane,多个Task可以一次分配到同一Actor身上
- select * from JBPM4_SWIMLANE;
- #定时表 存放的是Timer 的定义,异步活动或定时执行的JOB记录
- select * from JBPM4_JOB;
- #用户组表
- select * from JBPM4_ID_GROUP ;
- #保存用户和用户组之间的关联关系
- select * from JBPM_ID_MEMBERSHIP;
- #用户表
- select * from JBPM4_ID_USER;
- #引擎参数表
- select * from JBPM4_PROPERTY;
- /*记录JBPM的一些引擎参数
- 会保存一些初始设定的种子数据
- 例如引擎版本(KEY=db.version) ,ID生成器版本(KEY=next.dbid)
- KEY:引擎KEY 比如next.dbid 下次执行的DBID_
- VERSION:版本号
- VALUE:对应的引擎KEY的VALUE*/
复制代码
|