來源:Joker_Ye 發(fā)布時間:2018-11-01 13:37:06 閱讀量:925
版權(quán)聲明:本文為博主原創(chuàng)文章,未經(jīng)博主允許不得轉(zhuǎn)載。不經(jīng)過允許copy,講追究法律責(zé)任,歡迎加入我們的學(xué)習(xí)提升群466355109,可以相互交流,群有完整word文檔
Activiti數(shù)據(jù)表結(jié)構(gòu)
1 Activiti數(shù)據(jù)庫表結(jié)構(gòu)
1.1 數(shù)據(jù)庫表名說明
Activiti工作流總共包含23張數(shù)據(jù)表,所有的表名默認(rèn)以“ACT_”開頭。
并且表名的第二部分用兩個字母表明表的用例,而這個用例也基本上跟Service API匹配。
u ACT_GE_* : “GE”代表“General”(通用),用在各種情況下;
u ACT_HI_* : “HI”代表“History”(歷史),這些表中保存的都是歷史數(shù)據(jù),比如執(zhí)行過的流程實(shí)例、變量、任務(wù),等等。Activit默認(rèn)提供了4種歷史級別:
? none: 不保存任何歷史記錄,可以提高系統(tǒng)性能;
? activity:保存所有的流程實(shí)例、任務(wù)、活動信息;
? audit:也是Activiti的默認(rèn)級別,保存所有的流程實(shí)例、任務(wù)、活動、表單屬性;
? full:最完整的歷史記錄,除了包含audit級別的信息之外還能保存詳細(xì),例如:流程變量。
對于幾種級別根據(jù)對功能的要求選擇,如果需要日后跟蹤詳細(xì)可以開啟full。
u ACT_ID_* : “ID”代表“Identity”(身份),這些表中保存的都是身份信息,如用戶和組以及兩者之間的關(guān)系。如果Activiti被集成在某一系統(tǒng)當(dāng)中的話,這些表可以不用,可以直接使用現(xiàn)有系統(tǒng)中的用戶或組信息;
u ACT_RE_* : “RE”代表“Repository”(倉庫),這些表中保存一些‘靜態(tài)’信息,如流程定義和流程資源(如圖片、規(guī)則等);
u ACT_RU_* : “RU”代表“Runtime”(運(yùn)行時),這些表中保存一些流程實(shí)例、用戶任務(wù)、變量等的運(yùn)行時數(shù)據(jù)。Activiti只保存流程實(shí)例在執(zhí)行過程中的運(yùn)行時數(shù)據(jù),并且當(dāng)流程結(jié)束后會立即移除這些數(shù)據(jù),這是為了保證運(yùn)行時表盡量的小并運(yùn)行的足夠快;
1.2 數(shù)據(jù)庫表結(jié)構(gòu)
1.2.1 Activiti數(shù)據(jù)表清單:
表分類
表名
解釋
一般數(shù)據(jù)
ACT_GE_BYTEARRAY
通用的流程定義和流程資源
ACT_GE_PROPERTY
系統(tǒng)相關(guān)屬性
流程歷史記錄
ACT_HI_ACTINST
歷史的流程實(shí)例
ACT_HI_ATTACHMENT
歷史的流程附件
ACT_HI_COMMENT
歷史的說明性信息
ACT_HI_DETAIL
歷史的流程運(yùn)行中的細(xì)節(jié)信息
ACT_HI_IDENTITYLINK
歷史的流程運(yùn)行過程中用戶關(guān)系
ACT_HI_PROCINST
歷史的流程實(shí)例
ACT_HI_TASKINST
歷史的任務(wù)實(shí)例
ACT_HI_VARINST
歷史的流程運(yùn)行中的變量信息
用戶用戶組表
ACT_ID_GROUP
身份信息-組信息
ACT_ID_INFO
身份信息-組信息
ACT_ID_MEMBERSHIP
身份信息-用戶和組關(guān)系的中間表
ACT_ID_USER
身份信息-用戶信息
流程定義表
ACT_RE_DEPLOYMENT
部署單元信息
ACT_RE_MODEL
模型信息
ACT_RE_PROCDEF
已部署的流程定義
運(yùn)行實(shí)例表
ACT_RU_EVENT_SUBSCR
運(yùn)行時事件
ACT_RU_EXECUTION
運(yùn)行時流程執(zhí)行實(shí)例
ACT_RU_IDENTITYLINK
運(yùn)行時用戶關(guān)系信息
ACT_RU_JOB
運(yùn)行時作業(yè)
ACT_RU_TASK
運(yùn)行時任務(wù)
ACT_RU_VARIABLE
運(yùn)行時變量表
1.2.2表名:ACT_GE_BYTEARRAY(通用的流程定義和流程資源)
用來保存部署文件的大文本數(shù)據(jù)。
保存流程定義圖片和xml、Serializable(序列化)的變量,即保存所有二進(jìn)制數(shù)據(jù),特別注意類路徑部署時候,不要把svn等隱藏文件或者其他與流程無關(guān)的文件也一起部署到該表中,會造成一些錯誤(可能導(dǎo)致流程定義無法刪除)。
ACT_GE_BYTEARRAY(act_ge_bytearray)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
可空
約束
缺省值
取值說明
是
ID_
主鍵ID,資源文件編號,自增長
VARCHAR(64)
REV_
版本號
INT(11)
是
Version
NAME_
部署的文件名稱,
VARCHAR(255)
是
mail.bpmn、mail.png 、mail.bpmn20.xml
DEPLOYMENT_ID_
來自于父表ACT_RE_DEPLOYMENT的主鍵
VARCHAR(64)
是
部署的ID
BYTES_
大文本類型,存儲文本字節(jié)流
LONGBLOB
是
GENERATED_
是否是引擎生成。
TINYINT(4)
是
0為用戶生成
1為Activiti生成
1.2.3 表名:ACT_GE_PROPERTY(系統(tǒng)相關(guān)屬性)
屬性數(shù)據(jù)表。存儲這個流程引擎級別的數(shù)據(jù)。
ACT_GE_PROPERTY(act_ge_property)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
NAME_
屬性名稱
VARCHAR(64)
64
schema.version
schema.history
next.dbid
VALUE_
屬性值
VARCHAR(300)
300
是
5.*
create(5.*)
REV_INT
版本號
INT(11)
11
是
1.2.4表名:ACT_HI_ACTINST(歷史節(jié)點(diǎn)表)
歷史活動信息。這里記錄流程流轉(zhuǎn)過的所有節(jié)點(diǎn),與HI_TASKINST不同的是,taskinst只記錄usertask內(nèi)容。
ACT_HI_ACTINST(act_hi_actinst)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
可空
約束
取值說明
是
ID_
ID_
VARCHAR(64)
PROC_DEF_ID_
流程定義ID
VARCHAR(64)
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
EXECUTION_ID_
流程執(zhí)行ID
VARCHAR(64)
ACT_ID_
活動ID
VARCHAR(255)
節(jié)點(diǎn)定義ID
TASK_ID_
任務(wù)ID
VARCHAR(64)
是
任務(wù)實(shí)例ID 其他節(jié)點(diǎn)類型實(shí)例ID在這里為空
CALL_PROC_INST_ID_
請求流程實(shí)例ID
VARCHAR(64)
是
調(diào)用外部流程的流程實(shí)例ID'
ACT_NAME_
活動名稱
VARCHAR(255)
是
節(jié)點(diǎn)定義名稱
ACT_TYPE_
活動類型
VARCHAR(255)
如startEvent、userTask
ASSIGNEE_
代理人員
VARCHAR(64)
是
節(jié)點(diǎn)簽收人
START_TIME_
開始時間
DATETIME
2013-09-15 11:30:00
END_TIME_
結(jié)束時間
DATETIME
是
2013-09-15 11:30:00
DURATION_
時長,耗時
BIGINT(20)
是
毫秒值
1.2.5 表名:ACT_HI_ATTACHMENT(附件信息)
ACT_HI_ATTACHMENT(act_hi_attachment)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
主鍵ID
REV_
REV_
INT(11)
11
是
Version
USER_ID_
用戶id
VARCHAR(255)
255
是
用戶ID
NAME_
名稱
VARCHAR(255)
255
是
附件名稱
DESCRIPTION_
描述
VARCHAR(4000)
4000
是
描述
TYPE_
類型
VARCHAR(255)
255
是
附件類型
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
節(jié)點(diǎn)實(shí)例ID
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
流程實(shí)例ID
URL_
連接
VARCHAR(4000)
4000
是
附件地址
CONTENT_ID_
內(nèi)容Id
字節(jié)表的ID
VARCHAR(64)
64
是
ACT_GE_BYTEARRAY的ID
1.2.6 表名:ACT_HI_COMMENT(歷史審批意見表)
ACT_HI_COMMENT(act_hi_comment)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
主鍵ID
TYPE_
意見記錄類型,為comment時,為處理意見
VARCHAR(255)
255
是
類型:event(事件)
comment(意見)
TIME_
記錄時間
DATETIME
填寫時間
USER_ID_
用戶Id
VARCHAR(255)
255
是
填寫人
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
節(jié)點(diǎn)實(shí)例ID
PROC_INST_ID_
流程實(shí)例Id
VARCHAR(64)
64
是
流程實(shí)例ID
ACTION_
行為類型。
為addcomment時,為處理意見
VARCHAR(255)
255
是
值為下列內(nèi)容中的一種: AddUserLink、DeleteUserLink、AddGroupLink、DeleteGroupLink、AddComment、AddAttachment、DeleteAttachment
MESSAGE_
處理意見
VARCHAR(4000)
4000
是
用于存放流程產(chǎn)生的信息,比如審批意見
FULL_MSG_
全部消息
LONGBLOB
是
1.2.7表名:ACT_HI_DETAIL(歷史詳細(xì)信息)
歷史詳情表:流程中產(chǎn)生的變量詳細(xì),包括控制流程流轉(zhuǎn)的變量,業(yè)務(wù)表單中填寫的流程需要用到的變量等。
ACT_HI_DETAIL(act_hi_detail)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
主鍵
TYPE_
數(shù)據(jù)類型
VARCHAR(255)
255
類型:
FormProperty, //表單
VariableUpdate //參數(shù)
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
流程實(shí)例ID
EXECUTION_ID_
執(zhí)行實(shí)例Id
VARCHAR(64)
64
是
執(zhí)行實(shí)例ID
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
任務(wù)實(shí)例ID
ACT_INST_ID_
活動實(shí)例Id
VARCHAR(64)
64
是
ACT_HI_ACTINST表的ID
NAME_
名稱
VARCHAR(255)
255
名稱
VAR_TYPE_
變量類型
VARCHAR(255)
255
是
參見VAR_TYPE_類型說明
REV_
REV_
INT(11)
11
是
Version
TIME_
創(chuàng)建時間
DATETIME
創(chuàng)建時間
BYTEARRAY_ID_
字節(jié)數(shù)組Id
VARCHAR(64)
64
是
ACT_GE_BYTEARRAY表的ID
DOUBLE_
DOUBLE_
DOUBLE
是
存儲變量類型為Double
LONG_
LONG_
BIGINT(20)
20
是
存儲變量類型為long
TEXT_
值
VARCHAR(4000)
4000
是
存儲變量值類型為String
TEXT2_
值2
VARCHAR(4000)
4000
是
此處存儲的是JPA持久化對象時,才會有值。此值為對象ID
備注:VAR_TYPE_類型說明: jpa-entity、boolean、bytes、serializable(可序列化)、自定義type(根據(jù)你自身配置)、 CustomVariableType、date、double、integer、long、null、short、string
1.2.8 表名:ACT_HI_IDENTITYLINK (歷史流程人員表)
任務(wù)參與者數(shù)據(jù)表。主要存儲歷史節(jié)點(diǎn)參與者的信息。
ACT_HI_IDENTITYLINK(act_hi_identitylink)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
ID_
GROUP_ID_
用戶組ID
VARCHAR(255)
255
是
組ID
TYPE_
用戶組類型
VARCHAR(255)
255
是
類型,主要分為以下幾種:
assignee、
candidate、
owner、starter 、participant
USER_ID_
用戶ID
VARCHAR(255)
255
是
用戶ID
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
節(jié)點(diǎn)實(shí)例ID
PROC_INST_ID_
流程實(shí)例Id
VARCHAR(64)
64
是
流程實(shí)例ID
1.2.9 表名:ACT_HI_PROCINST(歷史流程實(shí)例信息)核心表
ACT_HI_PROCINST(act_hi_procinst)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
BUSINESS_KEY_
業(yè)務(wù)Key
VARCHAR(255)
255
是
PROC_DEF_ID_
流程定義Id
VARCHAR(64)
64
START_TIME_
開始時間
DATETIME
END_TIME_
結(jié)束時間
DATETIME
是
DURATION_
時長
BIGINT(20)
20
是
START_USER_ID_
發(fā)起人員Id
VARCHAR(255)
255
是
START_ACT_ID_
開始節(jié)點(diǎn)
VARCHAR(255)
255
是
END_ACT_ID_
結(jié)束節(jié)點(diǎn)
VARCHAR(255)
255
是
SUPER_PROCESS_INSTANCE_ID_
超級流程實(shí)例Id
VARCHAR(64)
64
是
DELETE_REASON_
刪除理由
VARCHAR(4000)
4000
是
1.2.10 表名:ACT_HI_TASKINST(歷史任務(wù)流程實(shí)例信息)核心表
ACT_HI_TASKINST(act_hi_taskinst)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
主鍵ID
PROC_DEF_ID_
流程定義Id
VARCHAR(64)
64
是
流程定義ID
TASK_DEF_KEY_
任務(wù)定義Key
VARCHAR(255)
255
是
節(jié)點(diǎn)定義ID
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
流程實(shí)例ID
EXECUTION_ID_
執(zhí)行ID
VARCHAR(64)
64
是
執(zhí)行實(shí)例ID
NAME_
名稱
VARCHAR(255)
255
是
名稱
PARENT_TASK_ID_
父任務(wù)iD
VARCHAR(64)
64
是
父節(jié)點(diǎn)實(shí)例ID
DESCRIPTION_
描述
VARCHAR(4000)
4000
是
描述
OWNER_
實(shí)際簽收人 任務(wù)的擁有者
VARCHAR(255)
255
是
簽收人(默認(rèn)為空,只有在委托時才有值)
ASSIGNEE_
代理人
VARCHAR(255)
255
是
簽收人或被委托
START_TIME_
開始時間
DATETIME
開始時間
CLAIM_TIME_
提醒時間
DATETIME
是
提醒時間
END_TIME_
結(jié)束時間
DATETIME
是
結(jié)束時間
DURATION_
時長
BIGINT(20)
20
是
耗時
DELETE_REASON_
刪除理由
VARCHAR(4000)
4000
是
刪除原因(completed,deleted)
PRIORITY_
優(yōu)先級
INT(11)
11
是
優(yōu)先級別
DUE_DATE_
應(yīng)完成時間
DATETIME
是
過期時間,表明任務(wù)應(yīng)在多長時間內(nèi)完成
FORM_KEY_
表單key
VARCHAR(255)
255
是
desinger節(jié)點(diǎn)定義的
form_key屬性
1.2.11 表名:ACT_HI_VARINST(歷史變量信息)
ACT_HI_VARINST(act_hi_varinst)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
ID_
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
流程實(shí)例ID
EXECUTION_ID_
執(zhí)行ID
VARCHAR(64)
64
是
執(zhí)行實(shí)例ID
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
任務(wù)實(shí)例ID
NAME_
名稱
VARCHAR(255)
255
參數(shù)名稱(英文)
VAR_TYPE_
變量類型
VARCHAR(100)
100
是
參見VAR_TYPE_類型說明
REV_
REV_
INT(11)
11
是
Version
BYTEARRAY_ID_
字節(jié)數(shù)組ID
VARCHAR(64)
64
是
ACT_GE_BYTEARRAY表的主鍵
DOUBLE_
DOUBLE_
DOUBLE
是
存儲DoubleType類型的數(shù)據(jù)
LONG_
LONG_
BIGINT(20)
20
是
存儲LongType類型的數(shù)據(jù)
TEXT_
TEXT_
VARCHAR(4000)
4000
是
存儲變量值類型為String,如此處存儲持久化對象時,值jpa對象的class
TEXT2_
TEXT2_
VARCHAR(4000)
4000
是
此處存儲的是JPA持久化對象時,才會有值。此值為對象ID
1.2.12 表名:ACT_ID_GROUP(用戶組表)
用來存儲用戶組信息。
ACT_ID_GROUP(act_id_group)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
用戶組ID
VARCHAR(64)
64
REV_
版本號
INT(11)
11
是
NAME_
用戶組描述信息
VARCHAR(255)
255
是
TYPE_
用戶組類型
VARCHAR(255)
255
是
1.2.13 表名:ACT_ID_INFO(用戶擴(kuò)展信息表)
用戶擴(kuò)展信息表。目前該表未用到。
ACT_ID_INFO(act_id_info)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
VARCHAR(64)
64
REV_
版本號
INT(11)
11
是
USER_ID_
用戶ID
VARCHAR(64)
64
是
TYPE_
類型
VARCHAR(64)
64
是
KEY_
formINPut名稱
VARCHAR(255)
255
是
VALUE_
值
VARCHAR(255)
255
是
PASSWORD_
密碼
LONGBLOB
是
PARENT_ID_
父節(jié)點(diǎn)
VARCHAR(255)
255
是
1.2.14 表名:ACT_ID_MEMBERSHIP(用戶用戶組關(guān)聯(lián)表)
用來保存用戶的分組信息
ACT_ID_MEMBERSHIP(act_id_membership)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
USER_ID_
用戶Id
VARCHAR(64)
64
是
GROUP_ID_
用戶組Id
VARCHAR(64)
64
1.2.15 表名:ACT_ID_USER(用戶信息表)
ACT_ID_USER(act_id_user)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
REV_
版本號
INT(11)
11
是
FIRST_
用戶名稱
VARCHAR(255)
255
是
LAST_
用戶姓氏
VARCHAR(255)
255
是
EMAIL_
郵箱
VARCHAR(255)
255
是
PWD_
密碼
VARCHAR(255)
255
是
PICTURE_ID_
頭像Id
VARCHAR(64)
64
是
1.2.16 表名:ACT_RE_DEPLOYMENT(部署信息表)
用來存儲部署時需要持久化保存下來的信息
ACT_RE_DEPLOYMENT(act_re_deployment)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
部署編號,自增長
VARCHAR(64)
64
NAME_
部署包的名稱
VARCHAR(255)
255
是
CATEGORY_
類型
VARCHAR(255)
255
是
TENANT_ID_
租戶
VARCHAR(255)
255
是
多租戶通常是在軟件需要為多個不同組織服務(wù)時產(chǎn)生的概念
DEPLOY_TIME_
部署時間
TIMESTAMP
CURRENT_TIMESTAMP
1.2.17 表名:ACT_RE_MODEL(流程設(shè)計(jì)模型表)
創(chuàng)建流程的設(shè)計(jì)模型時,保存在該數(shù)據(jù)表中。
ACT_RE_MODEL(act_re_model)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
ID_
REV_
INT(11)
11
是
樂觀鎖
NAME_
模型的名稱:
比如:收文管理
VARCHAR(255)
255
是
名稱
KEY_
模型的關(guān)鍵字,流程引擎用到。
比如:FTOA_SWGL
VARCHAR(255)
255
是
分類,例如:
http://www.mossle.com/docs/activiti/
CATEGORY_
類型,用戶自己對流程模型的分類。
VARCHAR(255)
255
是
分類
CREATE_TIME_
創(chuàng)建時間
TIMESTAMP
是
創(chuàng)建時間
LAST_UPDATE_TIME_
最后修改時間
TIMESTAMP
是
最新修改時間
VERSION_
版本,從1開始。
INT(11)
11
是
版本
META_INFO_
數(shù)據(jù)源信息,比如:
{"name":"FTOA_SWGL","revision":1,"description":"豐臺財(cái)政局OA,收文管理流程"}
VARCHAR(4000)
4000
是
以json格式保存流程定義的信息
DEPLOYMENT_ID_
部署ID
VARCHAR(64)
64
是
部署ID
EDITOR_SOURCE_VALUE_ID_
編輯源值ID
VARCHAR(64)
64
是
是 ACT_GE_BYTEARRAY 表中的ID_值。
EDITOR_SOURCE_EXTRA_VALUE_ID_
編輯源額外值ID(外鍵ACT_GE_BYTEARRAY )
VARCHAR(64)
64
是
是 ACT_GE_BYTEARRAY 表中的ID_值。
TENANT_ID_
租戶
VARCHAR(255)
255
是
1.2.18 表名:ACT_RE_PROCDEF(流程定義:解析表)
流程解析表,解析成功了,在該表保存一條記錄。業(yè)務(wù)流程定義數(shù)據(jù)表
ACT_RE_PROCDEF(act_re_procdef)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省
備注
是
ID_
流程ID,由“流程編號:流程版本號:自增長ID”組成
VARCHAR(64)
64
ID_
REV_
版本號
INT(11)
11
是
樂觀鎖
CATEGORY_
流程命名空間(該編號就是流程文件targetNamespace的屬性值)
VARCHAR(255)
255
是
流程定義的Namespace就是類別
NAME_
流程名稱(該編號就是流程文件process元素的name屬性值)
VARCHAR(255)
255
是
名稱
KEY_
流程編號(該編號就是流程文件process元素的id屬性值)
VARCHAR(255)
255
流程定義ID
VERSION_
流程版本號(由程序控制,新增即為1,修改后依次加1來完成的)
INT(11)
11
版本
DEPLOYMENT_ID_
部署編號
VARCHAR(64)
64
是
部署表ID
RESOURCE_NAME_
資源文件名稱
VARCHAR(4000)
4000
是
流程bpmn文件名稱
DGRM_RESOURCE_NAME_
圖片資源文件名稱
VARCHAR(4000)
4000
是
png流程圖片名稱
DESCRIPTION_
描述信息
VARCHAR(4000)
4000
是
描述
HAS_START_FORM_KEY_
是否從key啟動
TINYINT(4)
4
是
start節(jié)點(diǎn)是否存在formKey
0否 1是
SUSPENSION_STATE_
是否掛起
INT(11)
11
是
1激活 2掛起
注:此表和ACT_RE_DEPLOYMENT是多對一的關(guān)系,即,一個部署的bar包里可能包含多個流程定義文件,每個流程定義文件都會有一條記錄在ACT_RE_PROCDEF表內(nèi),每個流程定義的數(shù)據(jù),都會對于ACT_GE_BYTEARRAY表內(nèi)的一個資源文件和PNG圖片文件。和ACT_GE_BYTEARRAY的關(guān)聯(lián)是通過程序用ACT_GE_BYTEARRAY.NAME與ACT_RE_PROCDEF.NAME_完成的,在數(shù)據(jù)庫表結(jié)構(gòu)中沒有體現(xiàn)。
1.2.19 表名:ACT_RU_EVENT_SUBSCR(運(yùn)行時事件)
ACT_RU_EVENT_SUBSCR(act_ru_event_subscr)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID
VARCHAR(64)
64
REV_
版本號
INT(11)
11
是
EVENT_TYPE_
事件類型
VARCHAR(255)
255
EVENT_NAME_
事件名稱
VARCHAR(255)
255
是
EXECUTION_ID_
流程執(zhí)行ID
VARCHAR(64)
64
是
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
ACTIVITY_ID_
活動ID
VARCHAR(64)
64
是
CONFIGURATION_
配置信息
VARCHAR(255)
255
是
CREATED_
創(chuàng)建時間
TIMESTAMP
CURRENT_TIMESTAMP
1.2.20 表名:ACT_RU_EXECUTION(運(yùn)行時流程執(zhí)行實(shí)例)
核心,我的代辦任務(wù)查詢表
ACT_RU_EXECUTION(act_ru_execution)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
ID_
REV_
版本號
INT(11)
11
是
樂觀鎖
PROC_INST_ID_
流程實(shí)例編號
VARCHAR(64)
64
是
流程實(shí)例ID
BUSINESS_KEY_
業(yè)務(wù)編號
VARCHAR(255)
255
是
業(yè)務(wù)主鍵ID
PARENT_ID_
父執(zhí)行流程
VARCHAR(64)
64
是
父節(jié)點(diǎn)實(shí)例ID
PROC_DEF_ID_
流程定義Id
VARCHAR(64)
64
是
流程定義ID
SUPER_EXEC_
VARCHAR(64)
64
是
ACT_ID_
實(shí)例id
VARCHAR(255)
255
是
節(jié)點(diǎn)實(shí)例ID即
ACT_HI_ACTINST中ID
IS_ACTIVE_
激活狀態(tài)
TINYINT(4)
4
是
是否存活
IS_CONCURRENT_
并發(fā)狀態(tài)
TINYINT(4)
4
是
是否為并行(true/false)
IS_SCOPE_
TINYINT(4)
4
是
IS_EVENT_SCOPE_
TINYINT(4)
4
是
SUSPENSION_STATE_
暫停狀態(tài)_
INT(11)
11
是
掛起狀態(tài) 1激活 2掛起
CACHED_ENT_STATE_
緩存結(jié)束狀態(tài)_
INT(11)
11
是
1.2.21 表名:ACT_RU_IDENTITYLINK(身份聯(lián)系)
主要存儲當(dāng)前節(jié)點(diǎn)參與者的信息,任務(wù)參與者數(shù)據(jù)表。
ACT_RU_IDENTITYLINK(act_ru_identitylink)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
REV_
版本號
INT(11)
11
是
GROUP_ID_
用戶組ID
VARCHAR(255)
255
是
TYPE_
用戶組類型
VARCHAR(255)
255
是
主要分為以下幾種:assignee、candidate、
owner、starter、participant。即:受讓人,候選人,所有者、起動器、參與者
USER_ID_
用戶ID
VARCHAR(255)
255
是
TASK_ID_
任務(wù)Id
VARCHAR(64)
64
是
PROC_INST_ID_
流程實(shí)例ID
VARCHAR(64)
64
是
PROC_DEF_ID_
流程定義Id
VARCHAR(64)
64
是
1.2.22 表名:ACT_RU_JOB(運(yùn)行中的任務(wù))
運(yùn)行時定時任務(wù)數(shù)據(jù)表
ACT_RU_JOB(act_ru_job)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
標(biāo)識
REV_
版本號
INT(11)
11
是
版本
TYPE_
TYPE_
VARCHAR(255)
255
類型
LOCK_EXP_TIME_
LOCK_EXP_TIME_
TIMESTAMP
是
鎖定釋放時間
LOCK_OWNER_
LOCK_OWNER_
VARCHAR(255)
255
是
掛起者
EXCLUSIVE_
EXCLUSIVE_
TINYINT(1)
1
是
EXECUTION_ID_
EXECUTION_ID_
VARCHAR(64)
64
是
執(zhí)行實(shí)例ID
PROCESS_INSTANCE_ID_
PROCESS_INSTANCE_ID_
VARCHAR(64)
64
是
流程實(shí)例ID
PROC_DEF_ID_
PROC_DEF_ID_
VARCHAR(64)
64
是
流程定義ID
RETRIES_
RETRIES_
INT(11)
11
是
EXCEPTION_STACK_ID_
EXCEPTION_STACK_ID_
VARCHAR(64)
64
是
異常信息ID
EXCEPTION_MSG_
EXCEPTION_MSG_
VARCHAR(4000)
4000
是
異常信息
DUEDATE_
DUEDATE_
TIMESTAMP
是
到期時間
REPEAT_
REPEAT_
VARCHAR(255)
255
是
重復(fù)
HANDLER_TYPE_
HANDLER_TYPE_
VARCHAR(255)
255
是
處理類型
HANDLER_CFG_
HANDLER_CFG_
VARCHAR(4000)
4000
是
標(biāo)識
1.2.23 表名:ACT_RU_TASK(運(yùn)行時任務(wù)數(shù)據(jù)表)
(執(zhí)行中實(shí)時任務(wù))代辦任務(wù)查詢表
ACT_RU_TASK(act_ru_task)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
取值說明
是
ID_
ID_
VARCHAR(64)
64
ID_
REV_
版本號
INT(11)
11
是
樂觀鎖
EXECUTION_ID_
實(shí)例id(外鍵EXECUTION_ID_)
VARCHAR(64)
64
是
執(zhí)行實(shí)例ID
PROC_INST_ID_
流程實(shí)例ID(外鍵PROC_INST_ID_)
VARCHAR(64)
64
是
流程實(shí)例ID
PROC_DEF_ID_
流程定義ID
VARCHAR(64)
64
是
流程定義ID
NAME_
任務(wù)名稱
VARCHAR(255)
255
是
節(jié)點(diǎn)定義名稱
PARENT_TASK_ID_
父節(jié)任務(wù)ID
VARCHAR(64)
64
是
父節(jié)點(diǎn)實(shí)例ID
DESCRIPTION_
任務(wù)描述
VARCHAR(4000)
4000
是
節(jié)點(diǎn)定義描述
TASK_DEF_KEY_
任務(wù)定義key
VARCHAR(255)
255
是
任務(wù)定義的ID
OWNER_
所屬人(老板)
VARCHAR(255)
255
是
擁有者(一般情況下為空,只有在委托時才有值)
ASSIGNEE_
代理人員
(受讓人)
VARCHAR(255)
255
是
簽收人或委托人
DELEGATION_
代理團(tuán)
VARCHAR(64)
64
是
委托類型,DelegationState分為兩種:PENDING,RESOLVED。如無委托則為空
PRIORITY_
優(yōu)先權(quán)
INT(11)
11
是
優(yōu)先級別,默認(rèn)為:50
CREATE_TIME_
創(chuàng)建時間
TIMESTAMP
創(chuàng)建時間,CURRENT_TIMESTAMP
DUE_DATE_
執(zhí)行時間
DATETIME
是
耗時
SUSPENSION_STATE_
暫停狀態(tài)
INT(11)
11
是
1代表激活 2代表掛起
1.2.24 表名:ACT_RU_VARIABLE(運(yùn)行時流程變量數(shù)據(jù)表)
ACT_RU_VARIABLE(act_ru_variable)
是否主鍵
字段名
字段描述
數(shù)據(jù)類型
長度
可空
約束
缺省值
備注
是
ID_
ID_
VARCHAR(64)
64
主鍵標(biāo)識
REV_
版本號
INT(11)
11
是
樂觀鎖
TYPE
編碼類型
VARCHAR(255)
255
參見VAR_TYPE_類型說明
NAME_
變量名稱
VARCHAR(255)
255
變量名稱
EXECUTION_ID_
執(zhí)行實(shí)例ID
VARCHAR(64)
64
是
執(zhí)行的ID
PROC_INST_ID_
流程實(shí)例Id
VARCHAR(64)
64
是
流程實(shí)例ID
TASK_ID_
任務(wù)id
VARCHAR(64)
64
是
節(jié)點(diǎn)實(shí)例ID(Local)
BYTEARRAY_ID_
字節(jié)組ID
VARCHAR(64)
64
是
字節(jié)表的ID
(ACT_GE_BYTEARRAY)
DOUBLE_
DOUBLE_
DOUBLE
是
存儲變量類型為Double
LONG_
LONG_
BIGINT(20)
20
是
存儲變量類型為long
TEXT_
TEXT_
VARCHAR(4000)
4000
是
存儲變量值類型為String
如此處存儲持久化對象時,值jpa對象的class
TEXT2_
TEXT2_
VARCHAR(4000)
4000
是
此處存儲的是JPA持久化對象時,才會有值。此值為對象ID
2 Activiti中主要對象的關(guān)系
本節(jié)主要介紹在工作流中出現(xiàn)的幾個對象及其之間的關(guān)系,以及在Activiti中各個對象是如何關(guān)聯(lián)的。
在開始之前先看看下圖,對整個對象結(jié)構(gòu)有個了解,再結(jié)合實(shí)例詳細(xì)介紹理解。
圖1.Activiti中幾個對象之間的關(guān)系
我們模擬一個請假的流程進(jìn)行分析介紹,該流程主要包含以下幾個步驟:
u 員工申請請假
u 部門領(lǐng)導(dǎo)審批
u 人事審批
u 員工銷假
ProcessInstance對象
員工開始申請請假流程,通過runtimeService.startProcessInstance()方法啟動,引擎會創(chuàng)建一個流程實(shí)例(ProcessInstance)。
簡單來說流程實(shí)例就是根據(jù)一次(一條)業(yè)務(wù)數(shù)據(jù)用流程驅(qū)動的入口,兩者之間是一對一的關(guān)系。流程引擎會創(chuàng)建一條數(shù)據(jù)到ACT_RU_EXECUTION表,同時也會根據(jù)history的級別決定是否查詢相同的歷史數(shù)據(jù)到ACT_HI_PROCINST表。
啟動完流程之后業(yè)務(wù)和流程已經(jīng)建立了關(guān)聯(lián)關(guān)系,第一步結(jié)束。
啟動流程和業(yè)務(wù)關(guān)聯(lián)區(qū)別:
u 對于自定義表單來說啟動的時候會傳入businessKey作為業(yè)務(wù)和流程的關(guān)聯(lián)屬性
u 對于動態(tài)表單來說不需要使用businessKey關(guān)聯(lián),因?yàn)樗械臄?shù)據(jù)都保存在引擎的表中
u 對于外部表單來說businessKey是可選的,但是一般不會為空,和自定義表單類似
Execution對象
對于初學(xué)者來說,最難理解的地方就是ProcessInstance與Execution之間的關(guān)系,要分兩種情況說明。Execution的含義就是一個流程實(shí)例(ProcessInstance)具體要執(zhí)行的過程對象。
不過在說明之前先聲明兩者的對象映射關(guān)系:
ProcessInstance(1)→ Execution(N),(其中N>=1)。
1) 值相等的情況:
除了在流程中啟動的子流程之外,流程啟動之后在表ACT_RU_EXECUTION中的字段ID_和PROC_INST_ID_字段值是相同的。
圖2.ID_和PROC_INST_ID_相等
2) 值不相等的情況:
不相等的情況目前只會出現(xiàn)在子流程中(包含:嵌套、引入),例如一個購物流程中除了下單、出庫節(jié)點(diǎn)之外可能還有一個付款子流程,在實(shí)際企業(yè)應(yīng)用中付款流程通常是作為公用的,所以使用子流程作為主流程(購物流程)的一部分。
當(dāng)任務(wù)到達(dá)子流程時引擎會自動創(chuàng)建一個付款流程,但是這個流程有一個特殊的地方,在數(shù)據(jù)庫可以直觀體現(xiàn),如下圖。
圖3.ID_和PROC_INST_ID_不相等
上圖中有兩條數(shù)據(jù),第二條數(shù)據(jù)(嵌入的子流程)的PARENT_ID_等于第一條數(shù)據(jù)的ID_和PROC_INST_ID_,并且兩條數(shù)據(jù)的PROC_INST_ID_相同。
上圖中還有一點(diǎn)特殊的地方,字段IS_ACTIVE_的值分別是0和1,說明正在執(zhí)行子流程主流程掛起。
Task對象
前面說了ProcessInstance和業(yè)務(wù)是一對一關(guān)聯(lián)的,和業(yè)務(wù)數(shù)據(jù)最親密;而Task則和用戶最親密的(UserTask),用戶每天的待辦事項(xiàng)就是一個個的Task對象。
從圖1中看得出Execution和Task是一對一關(guān)系,Task可以是任何類型的Task實(shí)現(xiàn),可以是用戶任務(wù)(UserTask)、Java服務(wù)(JavaServiceTask)等,在實(shí)際流程運(yùn)行中只不過面向?qū)ο蟛煌脩羧蝿?wù)(UserTask)需要有人為參與完成(complete),Java服務(wù)需要由系統(tǒng)自動執(zhí)行(execution)。
圖4. 表ACT_RU_TASK
Task是在流程定義中看到的最大單位,每當(dāng)一個Task完成的時候引擎會把當(dāng)前的任務(wù)移動到歷史中,然后插入下一個任務(wù)插入到表ACT_RU_TASK中。結(jié)合請假流程來說就是讓用戶點(diǎn)擊“完成”按鈕提交當(dāng)前任務(wù)是的動作,引擎自動根據(jù)任務(wù)的順序流或者排他分支判斷走向。
HistoryActivity(歷史活動)
圖5. 表ACT_HI_ACTINST
Activity包含了流程中所有的活動數(shù)據(jù),例如開始事件(圖5表中的第1條數(shù)據(jù))、各種分支(排他分支、并行分支等,圖5表中的第2條數(shù)據(jù))、以及剛剛提到的Task執(zhí)行記錄(如圖5表中的第3、4條數(shù)據(jù))。
有些人認(rèn)為Activity和Task是多對一關(guān)系,其實(shí)不是,從上圖中可以看出來根本沒有Task相關(guān)的字段。
結(jié)合請假流程來說,如Task中提到的當(dāng)完成流程的時候所有下一步要執(zhí)行的任務(wù)(包括各種分支)都會創(chuàng)建一個Activity記錄到數(shù)據(jù)庫中。例如領(lǐng)導(dǎo)審核節(jié)點(diǎn)點(diǎn)擊“同意”按鈕就會流轉(zhuǎn)到人事審批節(jié)點(diǎn),如果“駁回”那就流轉(zhuǎn)到調(diào)整請假內(nèi)容節(jié)點(diǎn),每一次操作的Task背后實(shí)際記錄更詳細(xì)的活動(Activity)。
---------------------
作者:Joker_Ye
來源:CSDN
原文:https://blog.csdn.net/hj7jay/article/details/51302829
版權(quán)聲明:本文為博主原創(chuàng)文章,轉(zhuǎn)載請附上博文鏈接!