工作流表结构文档
JBPM数据库表说明
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
2.6 JBPM_COMMENT:流程备注信息表
字段名字段含义主键外键
ID_标识√
VERSION_版本
ACTORID_产生该备注的ACTOR
TIME_ 流程备注产生时间
MESSAGE_ 流程备注信息
TOKEN_ 流程备注所属的TOKEN,对应JBPM_TOKEN√
TASKINSTANCE_ 流程备注所属的TASKINSTANCE,对应JBPM_TASKINSTANCE√
TOKENINDEX_ ?√
TASKINSTANCEINDEX_?
2.7 JBPM_MESSAGE:流程异步消息表
字段名字段含义主键外键
ID_标识√
CLASS_消息类型
M : org.jbpm.msg.Message T : org.jbpm.msg.db.TextMessage
A : org.jbpm.command.ExecuteActionCommand
N : org.jbpm.command.ExecuteNodeCommand
S : org.jbpm.command.SignalCommand
K : org.jbpm.command.TaskInstanceEndCommand
DESTINATION_消息目的源
EXCEPTION_消息异常信息
ISSUSPENDED_?
TOKEN_ 流程消息所属的TOKEN,对应JBPM_TOKEN√
TASKINSTANCE_ 流程消息所属的TASKINSTANCE,对应JBPM_TASKINSTANCE√
TEXT_消息内容
ACTION_ 流程消息所属的ACTION,对应JBPM_ ACTION√
NODE_ 流程消息所属的NODE,对应JBPM_ NODE√
TRANSITIONNAME_?
2.8 JBPM_TIMER:流程定时器表
字段名字段含义主键外键
ID_标识√
NAME_ 定时器名称
DUEDATE_ 定时器每次执行的间隔时间
REPEAT_ 定时器是否重复执行
TRANSITIONNAME_定时器执行后,流程的目的TRANSITION名称
EXCEPTION_ 流程备注所属的TOKEN,对应JBPM_TOKEN
ISSUSPENDED_
ACTION_定时器所属的ACTION,对应JBPM_ ACTION√
TOKEN_定时器所属的TOKEN,对应JBPM_ TOKEN√
PROCESSINSTANCE_定时器所属的PROCESSINSTANCE,对应JBPM_PROCESSINSTANCE√
TASKINSTANCE_定时器所属的TASKINSTANCE,对应JBPM_TASKINSTANCE√
GRAPHELEMENTTYPE_ 定时器所属的图形元素类型
GRAPHELEMENT_定时器所属的图形元素
2.9 JBPM_TOKENVARIABLEMAP:流程TOKEN变量MAP表
字段名字段含义主键外键
ID_标识√
TOKEN_ 流程TOKEN变量映射所属的TOKEN,对应JBPM_TOKEN√
CONTEXTINSTANCE_ 流程TOKEN变量映射所属的流程上下文实例,对应JBPM_MODULEINSTANCE√
2.10 JBPM_MODULEINSTANCE:流程模块实例表
字段名字段含义主键外键
ID_标识√
CLASS_ 模块实例类型:
M: org.jbpm.module.exe.ModuleInstance
C: org.jbpm.context.exe.ContextInstance
L: org.jbpm.logging.exe.LoggingInstance
I: org.jbpm.scheduler.exe.SchedulerInstanceT: org.jbpm.taskmgmt.def.TaskMgmtDefinition
PROCESSINSTANCE_ 模块实例所属的流程实例,对应JBPM_PROCESSINSTANCE√
TASKMGMTDEFINITION_ 任务类模块实例所属的任务模块,对应JBPM_MODULEDEFINITION√
NAME_模块实例名称
2.11 JBPM_BYTEARRAY:文件模块形式的流程变量实例表
字段名字段含义主键外键
ID_标识
NAME_ 流程变量名称
FILEDEFINITION_FILEMODULE,对应JBPM_MODULEDEFINITION√
2.12 JBPM_BYTEBLOCK:
字段名字段含义主键外键
PROCESSFILE_ 对应JBPM_BYTEARRAY√
BYTES_序列化流程变量
INDEX_标识√
补:JBPM_TASKINSTANCE:
字段名字段含义主键外键
ID_标识√
CLASS_
VERSION_
NAME_
DISCRIPTION
ACTORID_
CREATE_
START_
END_
DUEDATE_
PRIORITY_
ISCANCELLED_
ISSUSPENDED_
ISOPEN_
ISSIGNALLING_
ISBLOCKING_
TASK_
TOKEN_
PROCINST_
SWIMLANINSTANCE_
TASKMGMTINSTANCE_