Activiti是一個輕量級的開源BPM平台,其採用了BPMN 2.0標準,提供了完整的BPMN流程設計、部署、運行和管理功能。在Activiti中,所有的流程定義都存儲在資料庫中。本文將從多個方面對Activiti表結構進行詳細的闡述。
一、 ACT_RE_EUROPA: EUROPA模型表
其中,EUROPA表示Easy-to-Use Rapid Object Process Application(易於使用的快速對象處理應用程序),是一個流程圖形化模型工具,其表結構如下:
CREATE TABLE act_re_europa ( ID_ VARCHAR2(64) NOT NULL, REV_ NUMBER(19) DEFAULT NULL, RETIRED_ NUMBER(5) DEFAULT NULL, NAME_ VARCHAR2(255) DEFAULT NULL, JSON_ CLOB DEFAULT NULL, CONSTRAINT ACT_RE_EUROPA_PKEY PRIMARY KEY (ID_) );
其中ID_為模型標識,REV_為模型版本號,RETIRED_為是否廢棄,NAME_為模型名稱,JSON_為模型的JSON格式。
二、ACT_RE_DEPLOYMENT: 部署表
部署是指將一個或多個流程定義文件部署到Activiti Engine中,每個部署對應一個部署ID。該表結構如下:
CREATE TABLE act_re_deployment ( ID_ VARCHAR2(64) NOT NULL, NAME_ VARCHAR2(255) DEFAULT NULL, CATEGORY_ VARCHAR2(255) DEFAULT NULL, KEY_ VARCHAR2(255) DEFAULT NULL, TENANT_ID_ VARCHAR2(255) DEFAULT '', DEPLOY_TIME_ TIMESTAMP(6) NOT NULL, ENGINE_VERSION_ VARCHAR2(255) DEFAULT NULL, CONSTRAINT ACT_RE_DEPLOYMENT_PKEY PRIMARY KEY (ID_) );
其中ID_為部署ID,NAME_為部署名稱,CATEGORY_為部署分類,KEY_為部署關鍵字,TENANT_ID_為租戶ID,DEPLOY_TIME_為部署時間,ENGINE_VERSION_為引擎版本號。
三、ACT_RE_PROCDEF: 流程定義表
流程定義是指在發布後,可用於創建一個或多個實例的「模板」。該表結構如下:
CREATE TABLE act_re_procdef ( ID_ VARCHAR2(64) NOT NULL, NAME_ VARCHAR2(255) DEFAULT NULL, KEY_ VARCHAR2(255) NOT NULL, VERSION_ NUMBER(19) NOT NULL, CATEGORY_ VARCHAR2(255) DEFAULT NULL, DEPLOYMENT_ID_ VARCHAR2(64) NOT NULL, RESOURCE_NAME_ VARCHAR2(4000) NOT NULL, DGRM_RESOURCE_NAME_ VARCHAR2(4000) NOT NULL, DESCRIPTION_ VARCHAR2(4000) DEFAULT NULL, HAS_START_FORM_KEY_ NUMBER(1) DEFAULT NULL, HAS_GRAPHICAL_NOTATION_ NUMBER(1) DEFAULT NULL, SUSPENSION_STATE_ NUMBER(11) DEFAULT NULL, TENANT_ID_ VARCHAR2(255) DEFAULT '', HISTORY_TTL_ NUMBER(10) DEFAULT NULL, CONSTRAINT ACT_RE_PROCDEF_PKEY PRIMARY KEY (ID_) );
其中ID_為流程定義ID,NAME_為流程定義名稱,KEY_為流程定義關鍵字,VERSION_為流程定義版本號,CATEGORY_為流程定義分類,DEPLOYMENT_ID_為部署ID,RESOURCE_NAME_為資源名稱,DGRM_RESOURCE_NAME_為圖像資源名稱,DESCRIPTION_為流程定義描述,HAS_START_FORM_KEY_為是否具有用戶啟動表單,HAS_GRAPHICAL_NOTATION_表示是否有圖形記錄,SUSPENSION_STATE_為掛起狀態,TENANT_ID_為租戶ID,HISTORY_TTL_為歷史紀錄的過期時間。
四、ACT_GE_BYTEARRAY: 二進位數據表
該表存儲BPM流程定義中的二進位內容。
CREATE TABLE act_ge_bytearray ( ID_ VARCHAR2(64) NOT NULL, REV_ NUMBER(19) DEFAULT NULL, NAME_ VARCHAR2(4000) DEFAULT NULL, DEPLOYMENT_ID_ VARCHAR2(64) DEFAULT NULL, BYTES_ BLOB DEFAULT NULL, GENERATED_ NUMBER(1) DEFAULT NULL, CONSTRAINT ACT_GE_BYTEARRAY_PKEY PRIMARY KEY (ID_) );
其中ID_為二進位數據ID,REV_為二進位數據版本號,NAME_為二進位數據名稱,DEPLOYMENT_ID_為部署ID,BYTES_為二進位數據內容。
五、ACT_HI_PROCINST: 流程實例歷史表
該表用於存儲已完成的流程實例信息,包括流程實例啟動人、開始、結束時間、是否掛起、結束方式、流程變數等信息。
CREATE TABLE act_hi_procinst ( ID_ VARCHAR2(64) NOT NULL, PROC_INST_ID_ VARCHAR2(64) NOT NULL, BUSINESS_KEY_ VARCHAR2(255) DEFAULT NULL, PROC_DEF_ID_ VARCHAR2(64) NOT NULL, START_TIME_ TIMESTAMP(6) NOT NULL, END_TIME_ TIMESTAMP(6) DEFAULT NULL, DURATION_ NUMBER(19) DEFAULT NULL, START_USER_ID_ VARCHAR2(255) DEFAULT NULL, START_ACT_ID_ VARCHAR2(255) DEFAULT NULL, END_ACT_ID_ VARCHAR2(255) DEFAULT NULL, DELETE_REASON_ VARCHAR2(4000) DEFAULT NULL, SUPER_PROCESS_INSTANCE_ID_ VARCHAR2(64) DEFAULT NULL, ROOT_PROC_INST_ID_ VARCHAR2(64) DEFAULT NULL, TENANT_ID_ VARCHAR2(255) DEFAULT '', CONSTRAINT ACT_HI_PROCINST_PKEY PRIMARY KEY (ID_) );
其中ID_為流程歷史ID,PROC_INST_ID_為流程實例ID,BUSINESS_KEY_為流程實例業務關鍵字,PROC_DEF_ID_為流程定義ID,START_TIME_為流程實例啟動時間,END_TIME_為流程結束時間,DURATION_為流程持續時間,START_USER_ID_為流程實例啟動人ID,START_ACT_ID_為開始節點ID,END_ACT_ID_為結束節點ID,DELETE_REASON_為流程實例刪除原因,SUPER_PROCESS_INSTANCE_ID_為父流程實例ID,ROOT_PROC_INST_ID_為根流程實例ID。
六、ACT_HI_TASKINST: 任務歷史表
該表用來保存已完成的任務實例信息,包括任務名稱、任務處理人、任務結束時間等。
CREATE TABLE act_hi_taskinst ( ID_ VARCHAR2(64) NOT NULL, PROC_DEF_ID_ VARCHAR2(64) DEFAULT NULL, TASK_DEF_KEY_ VARCHAR2(255) DEFAULT NULL, PROC_INST_ID_ VARCHAR2(64) DEFAULT NULL, EXECUTION_ID_ VARCHAR2(64) DEFAULT NULL, NAME_ VARCHAR2(255) DEFAULT NULL, PARENT_TASK_ID_ VARCHAR2(64) DEFAULT NULL, DESCRIPTION_ VARCHAR2(4000) DEFAULT NULL, OWNER_ VARCHAR2(255) DEFAULT NULL, ASSIGNEE_ VARCHAR2(255) DEFAULT NULL, START_TIME_ TIMESTAMP(6) NOT NULL, CLAIM_TIME_ TIMESTAMP(6) DEFAULT NULL, END_TIME_ TIMESTAMP(6) DEFAULT NULL, DURATION_ NUMBER(19) DEFAULT NULL, DELETE_REASON_ VARCHAR2(4000) DEFAULT NULL, TASK_DEF_TYPE_ VARCHAR2(255) DEFAULT NULL, PRIORITY_ NUMBER(10) DEFAULT NULL, DUE_DATE_ TIMESTAMP(6) DEFAULT NULL, FORM_KEY_ VARCHAR2(4000) DEFAULT NULL, CATEGORY_ VARCHAR2(255) DEFAULT NULL, TENANT_ID_ VARCHAR2(255) DEFAULT '', CLAIM_TIME_NULL_REPRESENTS_WAIT_STATE_ NUMBER(5) DEFAULT 0, CONSTRAINT ACT_HI_TASKINST_PKEY PRIMARY KEY (ID_) );
其中ID_為任務實例ID,PROC_DEF_ID_表示任務流程定義ID,TASK_DEF_KEY_表示任務定義的key值,PROC_INST_ID_表示流程實例ID, EXECUTION_ID_表示執行ID,NAME_表示任務名稱,PARENT_TASK_ID_表示父任務ID,DESCRIPTION_為任務描述,OWNER_為任務擁有者,ASSIGNEE_為任務處理人,START_TIME_為任務開始時間,CLAIM_TIME_為任務簽收時間,END_TIME_為任務結束時間,DURATION_為任務持續時間,DELETE_REASON_為任務刪除原因,TASK_DEF_TYPE_為任務類型,PRIORITY_為任務優先順序,DUE_DATE_為任務到期時間,FORM_KEY_為任務表單key值,CATEGORY_為任務分類,TENANT_ID_為租戶ID。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/259526.html