歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> JBPM數據庫表說明

JBPM數據庫表說明

日期:2017/3/1 9:06:48   编辑:Linux編程

最近這幾天一直在研究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.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

Copyright © Linux教程網 All Rights Reserved