📄 1.framework-objects_v062.sql
字号:
--
-- CHARTS
--
create table QX_CHART (
CHART_ID INT NOT NULL,
NAME VARCHAR2(255) NOT NULL,
OWNER_ID INT,
PUBLIC_CHART NUMBER(2) DEFAULT 0 NOT NULL,
SYSTEM_CHART NUMBER(2) DEFAULT 0 NOT NULL,
TIMESTAMP DATE NOT NULL,
BODY CLOB NOT NULL,
constraint PK_QX_CHART primary key (CHART_ID)
);
create index IDX_QX_CHART_OWNER on QX_CHART (OWNER_ID);
create index IDX_QX_CHART_PUBLIC_CHART on QX_CHART (PUBLIC_CHART);
create index IDX_QX_CHART_SYSTEM_CHART on QX_CHART (SYSTEM_CHART);
--
-- HISTORY
--
create table QX_HIS_TABLE (
HIS_TABLE_ID INT NOT NULL,
NAME VARCHAR2(255) NOT NULL,
constraint PK_QX_HIS_TABLE primary key (HIS_TABLE_ID)
);
create table QX_HIS_FIELD (
HIS_FIELD_ID INT NOT NULL,
HIS_TABLE_ID INT NOT NULL,
NAME VARCHAR2(255) NOT NULL,
constraint PK_QX_HIS_FIELD primary key (HIS_FIELD_ID, HIS_TABLE_ID),
constraint FK_QX_HIS_FIELD_QX_HIS_TAB foreign key (HIS_TABLE_ID) references QX_HIS_TABLE
);
create index IDX_QX_HIS_FIELD_TABLE on QX_HIS_FIELD (HIS_TABLE_ID);
create table QX_HIS_TBLFIELD (
HIS_TABLE_ID INT NOT NULL,
HIS_FIELD_ID INT NOT NULL,
constraint PK_QX_HIS_TBLFIELD primary key (HIS_TABLE_ID, HIS_FIELD_ID),
constraint FK_QX_HIS_TBLFIELD_TABLE foreign key (HIS_TABLE_ID) references QX_HIS_TABLE,
constraint FK_QX_HIS_TBLFIELD_FIELD foreign key (HIS_FIELD_ID, HIS_TABLE_ID) references QX_HIS_FIELD
);
create index IDX_QX_HIS_TBLFIELD_FIELD on QX_HIS_TBLFIELD (HIS_FIELD_ID);
create table QX_HISTORY (
qx_historyid int not null,
qx_history CLOB null,
qx_object VARCHAR2(255) null,
qx_objectid int null,
qx_datemodified date null
);
--
-- TASKS
--
create table QX_TASK_DELAYUNIT (
TASK_DELAYUNIT_ID INT NOT NULL,
TASK_DELAYUNIT_NAME VARCHAR2(255) NOT NULL,
constraint PK_QX_TASK_DELAYUNIT primary key (TASK_DELAYUNIT_ID)
);
create table QX_TASK_STATUS (
TASK_STATUS_ID INT NOT NULL,
TASK_STATUS_NAME VARCHAR2(255) NOT NULL,
constraint PK_QX_TASK_STATUS primary key (TASK_STATUS_ID)
);
create table QX_SCRIPT (
SCRIPT_ID INT NOT NULL,
SCRIPT_NAME VARCHAR2(255) NOT NULL,
SCRIPT_DESCRIPTION VARCHAR2(1022) NULL,
SCRIPT_CLASS_NAME VARCHAR2(255) NOT NULL,
CREATOR_ID INT NOT NULL,
DATE_MODIFIED DATE NOT NULL,
constraint PK_QX_SCRIPT primary key (SCRIPT_ID)
);
create unique index IDX_QX_SCRIPT_NAME on QX_SCRIPT (SCRIPT_NAME);
create unique index IDX_QX_SCRIPT_CLASS_NAME on QX_SCRIPT (SCRIPT_CLASS_NAME);
create index IDX_QX_SCRIPT_CREATOR on QX_SCRIPT (CREATOR_ID);
create table QX_TASK (
TASK_ID INT NOT NULL,
TASK_NAME VARCHAR2(255) NOT NULL,
TASK_STATUS_ID INT NOT NULL,
SCRIPT_ID INT NOT NULL,
CREATOR_ID INT NOT NULL,
DATE_CREATED DATE NOT NULL,
FIRST_START DATE,
NEXT_START DATE,
REPEAT_SIGN NUMBER(2) DEFAULT 0,
AUTO_START NUMBER(2) DEFAULT 0,
DELAY INT,
TASK_DELAYUNIT_ID INT,
LOG_PROCESS_ID NUMBER(38),
constraint PK_QX_TASK primary key (TASK_ID),
constraint FK_QX_TASK_QX_TASK_STATUS foreign key (TASK_STATUS_ID) references QX_TASK_STATUS (TASK_STATUS_ID),
constraint FK_QX_TASK_QX_TDU foreign key (TASK_DELAYUNIT_ID) references QX_TASK_DELAYUNIT (TASK_DELAYUNIT_ID),
constraint FK_QX_TASK_QX_SCRIPT foreign key (SCRIPT_ID) references QX_SCRIPT (SCRIPT_ID)
);
create index IDX_QX_TASK_CREATOR on QX_TASK (CREATOR_ID);
create index IDX_QX_TASK_STATUS on QX_TASK (TASK_STATUS_ID);
create index IDX_QX_TASK_DELAYUNIT on QX_TASK (TASK_DELAYUNIT_ID);
create index IDX_QX_TASK_SCRIPT on QX_TASK (SCRIPT_ID);
--
-- LOCKING
--
create table QX_LOCK (
PKEY INT NOT NULL,
TABLE_NAME VARCHAR2(255) NOT NULL,
RECORD_ID VARCHAR2(100) NOT NULL,
RECORD_ID2 VARCHAR2(100) NOT NULL,
RECORD_ID3 VARCHAR2(100) NOT NULL,
RECORD_ID4 VARCHAR2(100) NOT NULL,
SESSION_ID VARCHAR2(255),
FOCUS_ID VARCHAR2(255),
FOCUS_INSTANCE INT,
USER_ID INT,
USER_TYPE_ID INT,
CREATED DATE,
constraint PK_QX_LOCK primary key (PKEY),
constraint FK_QX_LOCK_QX_USER_TYPE foreign key (USER_TYPE_ID) references QX_USER_TYPE (USER_TYPE_ID)
);
create unique index IDX_LOCK_TABLE_RECORDS on QX_LOCK (
TABLE_NAME,
RECORD_ID,
RECORD_ID2,
RECORD_ID3,
RECORD_ID4
);
create index IDX_QX_LOCK_SESSION on QX_LOCK (SESSION_ID);
create index IDX_QX_LOCK_FOCUS on QX_LOCK (FOCUS_ID);
create index IDX_QX_LOCK_USER on QX_LOCK (USER_ID);
create index IDX_QX_LOCK_USER_TYPE on QX_LOCK (USER_TYPE_ID);
--
-- SEARCH
--
create table QX_SEARCH (
SEARCH_ID INT NOT NULL,
NAME VARCHAR2(255) NOT NULL,
OWNER_ID INT,
TIMESTAMP DATE NOT NULL,
FOCUS_ID VARCHAR2(255) NOT NULL,
TAB_ID VARCHAR2(255) NOT NULL,
FORM_ID VARCHAR2(255) NOT NULL,
BODY CLOB NOT NULL,
constraint PK_QX_SEARCH primary key (SEARCH_ID)
);
create index IDX_QX_SEARCH_OWNER on QX_SEARCH (OWNER_ID);
create index IDX_QX_SEARCH_FOCUS on QX_SEARCH (FOCUS_ID);
create index IDX_QX_SEARCH_TAB on QX_SEARCH (TAB_ID);
create index IDX_QX_SEARCH_FORM on QX_SEARCH (FORM_ID);
--
-- MISC
--
create table QX_STATES (
pkey int not null,
name VARCHAR2(255) not null,
state_id VARCHAR2(2) not null,
constraint PK_QX_STATES primary key (pkey)
);
create table QX_MAIL_PROVIDER (
PKEY int not null,
PROVIDER_ID VARCHAR2(50),
PROVIDER_NAME VARCHAR2(50),
constraint PK_QX_MAIL_PROVIDER primary key (PKEY)
);
create table QX_AUTO_REPLY (
PKEY int not null,
NAME VARCHAR2(255) not null,
DESCRIPTION VARCHAR2(255) null,
SUCCESSFUL_SUBJECT VARCHAR2(255) not null,
SUCCESSFUL_BODY CLOB null,
UPDATE_SUBJECT VARCHAR2(255) not null,
UPDATE_BODY CLOB null,
FAIL_SUBJECT VARCHAR2(255) not null,
FAIL_BODY CLOB null,
CREATED_BY int not null,
CREATED_DATE date,
constraint PK_QX_AUTO_REPLY primary key (PKEY),
constraint FK_CREATED_BY_QX_USERS foreign key (CREATED_BY) references QX_USERS (PKEY)
);
create table QX_ACCOUNT (
PKEY int not null,
OWNER_ID int null,
WORKGROUP_ID int null,
ACCOUNT_NAME VARCHAR2(255) not null,
ACCOUNT_PROVIDER int not null,
EMAIL_SERVER VARCHAR2(255) not null,
EMAIL_SERVER_PORT VARCHAR2(50) null,
EMAIL_SERVER_FOLDER VARCHAR2(50) null,
EMAIL_PASSWORD VARCHAR2(255) not null,
EMAIL_BOX_NAME VARCHAR2(255) null,
LOGIN_NAME VARCHAR2(50) not null,
LASTRECEIVE_DATE date,
MAX_MAIL_SIZE int null,
MAX_INBOX_SIZE int null,
DELETE_EMAIL_FLAG int null,
UNREAD_EMAIL_FLAG int null,
UNREAD_OUTEMAIL_FLAG int null,
ACTIVE_ACC int null,
VALID_ACC int null,
DELAY int null,
NEXT_CHECK_DATE date,
NOTES CLOB,
AUTOREPLY_ID int null,
CREATED_BY int not null,
CREATED_DATE date,
REPLY_EMAIL VARCHAR2(255),
constraint PK_QX_ACCOUNT primary key (PKEY),
constraint FK_ACCNT_QX_WORKGROUP foreign key (WORKGROUP_ID) references QX_WORKGROUP (PKEY),
constraint FK_ACCNT_QX_MAIL_PROVIDER foreign key (ACCOUNT_PROVIDER) references QX_MAIL_PROVIDER (PKEY),
constraint FK_ACCNT_CREATED_BY_QX_USERS foreign key (CREATED_BY) references QX_USERS (PKEY),
constraint FK_ACCNT_ACCOUNT_PROVIDER foreign key (ACCOUNT_PROVIDER) references QX_MAIL_PROVIDER (PKEY),
constraint FK_ACCNT_OWNER_QX_USERS foreign key (OWNER_ID) references QX_USERS (PKEY),
constraint FK_ACCNT_QX_AUTO_REPLY foreign key (AUTOREPLY_ID) references QX_AUTO_REPLY (PKEY)
);
create table QX_EMAIL_ROUTING_RULES (
PKEY int not null,
OWNER_ID int null,
WORKGROUP_ID int null,
RULE_NAME VARCHAR2(50) not null,
KEY_WORD VARCHAR2(255) not null,
FROM_ADDRESS int null,
TO_ADDRESS int null,
SUBJECT int null,
BODY int null,
AUTOREPLY_ID int null,
CREATED_BY int not null,
CREATED_DATE date,
constraint PK_QX_EMAIL_ROUTING_RULES primary key (PKEY),
constraint FK_ROUTING_QX_WORKGROUP foreign key (WORKGROUP_ID) references QX_WORKGROUP (PKEY),
constraint FK_ROUTING_CREATED_BY_QX_USERS foreign key (CREATED_BY) references QX_USERS (PKEY),
constraint FK_ROUTING_OWNER_QX_USERS foreign key (OWNER_ID) references QX_USERS (PKEY)
);
create table QX_EMAIL_ROUTING (
ACCOUNT_ID int not null,
ROUTING_RULE int not null,
constraint PK_QX_EMAIL_ROUTING primary key (ACCOUNT_ID, ROUTING_RULE),
constraint FK_QX_EMAIL_ROUTING_ACCOUNT foreign key (ACCOUNT_ID) references QX_ACCOUNT(PKEY),
constraint FK_QX_EMAIL_ROUTING_RULES foreign key (ROUTING_RULE) references QX_EMAIL_ROUTING_RULES(PKEY)
);
create table QX_EMAIL_FILTER (
PKEY int not null,
NAME VARCHAR2(50) not null,
FROM_ADDRESS int null,
TO_ADDRESS int null,
SUBJECT int null,
BODY int null,
WORD VARCHAR2(255) not null,
CREATED_BY int not null,
CREATED_DATE date,
constraint PK_QX_EMAIL_FILTER primary key (PKEY),
constraint FK_EMAIL_FILTER_QX_USERS foreign key (CREATED_BY) references QX_USERS (PKEY)
);
create table QX_FILTER_ACCOUNT (
ACCOUNT_ID int not null,
EMAIL_FILTER int not null,
constraint PK_QX_FILTER_ACCOUNT primary key (ACCOUNT_ID, EMAIL_FILTER),
constraint FK_QX_FILTER_ACCNT_ACCOUNT foreign key (ACCOUNT_ID) REFERENCES QX_ACCOUNT(PKEY),
constraint FK_QX_FILTER_ACCNT_FILTER foreign key (EMAIL_FILTER) REFERENCES QX_EMAIL_FILTER(PKEY)
);
create table QX_INBOX (
PKEY int not null,
MESSAGE_TYPE int default 0 not null, -- 0 is email message, 1 - alert
MESSAGE_SENDER int null,
MESSAGE_SENDER_EMAIL VARCHAR2(1024),
RECIPIENT_ID int null,
WORKGROUP_ID int null,
EMAIL_TO VARCHAR2(1024) null,
EMAIL_CC VARCHAR2(1024) null,
SUBJECT VARCHAR2(1024) null,
MESSAGE CLOB,
SENT_DATE date,
SERVER_RECEIVED_DATE date,
RECEIVED_DATE date,
OBJECT_TYPE int null,
OBJECT_ID int null,
REPLIED_DATE date,
PROCESS_ID int null,
ACCOUNT_ID int null,
DIGEST_SRC VARCHAR2(512),
DELETE_FLAG int default 0 not null , -- 0 existed, 1 - deleted
constraint PK_QX_INBOX primary key (PKEY),
constraint FK_QX_INBOX_SENDER_QX_USERS foreign key (MESSAGE_SENDER) references QX_USERS(PKEY),
constraint FK_QX_INBOX_RECIPIENT_QX_USERS foreign key (RECIPIENT_ID) references QX_USERS(PKEY),
constraint FK_QX_INBOX_QX_WORKGROUP foreign key (WORKGROUP_ID) references QX_WORKGROUP(PKEY),
constraint FK_QX_INBOX_QX_VIEW_OBJ_TYPES foreign key (OBJECT_TYPE) references QX_VIEW_OBJECT_TYPES(PKEY),
constraint FK_QX_INBOX_QX_ACCOUNT foreign key (ACCOUNT_ID) references QX_ACCOUNT(PKEY)
);
create view QX_DD_OBJECT_TYPE as
select
ENUM_VALUE as PKEY,
ENUM_LABEL as NAME
from QX_FIELDINFO
where (TABLE_NAME = 'qx_inbox') and (COLUMN_NAME = 'object_type')
;
create view qx_user_roles as
select distinct r.role_id, u.user_id
from qx_role r, qx_role_to_users u
where r.role_id = u.role_id
union all
select r.role_id, g.employeegroup
from qx_role r, qx_workgroup_to_role wr, qx_groupmember g
where r.role_id = wr.role_id
and wr.workgroup_id = g.workgroupgroup
;
create table QX_EMAIL_SERVICE_LOG (
PKEY int NOT NULL ,
MESSAGE_ID int NULL ,
MESSAGE_TYPE int NULL ,
E_TO VARCHAR2(255) NULL ,
E_FROM VARCHAR2(255) NULL ,
E_SUBJECT VARCHAR2(1022) NULL ,
MESSAGE_LEVEL int NULL ,
CREATED date NULL ,
OWNER_ID int NULL ,
WORKGROUP_ID int NULL ,
OBJECT_TYPE int null,
OBJECT_ID int null,
FILTER_ID int NULL ,
ROUTING_ID int NULL ,
DESCRIPTION VARCHAR2(1022) NULL ,
ACCOUNT_ID int NULL ,
constraint PK_QX_EMAIL_SERVICE_LOG primary key (PKEY)
);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -