工作流JBPM系统数据库表介绍

2024-04-18 15:44

本文主要是介绍工作流JBPM系统数据库表介绍,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

      • ☃️4.1 建表
      • ☃️4.2 数据库逻辑关系
        • 4.2.1 资源库与运行时的表
        • 4.2.2 历史数据表
      • ☃️4.3 表结构
      • ☃️4.4 流程操作与数表交互说明


在这里插入图片描述

☃️4.1 建表

该系统自带18张表,用于支撑该系统的逻辑与流程业务;

建表语句如下:

create database jbpmdb;
use jbpmdb;DROP TABLE IF EXISTS `jbpm4_deployment`;
CREATE TABLE IF NOT EXISTS `jbpm4_deployment` (`DBID_` bigint(20) NOT NULL,`NAME_` longtext,`TIMESTAMP_` bigint(20) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_deployprop`;
CREATE TABLE IF NOT EXISTS `jbpm4_deployprop` (`DBID_` bigint(20) NOT NULL,`DEPLOYMENT_` bigint(20) DEFAULT NULL,`OBJNAME_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`STRINGVAL_` varchar(255) DEFAULT NULL,`LONGVAL_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_DEPLPROP_DEPL` (`DEPLOYMENT_`),KEY `FK_DEPLPROP_DEPL` (`DEPLOYMENT_`),CONSTRAINT `FK_DEPLPROP_DEPL` FOREIGN KEY (`DEPLOYMENT_`) REFERENCES `jbpm4_deployment` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_execution`;
CREATE TABLE IF NOT EXISTS `jbpm4_execution` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ACTIVITYNAME_` varchar(255) DEFAULT NULL,`PROCDEFID_` varchar(255) DEFAULT NULL,`HASVARS_` bit(1) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`ID_` varchar(255) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`SUSPHISTSTATE_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`HISACTINST_` bigint(20) DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`INSTANCE_` bigint(20) DEFAULT NULL,`SUPEREXEC_` bigint(20) DEFAULT NULL,`SUBPROCINST_` bigint(20) DEFAULT NULL,`PARENT_IDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`),UNIQUE KEY `ID_` (`ID_`),KEY `IDX_EXEC_SUPEREXEC` (`SUPEREXEC_`),KEY `IDX_EXEC_INSTANCE` (`INSTANCE_`),KEY `IDX_EXEC_SUBPI` (`SUBPROCINST_`),KEY `IDX_EXEC_PARENT` (`PARENT_`),KEY `FK_EXEC_PARENT` (`PARENT_`),KEY `FK_EXEC_SUBPI` (`SUBPROCINST_`),KEY `FK_EXEC_INSTANCE` (`INSTANCE_`),KEY `FK_EXEC_SUPEREXEC` (`SUPEREXEC_`),CONSTRAINT `FK_EXEC_INSTANCE` FOREIGN KEY (`INSTANCE_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_PARENT` FOREIGN KEY (`PARENT_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_SUBPI` FOREIGN KEY (`SUBPROCINST_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_EXEC_SUPEREXEC` FOREIGN KEY (`SUPEREXEC_`) REFERENCES `jbpm4_execution` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_actinst`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_actinst` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`EXECUTION_` varchar(255) DEFAULT NULL,`ACTIVITY_NAME_` varchar(255) DEFAULT NULL,`START_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`TRANSITION_` varchar(255) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HACTI_HPROCI` (`HPROCI_`),KEY `IDX_HTI_HTASK` (`HTASK_`),KEY `FK_HACTI_HPROCI` (`HPROCI_`),KEY `FK_HTI_HTASK` (`HTASK_`),CONSTRAINT `FK_HACTI_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HTI_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_detail`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_detail` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`USERID_` varchar(255) DEFAULT NULL,`TIME_` datetime DEFAULT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`HPROCIIDX_` int(11) DEFAULT NULL,`HACTI_` bigint(20) DEFAULT NULL,`HACTIIDX_` int(11) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,`HTASKIDX_` int(11) DEFAULT NULL,`HVAR_` bigint(20) DEFAULT NULL,`HVARIDX_` int(11) DEFAULT NULL,`MESSAGE_` longtext,`OLD_STR_` varchar(255) DEFAULT NULL,`NEW_STR_` varchar(255) DEFAULT NULL,`OLD_INT_` int(11) DEFAULT NULL,`NEW_INT_` int(11) DEFAULT NULL,`OLD_TIME_` datetime DEFAULT NULL,`NEW_TIME_` datetime DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`PARENT_IDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HDET_HACTI` (`HACTI_`),KEY `IDX_HDET_HPROCI` (`HPROCI_`),KEY `IDX_HDET_HVAR` (`HVAR_`),KEY `IDX_HDET_HTASK` (`HTASK_`),KEY `FK_HDETAIL_HPROCI` (`HPROCI_`),KEY `FK_HDETAIL_HACTI` (`HACTI_`),KEY `FK_HDETAIL_HTASK` (`HTASK_`),KEY `FK_HDETAIL_HVAR` (`HVAR_`),CONSTRAINT `FK_HDETAIL_HACTI` FOREIGN KEY (`HACTI_`) REFERENCES `jbpm4_hist_actinst` (`DBID_`),CONSTRAINT `FK_HDETAIL_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HDETAIL_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`),CONSTRAINT `FK_HDETAIL_HVAR` FOREIGN KEY (`HVAR_`) REFERENCES `jbpm4_hist_var` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_procinst`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_procinst` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`PROCDEFID_` varchar(255) DEFAULT NULL,`KEY_` varchar(255) DEFAULT NULL,`START_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`ENDACTIVITY_` varchar(255) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_task`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_task` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`EXECUTION_` varchar(255) DEFAULT NULL,`OUTCOME_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`CREATE_` datetime DEFAULT NULL,`END_` datetime DEFAULT NULL,`DURATION_` bigint(20) DEFAULT NULL,`NEXTIDX_` int(11) DEFAULT NULL,`SUPERTASK_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HSUPERT_SUB` (`SUPERTASK_`),KEY `FK_HSUPERT_SUB` (`SUPERTASK_`),CONSTRAINT `FK_HSUPERT_SUB` FOREIGN KEY (`SUPERTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_hist_var`;
CREATE TABLE IF NOT EXISTS `jbpm4_hist_var` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`PROCINSTID_` varchar(255) DEFAULT NULL,`EXECUTIONID_` varchar(255) DEFAULT NULL,`VARNAME_` varchar(255) DEFAULT NULL,`VALUE_` varchar(255) DEFAULT NULL,`HPROCI_` bigint(20) DEFAULT NULL,`HTASK_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_HVAR_HPROCI` (`HPROCI_`),KEY `IDX_HVAR_HTASK` (`HTASK_`),KEY `FK_HVAR_HPROCI` (`HPROCI_`),KEY `FK_HVAR_HTASK` (`HTASK_`),CONSTRAINT `FK_HVAR_HPROCI` FOREIGN KEY (`HPROCI_`) REFERENCES `jbpm4_hist_procinst` (`DBID_`),CONSTRAINT `FK_HVAR_HTASK` FOREIGN KEY (`HTASK_`) REFERENCES `jbpm4_hist_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_group`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_group` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`PARENT_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_GROUP_PARENT` (`PARENT_`),KEY `FK_GROUP_PARENT` (`PARENT_`),CONSTRAINT `FK_GROUP_PARENT` FOREIGN KEY (`PARENT_`) REFERENCES `jbpm4_id_group` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_membership`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_membership` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`USER_` bigint(20) DEFAULT NULL,`GROUP_` bigint(20) DEFAULT NULL,`NAME_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_MEM_USER` (`USER_`),KEY `IDX_MEM_GROUP` (`GROUP_`),KEY `FK_MEM_GROUP` (`GROUP_`),KEY `FK_MEM_USER` (`USER_`),CONSTRAINT `FK_MEM_GROUP` FOREIGN KEY (`GROUP_`) REFERENCES `jbpm4_id_group` (`DBID_`),CONSTRAINT `FK_MEM_USER` FOREIGN KEY (`USER_`) REFERENCES `jbpm4_id_user` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_id_user`;
CREATE TABLE IF NOT EXISTS `jbpm4_id_user` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`ID_` varchar(255) DEFAULT NULL,`PASSWORD_` varchar(255) DEFAULT NULL,`GIVENNAME_` varchar(255) DEFAULT NULL,`FAMILYNAME_` varchar(255) DEFAULT NULL,`BUSINESSEMAIL_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_job`;
CREATE TABLE IF NOT EXISTS `jbpm4_job` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`DUEDATE_` datetime DEFAULT NULL,`STATE_` varchar(255) DEFAULT NULL,`ISEXCLUSIVE_` bit(1) DEFAULT NULL,`LOCKOWNER_` varchar(255) DEFAULT NULL,`LOCKEXPTIME_` datetime DEFAULT NULL,`EXCEPTION_` longtext,`RETRIES_` int(11) DEFAULT NULL,`PROCESSINSTANCE_` bigint(20) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`CFG_` bigint(20) DEFAULT NULL,`SIGNAL_` varchar(255) DEFAULT NULL,`EVENT_` varchar(255) DEFAULT NULL,`REPEAT_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_JOBRETRIES` (`RETRIES_`),KEY `IDX_JOB_CFG` (`CFG_`),KEY `IDX_JOB_PRINST` (`PROCESSINSTANCE_`),KEY `IDX_JOB_EXE` (`EXECUTION_`),KEY `IDX_JOBLOCKEXP` (`LOCKEXPTIME_`),KEY `IDX_JOBDUEDATE` (`DUEDATE_`),KEY `FK_JOB_CFG` (`CFG_`),CONSTRAINT `FK_JOB_CFG` FOREIGN KEY (`CFG_`) REFERENCES `jbpm4_lob` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_lob`;
CREATE TABLE IF NOT EXISTS `jbpm4_lob` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`BLOB_VALUE_` longblob,`DEPLOYMENT_` bigint(20) DEFAULT NULL,`NAME_` longtext,PRIMARY KEY (`DBID_`),KEY `IDX_LOB_DEPLOYMENT` (`DEPLOYMENT_`),KEY `FK_LOB_DEPLOYMENT` (`DEPLOYMENT_`),CONSTRAINT `FK_LOB_DEPLOYMENT` FOREIGN KEY (`DEPLOYMENT_`) REFERENCES `jbpm4_deployment` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_participation`;
CREATE TABLE IF NOT EXISTS `jbpm4_participation` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`GROUPID_` varchar(255) DEFAULT NULL,`USERID_` varchar(255) DEFAULT NULL,`engine_` varchar(255) DEFAULT NULL,`TASK_` bigint(20) DEFAULT NULL,`SWIMLANE_` bigint(20) DEFAULT NULL,`TYPE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_PART_TASK` (`TASK_`),KEY `FK_PART_SWIMLANE` (`SWIMLANE_`),KEY `FK_PART_TASK` (`TASK_`),CONSTRAINT `FK_PART_SWIMLANE` FOREIGN KEY (`SWIMLANE_`) REFERENCES `jbpm4_swimlane` (`DBID_`),CONSTRAINT `FK_PART_TASK` FOREIGN KEY (`TASK_`) REFERENCES `jbpm4_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_property`;
CREATE TABLE IF NOT EXISTS `jbpm4_property` (`KEY_` varchar(255) NOT NULL,`VERSION_` int(11) NOT NULL,`VALUE_` varchar(255) DEFAULT NULL,PRIMARY KEY (`KEY_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_swimlane`;
CREATE TABLE IF NOT EXISTS `jbpm4_swimlane` (`DBID_` bigint(20) NOT NULL,`DBVERSION_` int(11) NOT NULL,`NAME_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_SWIMLANE_EXEC` (`EXECUTION_`),KEY `FK_SWIMLANE_EXEC` (`EXECUTION_`),CONSTRAINT `FK_SWIMLANE_EXEC` FOREIGN KEY (`EXECUTION_`) REFERENCES `jbpm4_execution` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_task`;
CREATE TABLE IF NOT EXISTS `jbpm4_task` (`DBID_` bigint(20) NOT NULL,`CLASS_` char(1) NOT NULL,`DBVERSION_` int(11) NOT NULL,`NAME_` varchar(255) DEFAULT NULL,`DESCR_` longtext,`STATE_` varchar(255) DEFAULT NULL,`SUSPHISTSTATE_` varchar(255) DEFAULT NULL,`ASSIGNEE_` varchar(255) DEFAULT NULL,`FORM_` varchar(255) DEFAULT NULL,`PRIORITY_` int(11) DEFAULT NULL,`CREATE_` datetime DEFAULT NULL,`DUEDATE_` datetime DEFAULT NULL,`PROGRESS_` int(11) DEFAULT NULL,`SIGNALLING_` bit(1) DEFAULT NULL,`EXECUTION_ID_` varchar(255) DEFAULT NULL,`ACTIVITY_NAME_` varchar(255) DEFAULT NULL,`HASVARS_` bit(1) DEFAULT NULL,`SUPERTASK_` bigint(20) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`PROCINST_` bigint(20) DEFAULT NULL,`SWIMLANE_` bigint(20) DEFAULT NULL,`TASKDEFNAME_` varchar(255) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_TASK_SUPERTASK` (`SUPERTASK_`),KEY `FK_TASK_SWIML` (`SWIMLANE_`),KEY `FK_TASK_SUPERTASK` (`SUPERTASK_`),CONSTRAINT `FK_TASK_SUPERTASK` FOREIGN KEY (`SUPERTASK_`) REFERENCES `jbpm4_task` (`DBID_`),CONSTRAINT `FK_TASK_SWIML` FOREIGN KEY (`SWIMLANE_`) REFERENCES `jbpm4_swimlane` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;DROP TABLE IF EXISTS `jbpm4_variable`;
CREATE TABLE IF NOT EXISTS `jbpm4_variable` (`DBID_` bigint(20) NOT NULL,`CLASS_` varchar(255) NOT NULL,`DBVERSION_` int(11) NOT NULL,`KEY_` varchar(255) DEFAULT NULL,`CONVERTER_` varchar(255) DEFAULT NULL,`HIST_` bit(1) DEFAULT NULL,`EXECUTION_` bigint(20) DEFAULT NULL,`TASK_` bigint(20) DEFAULT NULL,`LOB_` bigint(20) DEFAULT NULL,`DATE_VALUE_` datetime DEFAULT NULL,`DOUBLE_VALUE_` double DEFAULT NULL,`CLASSNAME_` varchar(255) DEFAULT NULL,`LONG_VALUE_` bigint(20) DEFAULT NULL,`STRING_VALUE_` varchar(255) DEFAULT NULL,`TEXT_VALUE_` longtext,`EXESYS_` bigint(20) DEFAULT NULL,PRIMARY KEY (`DBID_`),KEY `IDX_VAR_EXESYS` (`EXESYS_`),KEY `IDX_VAR_TASK` (`TASK_`),KEY `IDX_VAR_EXECUTION` (`EXECUTION_`),KEY `IDX_VAR_LOB` (`LOB_`),KEY `FK_VAR_LOB` (`LOB_`),KEY `FK_VAR_EXECUTION` (`EXECUTION_`),KEY `FK_VAR_EXESYS` (`EXESYS_`),KEY `FK_VAR_TASK` (`TASK_`),CONSTRAINT `FK_VAR_EXECUTION` FOREIGN KEY (`EXECUTION_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_VAR_EXESYS` FOREIGN KEY (`EXESYS_`) REFERENCES `jbpm4_execution` (`DBID_`),CONSTRAINT `FK_VAR_LOB` FOREIGN KEY (`LOB_`) REFERENCES `jbpm4_lob` (`DBID_`),CONSTRAINT `FK_VAR_TASK` FOREIGN KEY (`TASK_`) REFERENCES `jbpm4_task` (`DBID_`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

☃️4.2 数据库逻辑关系

18张表简介:

在这里插入图片描述

4.2.1 资源库与运行时的表

在这里插入图片描述

4.2.2 历史数据表

在这里插入图片描述

☃️4.3 表结构

表JBPM4_DEPLOYMENT

表名流程定义表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
NAME_CLOBY流程模版名称
TIMESTAMP_NUMBER(19)Y时间戳
STATE_VARCHAR2(255 CHAR)Y可用状态
补充说明一条 jbpm4_deployment 记录需要对应4 条jbpm4_deployprop 记录

表JBPM4_DEPLOYPROP

表名流程定义属性表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
DEPLOYMENT_NUMBER(19)YFK(JBPM4_DEPLOYMENT, DBID_)流程ID
OBJNAME_VARCHAR2(255 CHAR)Y流程名称
KEY_VARCHAR2(255 CHAR)Y类型
STRINGVAL_VARCHAR2(255 CHAR)Y类型是字符串时的值
LONGVAL_NUMBER(19)Y类型是数值时的值
补充说明① 一条jbpm4_deployment 记录需要对应4 条jbpm4_deployprop 记录,存储在KEY_里面:Langid 标识解析流程定义使用的 jpdl 的版本Pdid 流程定义的 id , 唯一标识一个流程Pdkey 流程的 key ,标识同一类流程Pdversion 标识流程的版本

表JBPM4_EXECUTION

表名流程实例表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程实例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)YUK令牌ID
STATE_VARCHAR2(255 CHAR)Y令牌状态
SUSPHISTSTATE_VARCHAR2(255 CHAR)Y保存暂停之前状态
PRIORITY_NUMBER(10)Y优先级
HISACTINST_NUMBER(19)Y历史活动实例ID
PARENT_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)父实例
INSTANCE_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)流程实例
SUPEREXEC_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)父令牌
SUBPROCINST_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)子流程实例
PARENT_IDX_NUMBER(10)Y父实例序号
补充说明驱动流程运行,记录流程实例运行必须的信息

表JBPM4_HIST_ACTINST

表名流程活动(节点)实例表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
CLASS_VARCHAR2(255 CHAR)Nactivity类型
DBVERSION_NUMBER(10)N版本
HPROCI_NUMBER( 19)YFK(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)YFK(JBPM4_HIST_TASK, DBID_)对应的定义任务
补充说明流程运行中执行过的节点的记录,包括Task和State节点

JBPM4_HIST_DETAIL

表名流程历史详细表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
CLASS_VARCHAR2(255 CHAR)N
DBVERSION_NUMBER(10)N版本
USERID_VARCHAR2(255 CHAR)Y用户ID
TIME_TIMESTAMP(6)Y时间
HPROCI_NUMBER(19)YFK(JBPM4_HIST_PROCINST, DBID_)对应的历史流程实例
HPROCIIDX_NUMBER(10)Y
HACTI_NUMBER(19)YFK(JBPM4_HIST_ACTINST, DBID_)对应的历史活动实例ID
HACTIIDX_NUMBER(10)Y
HTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)对应的任务
HTASKIDX_NUMBER(10)Y
HVAR_NUMBER(19)YFK(JBPM4_HIST_VAR, DBID_)对应的变量值
HVARIDX_NUMBER(10)Y
MESSAGE_CLOBY消息
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变量的父变量序号
补充说明历史信息的详细表,跟其他的历史表进行关联

JBPM4_HIST_PROCINST

表名流程实例历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
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
补充说明历史流程实例相关信息

JBPM4_HIST_TASK

表名流程任务实例历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
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)YFK(JBPM4_HIST_TASK, DBID_)父任务
补充说明历史任务相关信息,与jbpm4_hist_actinst关联,单独的表减少了state节点相应字段的空闲和空间浪费

JBPM4_HIST_VAR

表名流程变量(上下文)历史表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK流程模版标识
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)YFK(JBPM4_HIST_PROCINST, DBID_)历史流程实例
HTASK_NUMBER(19)YFK(JBPM4_HIST_TASK, DBID_)历史任务
补充说明历史变量相关信息

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
补充说明

JBPM4_ID_MEMBERSHIP

表名用户角色表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)N
DBVERSION_NUMBER(10)N
USER_NUMBER(19)Y
GROUP_NUMBER(19)Y
NAME_VARCHAR2(255 CHAR)Y
补充说明

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
补充说明

JBPM4_JOB

表名定时表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
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_CLOBY活动实例
RETRIES_NUMBER(10)Y重复次数
PROCESSINSTANCE_NUMBER(19)Y流程实例
EXECUTION_NUMBER(19)Y异常信息
CFG_NUMBER(19)YFK(JBPM4_LOB, DBID_)配置
SIGNAL_VARCHAR2(255 CHAR)Y信号
EVENT_VARCHAR2(255 CHAR)Y事件
REPEAT_VARCHAR2(255 CHAR)Y重复
补充说明作业相关

JBPM4_LOB

表名存储表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
DBVERSION_NUMBER(10)N版本
BLOB_VALUE_BLOBY流程定义文件(xml、img、class)
DEPLOYMENT_NUMBER(19)YFK(JBPM4_DEPLOYMENT, DBID_)流程模版标识ID
NAME_CLOBY流程定义文件名
补充说明保存根据流程定义 xml 形成的二进制数据

JBPM4_PARTICIPATION

表名参与者表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
GROUPID_VARCHAR2(255 CHAR)Y组ID
USERID_VARCHAR2(255 CHAR)Y用户ID
TYPE_VARCHAR2(255 CHAR)Y类型
TASK_NUMBER(19)YFK(JBPM4_SWIMLANE, DBID_)任务ID
SWIMLANE_NUMBER(19)YFK(JBPM4_TASK,DBID_)对应泳道
补充说明办理人相关信息

JBPM4_PROPERTY

表名序列表
列名数据类型(精度范围)空/非空约束条件中文名
KEY_VARCHAR2(255 CHAR)N
VERSION_NUMBER(10)N
VALUE_VARCHAR2(255 CHAR)Y
补充说明为运行时需要持久化的对象生成dbid,其记录当前所有对象实例的最大值,每次需要生成dbid时,需要先获取该值,然后递增返回。

JBPM4_SWIMLANE

表名泳道表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
DBVERSION_NUMBER(10)N版本
NAME_VARCHAR2(255 CHAR)Y泳道名
ASSIGNEE_VARCHAR2(255 CHAR)Y处理人
EXECUTION_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)活动实例
补充说明泳道相关信息

JBPM4_TASK

表名任务表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK主键
CLASS_CHAR(1 CHAR)N类型
DBVERSION_NUMBER(10)N版本
NAME_VARCHAR2(255 CHAR)Y活动节点名称
DESCR_CLOBY描述
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)YFK(JBPM4_TASK, DBID_)父任务
EXECUTION_NUMBER(19)Y活动实例
PROCINST_NUMBER(19)Y流程实例
SWIMLANE_NUMBER(19)YFK(JBPM4_SWIMLANE, DBID_)对应的泳道
TASKDEFNAME_VARCHAR2(255 CHAR)Y任务定义名
补充说明记录任务的相关信息

JBPM4_VARIABLE

表名上下文表
列名数据类型(精度范围)空/非空约束条件中文名
DBID_NUMBER(19)NPK标识
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)YFK(JBPM4_EXECUTION, DBID_)活动实例
TASK_NUMBER(19)YFK(JBPM4_TASK, DBID_)对应的任务
LOB_NUMBER(19)YFK(JBPM4_LOB, DBID_)
DATE_VALUE_TIMESTAMP(6)Y当值为date类型时,存值
DOUBLE_VALUE_FLOATY当值为double类型时,存值
CLASSNAME_VARCHAR2(255 CHAR)Y变量类名
LONG_VALUE_NUMBER(19)Y当值为long类型时,存值
STRING_VALUE_VARCHAR2(255 CHAR)Y当值为String类型时,存值
TEXT_VALUE_CLOBY当值为date类型时,存值
EXESYS_NUMBER(19)YFK(JBPM4_EXECUTION, DBID_)
补充说明记录传给流程的变量的相关信息

☃️4.4 流程操作与数表交互说明

发布一个流程deploy

① jbpm4_deployment(流程定义):新增一条记录,记录新增的流程名称、时间、状态;

② jbpm4_lob(存储表): 新增一条记录,保存根据流程定义xml形成的二进制数据(同时也保存变量variable);

③ jbpm4_deployprop(流程定义属性表):新增四条记录,记录流程的属性,在“KEY_”里面记录一下四项内容:

Langid 标识解析流程定义使用的 jpdl 的版本;

Pdid 流程定义的 id , 唯一标识一个流程;

Pdkey 流程的 key ,标识同一类流程;

Pdversion 标识流程的版本。

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 (活动节点实例表):新增一条记录




在这里插入图片描述



这篇关于工作流JBPM系统数据库表介绍的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/915194

相关文章

SpringBoot整合Flowable实现工作流的详细流程

《SpringBoot整合Flowable实现工作流的详细流程》Flowable是一个使用Java编写的轻量级业务流程引擎,Flowable流程引擎可用于部署BPMN2.0流程定义,创建这些流程定义的... 目录1、流程引擎介绍2、创建项目3、画流程图4、开发接口4.1 Java 类梳理4.2 查看流程图4

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

SQL Server数据库死锁处理超详细攻略

《SQLServer数据库死锁处理超详细攻略》SQLServer作为主流数据库管理系统,在高并发场景下可能面临死锁问题,影响系统性能和稳定性,这篇文章主要给大家介绍了关于SQLServer数据库死... 目录一、引言二、查询 Sqlserver 中造成死锁的 SPID三、用内置函数查询执行信息1. sp_w

LiteFlow轻量级工作流引擎使用示例详解

《LiteFlow轻量级工作流引擎使用示例详解》:本文主要介绍LiteFlow是一个灵活、简洁且轻量的工作流引擎,适合用于中小型项目和微服务架构中的流程编排,本文给大家介绍LiteFlow轻量级工... 目录1. LiteFlow 主要特点2. 工作流定义方式3. LiteFlow 流程示例4. LiteF

SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程

《SpringBoot集成LiteFlow实现轻量级工作流引擎的详细过程》LiteFlow是一款专注于逻辑驱动流程编排的轻量级框架,它以组件化方式快速构建和执行业务流程,有效解耦复杂业务逻辑,下面给大... 目录一、基础概念1.1 组件(Component)1.2 规则(Rule)1.3 上下文(Conte

MybatisPlus service接口功能介绍

《MybatisPlusservice接口功能介绍》:本文主要介绍MybatisPlusservice接口功能介绍,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友... 目录Service接口基本用法进阶用法总结:Lambda方法Service接口基本用法MyBATisP

基于Python实现一个简单的题库与在线考试系统

《基于Python实现一个简单的题库与在线考试系统》在当今信息化教育时代,在线学习与考试系统已成为教育技术领域的重要组成部分,本文就来介绍一下如何使用Python和PyQt5框架开发一个名为白泽题库系... 目录概述功能特点界面展示系统架构设计类结构图Excel题库填写格式模板题库题目填写格式表核心数据结构

MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)

《MySQL复杂SQL之多表联查/子查询详细介绍(最新整理)》掌握多表联查(INNERJOIN,LEFTJOIN,RIGHTJOIN,FULLJOIN)和子查询(标量、列、行、表子查询、相关/非相关、... 目录第一部分:多表联查 (JOIN Operations)1. 连接的类型 (JOIN Types)

Linux系统中的firewall-offline-cmd详解(收藏版)

《Linux系统中的firewall-offline-cmd详解(收藏版)》firewall-offline-cmd是firewalld的一个命令行工具,专门设计用于在没有运行firewalld服务的... 目录主要用途基本语法选项1. 状态管理2. 区域管理3. 服务管理4. 端口管理5. ICMP 阻断

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化: