Welcome 微信登录

首页 / 操作系统 / Linux / JBPM数据库表说明

最近这几天一直在研究JBPM工作流引擎,以下为JBMP的数据库说明,貌似不是最新的4.4版本的,不过有胜于无,用来学习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.ProcessStateD: org.jbpm.graph.node.DecisionE: org.jbpm.graph.node.EndStateF: org.jbpm.graph.node.ForkJ: org.jbpm.graph.node.JoinK: org.jbpm.graph.node.TaskNodeN: org.jbpm.graph.def.NodeR: org.jbpm.graph.node.StartStateS: org.jbpm.graph.node.StateU: 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.ActionS(脚本): org.jbpm.graph.action.ScriptC(创建定时器):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.ModuleDefinitionC : org.jbpm.context.def.ContextDefinitionF : org.jbpm.file.def.FileDefinitionL: org.jbpm.logging.def.LoggingDefinitionI: org.jbpm.scheduler.def.SchedulerDefinitionT: 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: ActionLogB: ByteArrayUpdateLogC: CompositeLogD: VariableDeleteLog E: DateUpdateLogF: HibernateStringUpdateLogG: LongUpdateLogH: HibernateLongUpdateLogI: ProcessInstanceCreateLogL: DoubleUpdateLogM: MessageLogN: NodeLogO: TokenCreateLogP: ProcessLogR: VariableCreateLog S: SignalLogT: TransitionLogU: StringUpdateLogV: VariableLogW: VariableUpdateLog X: ProcessInstanceEndLogY: TokenEndLog0: TaskLog1: TaskCreateLog2: TaskAssignLog3: TaskEndLog4: SwimlaneLog5: SwimlaneCreateLog6: 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,对应TaskLogTaskCreateLogTaskAssignLogTaskEndLog  
TASKACTORID_任务的新ACTORID,对应TaskAssignLogTaskCreateLogSwimlaneCreateLogSwimlaneAssignLog  
TASKOLDACTORID_任务的原ACTORID,对应TaskAssignLogSwimlaneAssignLog  
SWIMLANEINSTANCE_日志所属的SWIMLANEINSTANC,对应SwimlaneLogSwimlaneCreateLogSwimlaneAssignLog  

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.VariableInstanceB : org.jbpm.context.exe.variableinstance.ByteArrayInstanceD : org.jbpm.context.exe.variableinstance.DateInstanceO : org.jbpm.context.exe.variableinstance.DoubleInstanceH : org.jbpm.context.exe.variableinstance.HibernateLongInstanceI : org.jbpm.context.exe.variableinstance.HibernateStringInstanceL : org.jbpm.context.exe.variableinstance.LongInstanceS : org.jbpm.context.exe.variableinstance.StringInstanceN : 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  
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-01/139344.htm