歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> 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.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