JBPM工作流(二)——数据库表说明

时间:2024-01-13 21:03:56

以下为JBMP的数据库说明(18张):

1 流程配置类数据库表:

1.1 JBPM_PROCESSDEFINITION:流程模版表

字段名

字段含义

主键

外键

ID_

流程模版标识

×

NAME_

流程模版名称

×

×

VERSION_

流程模版版本,对于同一流程模版,多次插入数据库时,数据库中有多条记录,每条记录中的版本号一次增加

×

×

ISTERMINATIONIMPLICIT_

是否支持强行终止流程(目前理解)

×

×

STARTSTATE_

起始节点ID,在JBPM_NODE表中

×

 

1.2 JBPM_NODE:流程节点表

字段名

字段含义

主键

外键

ID_

流程节点标识

 

CLASS_

节点类型:

C: org.jbpm.graph.node.ProcessState

D: org.jbpm.graph.node.Decision

E: org.jbpm.graph.node.EndState

F: org.jbpm.graph.node.Fork

J: org.jbpm.graph.node.Join

K: org.jbpm.graph.node.TaskNode

N: org.jbpm.graph.def.Node

R: org.jbpm.graph.node.StartState

S: org.jbpm.graph.node.State

U: org.jbpm.graph.def.SuperState

   

NAME_

流程节点名称

   

SUBPROCESSDEFINITION_

节点类型为ProcessState时使用,代表子流程模版id

 

ISASYNC_

节点是否支持异步机制

   

ACTION_

节点中指定的action,对应JBPM_ACTION表

 

SUPERSTATE_

节点对应的SuperState的id,表明该节点属于某个SuperState

 

PROCESSDEFINITION_

节点所在的流程模版id

 

DECISIONDELEGATION

节点类型为Decision时使用,表明Decision对应的代理类,对应JBPM_DELEGATION表

 

DECISIONEXPRESSION_

节点类型为Decision时使用,该属性表示Decision中使用的判断表达式

   

SIGNAL_

节点类型为Task

   

CREATETASKS_

节点类型为Task

   

ENDTASKS_

节点类型为Task

   

NODECOLLECTIONINDEX_

节点类型为SuperState时使用,

   

 

1.3 JBPM_TRANSITION:流程迁移表

字段名

字段含义

主键

外键

ID_

流程迁移标识

 

NAME_

流程迁移名称

   

PROCESSDEFINITION_

迁移所在的流程模版id

 

FROM_

迁移来源,对应Node的id

 

TO_

迁移目的,对应Node的id

 

FROMINDEX_

   

 

1.4 JBPM_ACTION:流程动作表

字段名

字段含义

主键

外键

ID_

流程动作标识

 

NAME_

流程动作名称

 

CLASS_

流程动作分类:

A(动作): org.jbpm.graph.def.Action

S(脚本): org.jbpm.graph.action.Script

C(创建定时器):

org.jbpm.scheduler.def.CreateTimerAction I(取消定时器):

org.jbpm.scheduler.def.CancelTimerAction

   

ISPROPAGATIONALLOWED_

   

ACTIONEXPRESSION_

动作类行为I时使用,表示动作执行的脚本

   

ISASYNC_

动作是否支持异步机制

   

REFERENCEDACTION_

动作中引用的动作,对应JBPM_ACTION

 

ACTIONDELEGATION_

动作类型为A时使用,表示动作执行的代理类,对应JBPM_DELEGATION

 

EVENT_

动作中指定的事件,对应JBPM_EVENT

   

PROCESSDEFINITION_

动作所在的流程模版id

 

TIMERNAME_

定时器名称

   

DUEDATE_

定时器间隔时间

   

REPEAT_

定时器动作执行次数

   

TRANSITIONNAME_

动作指定后指向的Transition

   

TIMERACTION_

定时器动作代理类,对应JBPM_ACTION

   

EXPRESSION_

定时器执行表达式

   

EVENTINDEX_

   

EXCEPTIONHANDLER_

异常处理类,对应JBPM_EXCEPTIONHANDLER

   

EXCEPTIONHANDLERINDEX_

   

 

1.5 JBPM_EVENT:流程事件表

字段名

字段含义

主键

外键

ID_

流程事件标识

 

EVENTTYPE_

流程事件类型名称

   

TYPE_

流程事件所在的图形节点类型

"A" :Task

"C" :ProcessState

"D" :Decision"

"E" :EndState"

"F" :Fork"

"J" :Join"

"K" :TaskNode"

"N" :Node"

"P" :ProcessDefinition"

"R" :StartState"

"S" :State"

"T" :Transition"

"U" :SuperState"

   

GRAPHELEMENT_

流程事件所在的图形节点的ID

   

PROCESSDEFINITION_

流程事件所属流程定义,对应JBPM_PROCESSDEFINITION

 

NODE_

流程事件所属节点,对应JBPM_NODE

 

TRANSITION_

流程事件所属迁移,对应JBPM_ TRANSITION

 

TASK_

流程事件所属任务,对应JBPM_TASK

 

 

1.6 JBPM_DELEGATION:流程代理类表(用于实例化jbpm中的action类)

字段名

字段含义

主键

外键

ID_

流程代理标识

 

CLASSNAME_

流程代理类名称

   

CONFIGURATION_

流程代理类配置信息

   

CONFIGTYPE_

流程代理类配置类型

   

PROCESSDEFINITION_

流程代理类所属流程定义,对应JBPM_PROCESSDEFINITION

 

 

1.7 JBPM_TASK:流程任务表

字段名

字段含义

主键

外键

ID_

流程任务标识

 

NAME_

流程任务名称

   

PROCESSDEFINITION_

流程任务所属流程定义,对应JBPM_PROCESSDEFINITION

 

DESCRIPTION_

流程任务描述

   

ISBLOCKING_

任务是否为阻塞(任务不完成、流程不能继续)

   

ISSIGNALING_

任务是否可以驱动TOKEN

   

DUEDATE

任务持续时间,表明任务应在多长时间内完成

   

ACTORIDEXPRESSION

?

   

POOLEDACTORSEXPRESSION

?

   

TASKMGMTDEFINITION_

任务所属的任务管理模块ID,对应JBPM_MODULEDEFIFNITION

 

TASKNODE_

任务所属的TASK_NODE,对应JBPM_NODE

 

STARTSTATE

任务所属的START_NODE,对应JBPM_NODE

 

ASSIGNMENTDELEGATION

?

 

SWIMLANE

执行该任务的泳道(角色)

 

TASKCONTROLLER_

?

   

 

1.8 JBPM_TASKCONTROLLER:流程任务控制器

字段名

字段含义

主键

外键

ID_

流程任务控制器标识

 

TASKCONTROLLERDELEGATION_

流程任务控制器对应的代理,对应JBPM_DELEGATION

 

 

1.9 JBPM_VARIABLEACCESS:流程变量表

字段名

字段含义

主键

外键

ID_

流程变量标识

 

VARIABLENAME_

流程变量名称

   

ACCESS_

流程变量存取方式

   

MAPPEDNAME

?(暂时不使用)

   

PROCESSSTATE

流程变量所属的流程节点,对应JBPM_NODE

 

TASKCONTROLLER

流程变量所属的流程任务控制器,对应JBPM_ TASKCONTROLLER

 

INDEX_

?

   

SCRIPT

流程变量所属的ACTION,对应JBPM_ ACTION

 

 

1.10 JBPM_MODULEDEFINITION:流程模块定义表

字段名

字段含义

主键

外键

ID_

流程模块标识

 

CLASS_

流程模块类型:

M : org.jbpm.module.def.ModuleDefinition

C : org.jbpm.context.def.ContextDefinition

F : org.jbpm.file.def.FileDefinition

L: org.jbpm.logging.def.LoggingDefinition

I: org.jbpm.scheduler.def.SchedulerDefinition

T: org.jbpm.taskmgmt.def.TaskMgmtDefinition

   

NAME_

流程模块名称

   

PROCESSDEFINITION_

流程模块所属流程定义,对应JBPM_PROCESSDEFINITION

 

STARTTASK

类型为T时使用,对应JBPM_TASK

 

 

1.11JBPM_EXCEPTIONHANDLER:流程异常处理器表

字段名

字段含义

主键

外键

ID_

流程异常处理器标识

 

EXCEPTIONHANDLERNAME_

流程异常处理器名称

   

TYPE_

流程异常处理器所在的图形节点类型

"A" :Task

"C" :ProcessState

"D" :Decision"

"E" :EndState"

"F" :Fork"

"J" :Join"

"K" :TaskNode"

"N" :Node"

"P" :ProcessDefinition"

"R" :StartState"

"S" :State"

"T" :Transition"

"U" :SuperState"

   

GRAPHELEMENT_

流程异常处理器所在的图形节点的ID

   

PROCESSDEFINITION_

流程异常处理器所属流程定义,对应JBPM_PROCESSDEFINITION

 

NODE_

流程异常处理器所属节点,对应JBPM_NODE

 

TRANSITION_

流程异常处理器所属迁移,对应JBPM_ TRANSITION

 

TASK_

流程异常处理器所属任务,对应JBPM_TASK

 

GRAPHELEMENTINDEX_

流程异常处理器中包含的ACTION集合的索引(?)

   

 

1.12 JBPM_DECISIONCONDITION:DECISION节点判断条件表

字段名

字段含义

主键

外键

INDEX_

标识

 

DECISION_

所属的DECISION,对应JBPM_NODE

 

TRANSITIONNAME_

DECISION节点的“离开节点名称”

   

EXPRESSION

每一个“离开节点名称”对应的条件表达式

   

 

1.13 JBPM_ SWINLANE:DECISION节点判断条件表

字段名

字段含义

主键

外键

ID_

标识

 

NAME_

泳道名称

 

TRANSITIONNAME_

DECISION节点的“离开节点名称”

   

EXPRESSION

每一个“离开节点名称”对应的条件表达式

   

 

2 流程运行类数据库表:

2.1 JBPM_PROCESSINSTANCE:流程实例表

字段名

字段含义

主键

外键

ID_

标识

 

VERSION_

版本

   

START_

流程实例开始时间

   

END_

流程实例结束时间

   

ISSUSPENDED

流程实例是否暂停

   

PROCESSDEFINITION_

流程实例所属的流程模版,对应JBPM_PROCESSDEFINITION

 

ROOTTOKEN_

流程实例对应的TOKEN,对应JBPM_TOKEN

 

SUPERPROCESSTOKEN_

父流程的当前TOKEN的ID,当流程实例为子流程实例时使用,表明由父流程进入子流程时,父流程的当前TOKEN。对应JBPM_TOKEN

 

 

2.2 JBPM_TOKEN:流程TOKEN表

字段名

字段含义

主键

外键

ID_

标识

 

VERSION_

版本

   

START_

TOKEN开始时间

   

END_

TOKEN结束时间

   

NODEENTER_

TOKEN进入当前节点(TOKEN当前所处的节点)的时间

   

NEXTLOGINDEX_

   

ISABLETOREACTIVATEPARENT_

能否重新激活父TOKEN标志

   

ISTERMINATIONIMPLICIT_

能够强制终止TOKEN标志

   

ISSUSPENDED_

TOKEN是否处于暂停状态

   

NODE_

TOKEN所在的当前节点,对应JBPM_NODE

 

PROCESSINSTANCE_

TOKEN所属的流程实例,对应JBPM_PROCESSINSTANCE

 

PARENT_

TOKEN的父TOKEN,当TOKEN是由fock产生或处于子流程中时使用,对应JBPM_TOKEN

 

 

2.3 JBPM_LOG:流程日志表

字段名

字段含义

主键

外键

ID_

标识

 

CLASS_

日志类型:

A: ActionLog

B: ByteArrayUpdateLog

C: CompositeLog

D: VariableDeleteLog E: DateUpdateLog

F: HibernateStringUpdateLog

G: LongUpdateLog

H: HibernateLongUpdateLog

I: ProcessInstanceCreateLog

L: DoubleUpdateLog

M: MessageLog

N: NodeLog

O: TokenCreateLog

P: ProcessLog

R: VariableCreateLog S: SignalLog

T: TransitionLog

U: StringUpdateLog

V: VariableLog

W: VariableUpdateLog X: ProcessInstanceEndLog

Y: TokenEndLog

0: TaskLog

1: TaskCreateLog

2: TaskAssignLog

3: TaskEndLog

4: SwimlaneLog

5: SwimlaneCreateLog

6: SwimlaneAssignLog

   

INDEX_

   

DATE_

日志产生时间

   

TOKEN _

日志所属TOKEN

   

PARENT_

日志的父日志,对应JBPM_LOG

   

CHILD_

创建的子TOKEN,对应TokenCreateLog

结束的子TOKEN,对应TokenEndLog

   

MESSAGE_

消息信息,当日志类型为M(MessageLog)时使用

   

EXCEPTION_

日志异常信息,对应ActionLog

   

ACTION_

日志所属ACTION,当日志类型为A(ActionLog)时使用

   

NODE_

日志所属NODE,当日志类型为N(NodeLog)时使用

   

ENTER_

进入节点时间,对应NodeLog

   

LEAVE_

离开节点时间,对应NodeLog

   

DURATION_

节点停留时间,对应NodeLog

   

TRANSITION_

日志所属TRANSITION

   

SOURCENODE_

TRANSITION的起点,对应TransitionLog

   

DESTINATIONNODE_

TRANSITION的终点,对应TransitionLog

   

VARIABLEINSTANCE_

日志所属的流程变量实例,对应VariableLog

   

OLDBYTEARRAY_

原BYTEARRAY值,对应ByteArrayUpdateLog

   

NEWBYTEARRAY

新BYTEARRAY值,对应ByteArrayUpdateLog

   

OLDDATEVALUE

原DATE值,对应DateUpdateLog

   

NEWDATEVALUE

新DATE值,对应DateUpdateLog

   

OLDDOUBLEVALUE_

原DOUBLE值,对应DoubleUpdateLog

   

NEWDOUBLEVALUE_

新DOUBLE值,对应DoubleUpdateLog

   

OLDLONGIDCLASS_

原LONGIDCLASS值,对应HibernateLongUpdateLog

   

NEWLONGIDCLASS_

新LONGIDCLASS值,对应HibernateLongUpdateLog

   

OLDLONGIDVALUE_

原LONGID值,对应HibernateLongUpdateLog

   

NEWLONGIDVALUE_

新LONGID值,对应HibernateLongUpdateLog

   

OLDSTRINGIDCLASS_

原STRINGIDCLASS值,对应HibernateStringUpdateLog

   

OLDSTRINGIDVALUE_

原STRINGID值,对应HibernateStringUpdateLog

   

NEWSTRINGIDCLASS_

新STRINGIDCLASS值,对应HibernateStringUpdateLog

   

NEWSTRINGIDVALUE_

新STRINGID值,对应HibernateStringUpdateLog

   

OLDLONGVALUE_

原LONG值,对应LongUpdateLog

   

NEWLONGVALUE_

新LONG值,对应LongUpdateLog

   

OLDSTRINGVALUE_

原STRING值,对应StringUpdateLog

   

NEWSTRINGVALUE_

新STRING值,对应StringUpdateLog

   

TASKINSTANCE_

日志所属的TASKINSTANCE,对应TaskLog

TaskCreateLog

TaskAssignLog

TaskEndLog

   

TASKACTORID_

任务的新ACTORID,对应TaskAssignLog

TaskCreateLog

SwimlaneCreateLog

SwimlaneAssignLog

   

TASKOLDACTORID_

任务的原ACTORID,对应TaskAssignLog

SwimlaneAssignLog

   

SWIMLANEINSTANCE_

日志所属的SWIMLANEINSTANC,对应SwimlaneLog

SwimlaneCreateLog

SwimlaneAssignLog

   

2.4 JBPM_RUNTIMEACTION:流程实时ACTION表

字段名

字段含义

主键

外键

ID_

标识

 

VERSION_

版本

   

EVENTTYPE_

实时ACTION所处的事件类型名称

   

TYPE_

实时ACTION所在的图形节点类型

"A" :Task

"C" :ProcessState

"D" :Decision"

"E" :EndState"

"F" :Fork"

"J" :Join"

"K" :TaskNode"

"N" :Node"

"P" :ProcessDefinition"

"R" :StartState"

"S" :State"

"T" :Transition"

"U" :SuperState"

   

GRAPHELEMENT_

实时ACTION所在的图形节点的ID

   

PROCESSINSTANCE_

实时ACTION所在的流程实例,对应JBPM_PROCESSINSTANCE

   

ACTION_

实时ACTION对应的ACTION,对应JBPM_ACTION

   

PROCESSINSTANCEINDEX_

   

 

2.5 JBPM_VARIABLEINSTANCE:流程变量实例表

字段名

字段含义

主键

外键

ID_

标识

   

CLASS_

变量类型:

V : org.jbpm.context.exe.VariableInstance

B : org.jbpm.context.exe.variableinstance.ByteArrayInstance

D : org.jbpm.context.exe.variableinstance.DateInstance

O : org.jbpm.context.exe.variableinstance.DoubleInstance

H : org.jbpm.context.exe.variableinstance.HibernateLongInstance

I : org.jbpm.context.exe.variableinstance.HibernateStringInstance

L : org.jbpm.context.exe.variableinstance.LongInstance

S : org.jbpm.context.exe.variableinstance.StringInstance

N : org.jbpm.context.exe.variableinstance.NullInstance

   

NAME_

变量名称

   

TYPE_

   

CONVERTER_

数值转换器

   

TOKEN_

变量所在的TOKEN,对应JBPM_TOKEN

 

TOKENVARIABLEMAP_

该变量所属的TOKEN的变量映射,对应JBPM_TOKENVARIABLEMAP

 

PROCESSINSTANCEINDEX_

   

PROCESSINSTANCE_

变量所在的流程实例,对应JBPM_PROCESSINSTANCE

 

BYTEARRAYVALUE_

当流程变量是ByteArray类型时,变量的值,对应JBPM_BYTEARRAY

   

DATEVALUE_

当流程变量是DATE类型时,变量的值

   

DOUBLEVALUE_

当流程变量是DOUBLE类型时,变量的值

   

LONGIDCLASS_

当流程变量是了HibernateLongInstance类型时,变量的类型

   

LONGVALUE_

当流程变量是了HibernateLongInstance/Long类型时,变量的值

   

STRINGIDCLASS_

当流程变量是了HibernateStringInstance类型时,变量的类型

   

STRINGVALUE_

当流程变量是了HibernateStringInstance/String类型时,变量的值

   

TASKINSTANCE_

变量所在的任务实例,对应JBPM_TASKINSTANCE