Exported tables
This commit is contained in:
parent
22422550a2
commit
5ba4c0299e
@ -1,20 +1,16 @@
|
|||||||
--DROP TABLE apps CASCADE CONSTRAINTS;
|
|
||||||
CREATE TABLE apps (
|
CREATE TABLE apps (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_apps_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_apps_app_id NOT NULL,
|
||||||
--
|
|
||||||
description_ VARCHAR2(1000),
|
description_ VARCHAR2(1000),
|
||||||
is_visible CHAR(1),
|
is_visible CHAR(1),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_apps
|
|
||||||
PRIMARY KEY (app_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_apps_is_visible
|
CONSTRAINT ch_apps_is_visible
|
||||||
CHECK (is_visible = 'Y' OR is_visible IS NULL)
|
CHECK (is_visible = 'Y' OR is_visible IS NULL),
|
||||||
)
|
--
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
CONSTRAINT pk_apps
|
||||||
|
PRIMARY KEY (app_id)
|
||||||
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE apps IS '[CORE] List of apps';
|
COMMENT ON TABLE apps IS '[CORE] List of apps';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,28 +1,23 @@
|
|||||||
--DROP TABLE logs_events PURGE;
|
|
||||||
--DROP TABLE events PURGE;
|
|
||||||
CREATE TABLE events (
|
CREATE TABLE events (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_events_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_events_app_id NOT NULL,
|
||||||
event_id VARCHAR2(30) CONSTRAINT nn_events_event_id NOT NULL,
|
event_id VARCHAR2(30) CONSTRAINT nn_events_event_id NOT NULL,
|
||||||
--
|
|
||||||
event_name VARCHAR2(64),
|
event_name VARCHAR2(64),
|
||||||
event_group VARCHAR2(64),
|
event_group VARCHAR2(64),
|
||||||
description_ VARCHAR2(1000),
|
description_ VARCHAR2(1000),
|
||||||
is_active CHAR(1),
|
is_active CHAR(1),
|
||||||
--
|
updated_by VARCHAR2(30) DEFAULT NULL,
|
||||||
updated_by VARCHAR2(30),
|
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
|
CONSTRAINT ch_events_is_active
|
||||||
|
CHECK (is_active = 'Y' OR is_active IS NULL),
|
||||||
|
--
|
||||||
CONSTRAINT pk_events
|
CONSTRAINT pk_events
|
||||||
PRIMARY KEY (app_id, event_id),
|
PRIMARY KEY (app_id, event_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_events_app_id
|
CONSTRAINT fk_events_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
REFERENCES apps (app_id),
|
REFERENCES apps (app_id)
|
||||||
--
|
);
|
||||||
CONSTRAINT ch_events_is_active
|
|
||||||
CHECK (is_active = 'Y' OR is_active IS NULL)
|
|
||||||
)
|
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE events IS '[CORE] List of events interesting for business';
|
COMMENT ON TABLE events IS '[CORE] List of events interesting for business';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,20 +1,16 @@
|
|||||||
--DROP TABLE log_events PURGE;
|
|
||||||
CREATE TABLE log_events (
|
CREATE TABLE log_events (
|
||||||
log_id INTEGER CONSTRAINT nn_log_events_log_id NOT NULL,
|
log_id INTEGER CONSTRAINT nn_log_events_log_id NOT NULL,
|
||||||
log_parent INTEGER,
|
log_parent INTEGER,
|
||||||
--
|
app_id NUMBER(4,0) CONSTRAINT nn_log_events_app_id NOT NULL,
|
||||||
app_id NUMBER(4) CONSTRAINT nn_log_events_app_id NOT NULL,
|
page_id NUMBER(6,0) CONSTRAINT nn_log_events_page_id NOT NULL,
|
||||||
page_id NUMBER(6) CONSTRAINT nn_log_events_page_id NOT NULL,
|
|
||||||
user_id VARCHAR2(30) CONSTRAINT nn_log_events_user_id NOT NULL,
|
user_id VARCHAR2(30) CONSTRAINT nn_log_events_user_id NOT NULL,
|
||||||
session_id INTEGER CONSTRAINT nn_log_events_session_id NOT NULL,
|
session_id INTEGER CONSTRAINT nn_log_events_session_id NOT NULL,
|
||||||
--
|
|
||||||
event_id VARCHAR2(30) CONSTRAINT nn_log_events_event_id NOT NULL,
|
event_id VARCHAR2(30) CONSTRAINT nn_log_events_event_id NOT NULL,
|
||||||
event_value NUMBER,
|
event_value NUMBER,
|
||||||
--
|
|
||||||
created_at DATE CONSTRAINT nn_log_events_created_at NOT NULL,
|
created_at DATE CONSTRAINT nn_log_events_created_at NOT NULL,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_log_events
|
CONSTRAINT pk_log_events
|
||||||
PRIMARY KEY (log_id),
|
PRIMARY KEY (log_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_log_events_event_id
|
CONSTRAINT fk_log_events_event_id
|
||||||
FOREIGN KEY (app_id, event_id)
|
FOREIGN KEY (app_id, event_id)
|
||||||
@ -22,11 +18,9 @@ CREATE TABLE log_events (
|
|||||||
--
|
--
|
||||||
CONSTRAINT fk_log_events_users
|
CONSTRAINT fk_log_events_users
|
||||||
FOREIGN KEY (user_id)
|
FOREIGN KEY (user_id)
|
||||||
REFERENCES users (user_id)
|
REFERENCES users (user_id) DISABLE
|
||||||
);
|
);
|
||||||
--
|
--
|
||||||
ALTER TABLE log_events DISABLE CONSTRAINT fk_log_events_users;
|
|
||||||
--
|
|
||||||
COMMENT ON TABLE log_events IS '[CORE] List of business events';
|
COMMENT ON TABLE log_events IS '[CORE] List of business events';
|
||||||
--
|
--
|
||||||
COMMENT ON COLUMN log_events.log_id IS 'Log ID';
|
COMMENT ON COLUMN log_events.log_id IS 'Log ID';
|
||||||
|
|||||||
@ -1,46 +1,25 @@
|
|||||||
/*
|
|
||||||
UPDATE sessions SET log_id = NULL;
|
|
||||||
UPDATE uploaded_file_sheets SET result_log_id = NULL;
|
|
||||||
--
|
|
||||||
DROP TABLE log_events PURGE;
|
|
||||||
DROP TABLE logs_blacklist PURGE;
|
|
||||||
DROP TABLE logs PURGE;
|
|
||||||
--
|
|
||||||
SELECT * FROM logs ORDER BY 1 DESC;
|
|
||||||
*/
|
|
||||||
CREATE TABLE logs (
|
CREATE TABLE logs (
|
||||||
log_id INTEGER CONSTRAINT nn_logs_log_id NOT NULL, -- NUMBER GENERATED BY DEFAULT AS IDENTITY NOT NULL
|
log_id INTEGER CONSTRAINT nn_logs_log_id NOT NULL,
|
||||||
log_parent INTEGER,
|
log_parent INTEGER,
|
||||||
--
|
app_id NUMBER(4,0) CONSTRAINT nn_logs_app_id NOT NULL,
|
||||||
app_id NUMBER(4) CONSTRAINT nn_logs_app_id NOT NULL,
|
page_id NUMBER(6,0),
|
||||||
page_id NUMBER(6),
|
|
||||||
user_id VARCHAR2(30),
|
user_id VARCHAR2(30),
|
||||||
flag CHAR(1) CONSTRAINT nn_logs_flag NOT NULL,
|
flag CHAR(1) CONSTRAINT nn_logs_flag NOT NULL,
|
||||||
--
|
action_name VARCHAR2(32),
|
||||||
action_name VARCHAR2(64),
|
module_name VARCHAR2(48),
|
||||||
module_name VARCHAR2(64), -- 48 chars, DBMS_APPLICATION_INFO limit
|
module_line NUMBER(8,0),
|
||||||
module_line NUMBER(8),
|
module_timer VARCHAR2(12),
|
||||||
module_timer VARCHAR2(12), -- 00:00:00.000 - INTERVAL DAY(1) TO SECOND(3),
|
|
||||||
arguments VARCHAR2(2000),
|
arguments VARCHAR2(2000),
|
||||||
payload VARCHAR2(4000),
|
payload VARCHAR2(4000),
|
||||||
--
|
|
||||||
session_id INTEGER,
|
session_id INTEGER,
|
||||||
created_at TIMESTAMP CONSTRAINT nn_logs_created_at NOT NULL,
|
created_at TIMESTAMP(6) CONSTRAINT nn_logs_created_at NOT NULL,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_logs
|
CONSTRAINT pk_logs
|
||||||
PRIMARY KEY (log_id)
|
PRIMARY KEY (log_id)
|
||||||
--
|
|
||||||
-- NO MORE CONSTRAINTS TO KEEP THIS AS FAST AS POSSIBLE
|
|
||||||
--
|
|
||||||
)
|
)
|
||||||
PARTITION BY RANGE (created_at)
|
PARTITION BY RANGE (created_at) INTERVAL (NUMTODSINTERVAL(1, 'DAY'))
|
||||||
INTERVAL (NUMTODSINTERVAL(1, 'DAY')) (
|
(
|
||||||
PARTITION P00 VALUES LESS THAN (TIMESTAMP '2021-01-01 00:00:00')
|
PARTITION "SYS_P3208" VALUES LESS THAN (TIMESTAMP '2022-06-28 00:00:00')
|
||||||
/*
|
|
||||||
--today VARCHAR2(10) CONSTRAINT nn_logs_today NOT NULL, -- virtual column?
|
|
||||||
PARTITION BY LIST (today, app_id) AUTOMATIC (
|
|
||||||
PARTITION "P_20210101_0" VALUES (('2021-01-01', 0)) SEGMENT CREATION IMMEDIATE
|
|
||||||
*/
|
|
||||||
);
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE logs IS '[CORE] Various logs raised in application; daily partitions';
|
COMMENT ON TABLE logs IS '[CORE] Various logs raised in application; daily partitions';
|
||||||
@ -48,8 +27,8 @@ COMMENT ON TABLE logs IS '[CORE] Various logs raised in applic
|
|||||||
COMMENT ON COLUMN logs.log_id IS 'Log ID generated from LOG_ID sequence';
|
COMMENT ON COLUMN logs.log_id IS 'Log ID generated from LOG_ID sequence';
|
||||||
COMMENT ON COLUMN logs.log_parent IS 'Parent log record; dont use FK to avoid deadlocks';
|
COMMENT ON COLUMN logs.log_parent IS 'Parent log record; dont use FK to avoid deadlocks';
|
||||||
COMMENT ON COLUMN logs.app_id IS 'APEX Application ID';
|
COMMENT ON COLUMN logs.app_id IS 'APEX Application ID';
|
||||||
COMMENT ON COLUMN logs.user_id IS 'User ID';
|
|
||||||
COMMENT ON COLUMN logs.page_id IS 'APEX Application PAGE ID';
|
COMMENT ON COLUMN logs.page_id IS 'APEX Application PAGE ID';
|
||||||
|
COMMENT ON COLUMN logs.user_id IS 'User ID';
|
||||||
COMMENT ON COLUMN logs.flag IS 'Type of error listed in tree package specification; FK missing for performance reasons';
|
COMMENT ON COLUMN logs.flag IS 'Type of error listed in tree package specification; FK missing for performance reasons';
|
||||||
COMMENT ON COLUMN logs.action_name IS 'Action name to distinguish position in module or use it as warning/error names';
|
COMMENT ON COLUMN logs.action_name IS 'Action name to distinguish position in module or use it as warning/error names';
|
||||||
COMMENT ON COLUMN logs.module_name IS 'Module name (procedure or function name)';
|
COMMENT ON COLUMN logs.module_name IS 'Module name (procedure or function name)';
|
||||||
|
|||||||
@ -1,17 +1,15 @@
|
|||||||
--DROP TABLE logs_blacklist CASCADE CONSTRAINTS PURGE;
|
|
||||||
CREATE TABLE logs_blacklist (
|
CREATE TABLE logs_blacklist (
|
||||||
app_id NUMBER(4), -- CONSTRAINT nn_logs_blacklist_app_id NOT NULL,
|
app_id NUMBER(4,0),
|
||||||
flag CHAR(1),
|
flag CHAR(1),
|
||||||
user_id VARCHAR2(30),
|
user_id VARCHAR2(30),
|
||||||
page_id NUMBER(6),
|
page_id NUMBER(6,0),
|
||||||
module_like VARCHAR2(30),
|
module_like VARCHAR2(30),
|
||||||
action_like VARCHAR2(30),
|
action_like VARCHAR2(30),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT uq_logs_blacklist
|
CONSTRAINT uq_logs_blacklist
|
||||||
UNIQUE (app_id, user_id, page_id, flag, module_like, action_like),
|
UNIQUE (app_id, user_id, page_id, flag, module_like, action_like)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_logs_blacklist_app_id
|
CONSTRAINT fk_logs_blacklist_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
@ -19,18 +17,15 @@ CREATE TABLE logs_blacklist (
|
|||||||
--
|
--
|
||||||
CONSTRAINT fk_logs_blacklist_user_id
|
CONSTRAINT fk_logs_blacklist_user_id
|
||||||
FOREIGN KEY (user_id)
|
FOREIGN KEY (user_id)
|
||||||
REFERENCES users (user_id)
|
REFERENCES users (user_id) DISABLE
|
||||||
)
|
);
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
|
||||||
ALTER TABLE logs_blacklist DISABLE CONSTRAINT fk_logs_blacklist_user_id;
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE logs_blacklist IS '[CORE] Define what logs will or wont be tracked';
|
COMMENT ON TABLE logs_blacklist IS '[CORE] Define what logs will or wont be tracked';
|
||||||
--
|
--
|
||||||
COMMENT ON COLUMN logs_blacklist.app_id IS 'App ID';
|
COMMENT ON COLUMN logs_blacklist.app_id IS 'App ID';
|
||||||
COMMENT ON COLUMN logs_blacklist.flag IS 'Flag to differentiate logs, NULL = any flag';
|
COMMENT ON COLUMN logs_blacklist.flag IS 'Flag to differentiate logs, NULL = any flag';
|
||||||
COMMENT ON COLUMN logs_blacklist.page_id IS 'APEX page ID, NULL = any page';
|
|
||||||
COMMENT ON COLUMN logs_blacklist.user_id IS 'User ID, NULL = any user';
|
COMMENT ON COLUMN logs_blacklist.user_id IS 'User ID, NULL = any user';
|
||||||
|
COMMENT ON COLUMN logs_blacklist.page_id IS 'APEX page ID, NULL = any page';
|
||||||
COMMENT ON COLUMN logs_blacklist.module_like IS 'Module name, NULL = any module';
|
COMMENT ON COLUMN logs_blacklist.module_like IS 'Module name, NULL = any module';
|
||||||
COMMENT ON COLUMN logs_blacklist.action_like IS 'Action name, NULL = any module';
|
COMMENT ON COLUMN logs_blacklist.action_like IS 'Action name, NULL = any module';
|
||||||
|
|
||||||
|
|||||||
@ -1,29 +1,24 @@
|
|||||||
--DROP TABLE mail_queue PURGE;
|
|
||||||
CREATE TABLE mail_queue (
|
CREATE TABLE mail_queue (
|
||||||
queue_id NUMBER(10) CONSTRAINT nn_mail_queue_queue_id NOT NULL,
|
queue_id NUMBER(10,0) CONSTRAINT nn_mail_queue_queue_id NOT NULL,
|
||||||
app_id NUMBER(4) CONSTRAINT nn_mail_queue_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_mail_queue_app_id NOT NULL,
|
||||||
event_id VARCHAR2(30),
|
event_id VARCHAR2(30),
|
||||||
role_id VARCHAR2(30),
|
role_id VARCHAR2(30),
|
||||||
template_id VARCHAR2(30),
|
template_id VARCHAR2(30),
|
||||||
schedule_id VARCHAR2(30),
|
schedule_id VARCHAR2(30),
|
||||||
user_id VARCHAR2(30),
|
user_id VARCHAR2(30),
|
||||||
lang_id VARCHAR2(5),
|
lang_id VARCHAR2(5),
|
||||||
--
|
mail_recipient VARCHAR2(4000),
|
||||||
mail_recipient VARCHAR2(4000), -- mail headers
|
|
||||||
mail_cc VARCHAR2(4000),
|
mail_cc VARCHAR2(4000),
|
||||||
mail_bcc VARCHAR2(4000),
|
mail_bcc VARCHAR2(4000),
|
||||||
mail_sender VARCHAR2(256),
|
mail_sender VARCHAR2(256),
|
||||||
mail_subject VARCHAR2(256),
|
mail_subject VARCHAR2(256),
|
||||||
mail_body CLOB, -- mail body
|
mail_body CLOB,
|
||||||
--
|
|
||||||
-- @TODO: mail_attachments
|
|
||||||
--
|
|
||||||
created_by VARCHAR2(30),
|
created_by VARCHAR2(30),
|
||||||
created_at DATE,
|
created_at DATE,
|
||||||
sent_at DATE,
|
sent_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_mail_queue
|
CONSTRAINT pk_mail_queue
|
||||||
PRIMARY KEY (queue_id),
|
PRIMARY KEY (queue_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_mail_queue_app_id
|
CONSTRAINT fk_mail_queue_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
@ -48,14 +43,12 @@ COMMENT ON COLUMN mail_queue.template_id IS '';
|
|||||||
COMMENT ON COLUMN mail_queue.schedule_id IS 'Schedule id';
|
COMMENT ON COLUMN mail_queue.schedule_id IS 'Schedule id';
|
||||||
COMMENT ON COLUMN mail_queue.user_id IS '';
|
COMMENT ON COLUMN mail_queue.user_id IS '';
|
||||||
COMMENT ON COLUMN mail_queue.lang_id IS '';
|
COMMENT ON COLUMN mail_queue.lang_id IS '';
|
||||||
--
|
|
||||||
COMMENT ON COLUMN mail_queue.mail_recipient IS '';
|
COMMENT ON COLUMN mail_queue.mail_recipient IS '';
|
||||||
COMMENT ON COLUMN mail_queue.mail_cc IS '';
|
COMMENT ON COLUMN mail_queue.mail_cc IS '';
|
||||||
COMMENT ON COLUMN mail_queue.mail_bcc IS '';
|
COMMENT ON COLUMN mail_queue.mail_bcc IS '';
|
||||||
COMMENT ON COLUMN mail_queue.mail_sender IS '';
|
COMMENT ON COLUMN mail_queue.mail_sender IS '';
|
||||||
COMMENT ON COLUMN mail_queue.mail_subject IS 'E-mail subject';
|
COMMENT ON COLUMN mail_queue.mail_subject IS 'E-mail subject';
|
||||||
COMMENT ON COLUMN mail_queue.mail_body IS 'E-mail body, can be generated by a process_function';
|
COMMENT ON COLUMN mail_queue.mail_body IS 'E-mail body, can be generated by a process_function';
|
||||||
--
|
|
||||||
COMMENT ON COLUMN mail_queue.created_by IS 'User whi created the e-mail';
|
COMMENT ON COLUMN mail_queue.created_by IS 'User whi created the e-mail';
|
||||||
COMMENT ON COLUMN mail_queue.created_at IS 'Time of adding e-mail to the queue';
|
COMMENT ON COLUMN mail_queue.created_at IS 'Time of adding e-mail to the queue';
|
||||||
COMMENT ON COLUMN mail_queue.sent_at IS 'Time when e-mail was actually sent';
|
COMMENT ON COLUMN mail_queue.sent_at IS 'Time when e-mail was actually sent';
|
||||||
|
|||||||
@ -1,33 +1,17 @@
|
|||||||
--DROP TABLE mail_subscriptions PURGE;
|
|
||||||
--DROP TABLE mail_schedules PURGE;
|
|
||||||
CREATE TABLE mail_schedules (
|
CREATE TABLE mail_schedules (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_mail_schedules_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_mail_schedules_app_id NOT NULL,
|
||||||
schedule_id VARCHAR2(30) CONSTRAINT nn_mail_schedules_schedule_id NOT NULL,
|
schedule_id VARCHAR2(30) CONSTRAINT nn_mail_schedules_schedule_id NOT NULL,
|
||||||
schedule_group VARCHAR2(64),
|
schedule_group VARCHAR2(64),
|
||||||
description_ VARCHAR2(256),
|
description_ VARCHAR2(256),
|
||||||
--
|
|
||||||
schedule_month VARCHAR2(128),
|
schedule_month VARCHAR2(128),
|
||||||
schedule_day VARCHAR2(128),
|
schedule_day VARCHAR2(128),
|
||||||
schedule_weekday VARCHAR2(128),
|
schedule_weekday VARCHAR2(128),
|
||||||
schedule_hour VARCHAR2(128),
|
schedule_hour VARCHAR2(128),
|
||||||
schedule_minute VARCHAR2(128),
|
schedule_minute VARCHAR2(128),
|
||||||
schedule_interval VARCHAR2(128),
|
schedule_interval VARCHAR2(128),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_mail_schedules
|
|
||||||
PRIMARY KEY (app_id, schedule_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_mail_schedules_month
|
|
||||||
CHECK (REGEXP_LIKE(schedule_month, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+|([A-Z]{3}\s*)+|([A-Z]{3}[-,][A-Z]{3},?\s*)+$') OR schedule_month IS NULL),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_mail_schedules_day
|
|
||||||
CHECK (REGEXP_LIKE(schedule_day, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+$') OR schedule_day IS NULL),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_mail_schedules_weekday
|
|
||||||
CHECK (REGEXP_LIKE(schedule_weekday, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+|([A-Z]{3},?\s*)+|([A-Z]{3}[-][A-Z]{3},?\s*)+$') OR schedule_weekday IS NULL),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_mail_schedules_hour
|
CONSTRAINT ch_mail_schedules_hour
|
||||||
CHECK (REGEXP_LIKE(schedule_hour, '^(\d+,?\s*)+|(\d+[-]\d,?\s*)+$') OR schedule_hour IS NULL),
|
CHECK (REGEXP_LIKE(schedule_hour, '^(\d+,?\s*)+|(\d+[-]\d,?\s*)+$') OR schedule_hour IS NULL),
|
||||||
--
|
--
|
||||||
@ -37,8 +21,20 @@ CREATE TABLE mail_schedules (
|
|||||||
CONSTRAINT ch_mail_schedules_interval
|
CONSTRAINT ch_mail_schedules_interval
|
||||||
CHECK (REGEXP_LIKE(schedule_interval, '^(\d+)$') OR schedule_interval IS NULL),
|
CHECK (REGEXP_LIKE(schedule_interval, '^(\d+)$') OR schedule_interval IS NULL),
|
||||||
--
|
--
|
||||||
|
CONSTRAINT pk_mail_schedules
|
||||||
|
PRIMARY KEY (app_id, schedule_id)
|
||||||
|
--
|
||||||
CONSTRAINT ch_mail_schedules_min_or_int
|
CONSTRAINT ch_mail_schedules_min_or_int
|
||||||
CHECK ((schedule_minute IS NULL AND schedule_interval IS NOT NULL) OR (schedule_minute IS NOT NULL AND schedule_interval IS NULL))
|
CHECK ((schedule_minute IS NULL AND schedule_interval IS NOT NULL) OR (schedule_minute IS NOT NULL AND schedule_interval IS NULL)),
|
||||||
|
--
|
||||||
|
CONSTRAINT ch_mail_schedules_day
|
||||||
|
CHECK (REGEXP_LIKE(schedule_day, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+$') OR schedule_day IS NULL),
|
||||||
|
--
|
||||||
|
CONSTRAINT ch_mail_schedules_weekday
|
||||||
|
CHECK (REGEXP_LIKE(schedule_weekday, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+|([A-Z]{3},?\s*)+|([A-Z]{3}[-][A-Z]{3},?\s*)+$') OR schedule_weekday IS NULL),
|
||||||
|
--
|
||||||
|
CONSTRAINT ch_mail_schedules_month
|
||||||
|
CHECK (REGEXP_LIKE(schedule_month, '^(\d+,?\s*)|(\d+[-]\d+,?\s*)+|([A-Z]{3}\s*)+|([A-Z]{3}[-,][A-Z]{3},?\s*)+$') OR schedule_month IS NULL)
|
||||||
);
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE mail_schedules IS '[CORE] mail_schedules...';
|
COMMENT ON TABLE mail_schedules IS '[CORE] mail_schedules...';
|
||||||
@ -48,8 +44,8 @@ COMMENT ON COLUMN mail_schedules.schedule_id IS 'Schedule id';
|
|||||||
COMMENT ON COLUMN mail_schedules.schedule_group IS 'Group for better visibility';
|
COMMENT ON COLUMN mail_schedules.schedule_group IS 'Group for better visibility';
|
||||||
COMMENT ON COLUMN mail_schedules.description_ IS 'Description';
|
COMMENT ON COLUMN mail_schedules.description_ IS 'Description';
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_month IS 'Send at specific month, 1..12 for months, separate values with comma';
|
COMMENT ON COLUMN mail_schedules.schedule_month IS 'Send at specific month, 1..12 for months, separate values with comma';
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_weekday IS 'Send at specific day in a week, 1..7 (MON..SUN), 1-5 possible';
|
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_day IS 'Send at specific day of the month, 1..31';
|
COMMENT ON COLUMN mail_schedules.schedule_day IS 'Send at specific day of the month, 1..31';
|
||||||
|
COMMENT ON COLUMN mail_schedules.schedule_weekday IS 'Send at specific day in a week, 1..7 (MON..SUN), 1-5 possible';
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_hour IS 'Send at specific hour, 00..23, 8-17 is possible';
|
COMMENT ON COLUMN mail_schedules.schedule_hour IS 'Send at specific hour, 00..23, 8-17 is possible';
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_minute IS 'Send at specific minute in an hour, 00..59';
|
COMMENT ON COLUMN mail_schedules.schedule_minute IS 'Send at specific minute in an hour, 00..59';
|
||||||
COMMENT ON COLUMN mail_schedules.schedule_interval IS 'Send every 1..30 minutes, schedule_minute is ignored';
|
COMMENT ON COLUMN mail_schedules.schedule_interval IS 'Send every 1..30 minutes, schedule_minute is ignored';
|
||||||
|
|||||||
@ -1,21 +1,21 @@
|
|||||||
--DROP TABLE mail_subscriptions PURGE;
|
|
||||||
CREATE TABLE mail_subscriptions (
|
CREATE TABLE mail_subscriptions (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_mail_subscriptions_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_mail_subscriptions_app_id NOT NULL,
|
||||||
event_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_event_id NOT NULL,
|
event_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_event_id NOT NULL,
|
||||||
role_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_role_id NOT NULL,
|
role_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_role_id NOT NULL,
|
||||||
schedule_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_schedule_id NOT NULL,
|
schedule_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_schedule_id NOT NULL,
|
||||||
template_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_template_id NOT NULL,
|
template_id VARCHAR2(30) CONSTRAINT nn_mail_subscriptions_template_id NOT NULL,
|
||||||
eval_function VARCHAR2(64), -- to evaluate on each role user if to send or not
|
eval_function VARCHAR2(64),
|
||||||
--
|
|
||||||
is_active CHAR(1),
|
is_active CHAR(1),
|
||||||
processed_log_id NUMBER,
|
processed_log_id NUMBER,
|
||||||
processed_at DATE,
|
processed_at DATE,
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
|
CONSTRAINT ch_mail_subscriptions_is_active
|
||||||
|
CHECK (is_active = 'Y' OR is_active IS NULL),
|
||||||
|
--
|
||||||
CONSTRAINT pk_mail_subscriptions
|
CONSTRAINT pk_mail_subscriptions
|
||||||
PRIMARY KEY (app_id, event_id, role_id, schedule_id),
|
PRIMARY KEY (app_id, event_id, role_id, schedule_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_mail_subscriptions_event_id
|
CONSTRAINT fk_mail_subscriptions_event_id
|
||||||
FOREIGN KEY (app_id, event_id)
|
FOREIGN KEY (app_id, event_id)
|
||||||
@ -27,14 +27,7 @@ CREATE TABLE mail_subscriptions (
|
|||||||
--
|
--
|
||||||
CONSTRAINT fk_mail_subscriptions_schedule_id
|
CONSTRAINT fk_mail_subscriptions_schedule_id
|
||||||
FOREIGN KEY (app_id, schedule_id)
|
FOREIGN KEY (app_id, schedule_id)
|
||||||
REFERENCES mail_schedules (app_id, schedule_id),
|
REFERENCES mail_schedules (app_id, schedule_id)
|
||||||
--
|
|
||||||
--CONSTRAINT fk_mail_subscriptions_template_id
|
|
||||||
-- FOREIGN KEY (app_id, template_id)
|
|
||||||
-- REFERENCES mail_templates (app_id, template_id), -- we dont know the language
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_mail_subscriptions_is_active
|
|
||||||
CHECK (is_active = 'Y' OR is_active IS NULL)
|
|
||||||
);
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE mail_subscriptions IS '[CORE] Subscriptions to events based on user roles';
|
COMMENT ON TABLE mail_subscriptions IS '[CORE] Subscriptions to events based on user roles';
|
||||||
|
|||||||
@ -1,15 +1,12 @@
|
|||||||
--DROP TABLE mail_templates PURGE;
|
|
||||||
CREATE TABLE mail_templates (
|
CREATE TABLE mail_templates (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_mail_templates_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_mail_templates_app_id NOT NULL,
|
||||||
template_id VARCHAR2(30) CONSTRAINT nn_mail_templates_template_id NOT NULL,
|
template_id VARCHAR2(30) CONSTRAINT nn_mail_templates_template_id NOT NULL,
|
||||||
lang_id VARCHAR2(5) CONSTRAINT nn_mail_templates_lang_id NOT NULL,
|
lang_id VARCHAR2(5) CONSTRAINT nn_mail_templates_lang_id NOT NULL,
|
||||||
template_group VARCHAR2(64),
|
template_group VARCHAR2(64),
|
||||||
description_ VARCHAR2(256),
|
description_ VARCHAR2(256),
|
||||||
process_function VARCHAR2(64), -- to generate specific content
|
process_function VARCHAR2(64),
|
||||||
--
|
|
||||||
mail_subject VARCHAR2(256),
|
mail_subject VARCHAR2(256),
|
||||||
mail_body CLOB,
|
mail_body CLOB,
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,38 +1,34 @@
|
|||||||
--DROP TABLE navigation PURGE;
|
|
||||||
CREATE TABLE navigation (
|
CREATE TABLE navigation (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_navigation_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_navigation_app_id NOT NULL,
|
||||||
page_id NUMBER(6) CONSTRAINT nn_navigation_page_id NOT NULL,
|
page_id NUMBER(6,0) CONSTRAINT nn_navigation_page_id NOT NULL,
|
||||||
--
|
parent_id NUMBER(6,0),
|
||||||
parent_id NUMBER(6),
|
order# NUMBER(4,0),
|
||||||
order# NUMBER(4),
|
|
||||||
is_hidden CHAR(1),
|
is_hidden CHAR(1),
|
||||||
is_reset CHAR(1),
|
is_reset CHAR(1),
|
||||||
is_shared CHAR(1), -- only for CORE app
|
is_shared CHAR(1),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_navigation
|
|
||||||
PRIMARY KEY (app_id, page_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT fk_navigation_app_id
|
|
||||||
FOREIGN KEY (app_id)
|
|
||||||
REFERENCES apps (app_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT fk_navigation_parent
|
|
||||||
FOREIGN KEY (app_id, parent_id)
|
|
||||||
REFERENCES navigation (app_id, page_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_navigation_is_hidden
|
CONSTRAINT ch_navigation_is_hidden
|
||||||
CHECK (is_hidden = 'Y' OR is_hidden IS NULL),
|
CHECK (is_hidden = 'Y' OR is_hidden IS NULL),
|
||||||
--
|
--
|
||||||
CONSTRAINT ch_navigation_is_reset
|
CONSTRAINT ch_navigation_is_reset
|
||||||
CHECK (is_reset = 'Y' OR is_reset IS NULL),
|
CHECK (is_reset = 'Y' OR is_reset IS NULL),
|
||||||
--
|
--
|
||||||
|
CONSTRAINT pk_navigation
|
||||||
|
PRIMARY KEY (app_id, page_id)
|
||||||
|
--
|
||||||
CONSTRAINT ch_navigation_is_shared
|
CONSTRAINT ch_navigation_is_shared
|
||||||
CHECK (is_shared = 'Y' OR is_shared IS NULL)
|
CHECK (is_shared = 'Y' OR is_shared IS NULL),
|
||||||
)
|
--
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
CONSTRAINT fk_navigation_app_id
|
||||||
|
FOREIGN KEY (app_id)
|
||||||
|
REFERENCES apps (app_id),
|
||||||
|
--
|
||||||
|
CONSTRAINT fk_navigation_parent
|
||||||
|
FOREIGN KEY (app_id, parent_id)
|
||||||
|
REFERENCES navigation (app_id, page_id)
|
||||||
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE navigation IS '[CORE] Navigation items';
|
COMMENT ON TABLE navigation IS '[CORE] Navigation items';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,8 +1,7 @@
|
|||||||
--DROP TABLE obj_views_source;
|
|
||||||
CREATE TABLE obj_views_source (
|
CREATE TABLE obj_views_source (
|
||||||
owner VARCHAR2(30) CONSTRAINT nn_obj_views_source_owner NOT NULL,
|
owner VARCHAR2(30) CONSTRAINT nn_obj_views_source_owner NOT NULL,
|
||||||
name VARCHAR2(30) CONSTRAINT nn_obj_views_source_name NOT NULL,
|
name VARCHAR2(30) CONSTRAINT nn_obj_views_source_name NOT NULL,
|
||||||
line NUMBER(10) CONSTRAINT nn_obj_views_source_line NOT NULL,
|
line NUMBER(10,0) CONSTRAINT nn_obj_views_source_line NOT NULL,
|
||||||
text VARCHAR2(2000),
|
text VARCHAR2(2000),
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_obj_views_source
|
CONSTRAINT pk_obj_views_source
|
||||||
|
|||||||
@ -1,28 +1,24 @@
|
|||||||
--DROP TABLE roles PURGE;
|
|
||||||
CREATE TABLE roles (
|
CREATE TABLE roles (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_roles_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_roles_app_id NOT NULL,
|
||||||
role_id VARCHAR2(30) CONSTRAINT nn_roles_role_id NOT NULL,
|
role_id VARCHAR2(30) CONSTRAINT nn_roles_role_id NOT NULL,
|
||||||
role_name VARCHAR2(64),
|
role_name VARCHAR2(64),
|
||||||
role_group VARCHAR2(64),
|
role_group VARCHAR2(64),
|
||||||
--
|
|
||||||
description_ VARCHAR2(1000),
|
description_ VARCHAR2(1000),
|
||||||
is_active CHAR(1),
|
is_active CHAR(1),
|
||||||
order# NUMBER(4),
|
order# NUMBER(4,0),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
|
CONSTRAINT ch_roles_is_active
|
||||||
|
CHECK (is_active = 'Y' OR is_active IS NULL),
|
||||||
|
--
|
||||||
CONSTRAINT pk_roles
|
CONSTRAINT pk_roles
|
||||||
PRIMARY KEY (app_id, role_id),
|
PRIMARY KEY (app_id, role_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_roles_app_id
|
CONSTRAINT fk_roles_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
REFERENCES apps (app_id),
|
REFERENCES apps (app_id)
|
||||||
--
|
);
|
||||||
CONSTRAINT ch_roles_is_active
|
|
||||||
CHECK (is_active = 'Y' OR is_active IS NULL)
|
|
||||||
)
|
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE roles IS '[CORE] List of roles';
|
COMMENT ON TABLE roles IS '[CORE] List of roles';
|
||||||
--
|
--
|
||||||
|
|||||||
19
database/tables/roles_e$.sql
Normal file
19
database/tables/roles_e$.sql
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
CREATE TABLE roles_e$ (
|
||||||
|
ora_err_number$ NUMBER,
|
||||||
|
ora_err_mesg$ VARCHAR2(2000),
|
||||||
|
ora_err_rowid$ UROWID(4000),
|
||||||
|
ora_err_optyp$ VARCHAR2(2),
|
||||||
|
ora_err_tag$ VARCHAR2(2000),
|
||||||
|
app_id VARCHAR2(4000),
|
||||||
|
role_id VARCHAR2(32767),
|
||||||
|
role_name VARCHAR2(32767),
|
||||||
|
role_group VARCHAR2(32767),
|
||||||
|
description_ VARCHAR2(32767),
|
||||||
|
is_active VARCHAR2(32767),
|
||||||
|
order# VARCHAR2(4000),
|
||||||
|
updated_by VARCHAR2(32767),
|
||||||
|
updated_at VARCHAR2(4000)
|
||||||
|
);
|
||||||
|
--
|
||||||
|
COMMENT ON TABLE roles_e$ IS 'DML Error Logging table for "CORE"."ROLES"';
|
||||||
|
|
||||||
@ -1,14 +1,12 @@
|
|||||||
--DROP TABLE sessions PURGE;
|
|
||||||
CREATE TABLE sessions (
|
CREATE TABLE sessions (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_sessions_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_sessions_app_id NOT NULL,
|
||||||
session_id INTEGER CONSTRAINT nn_sessions_session_id NOT NULL,
|
session_id INTEGER CONSTRAINT nn_sessions_session_id NOT NULL,
|
||||||
user_id VARCHAR2(30) CONSTRAINT nn_sessions_user_id NOT NULL,
|
user_id VARCHAR2(30) CONSTRAINT nn_sessions_user_id NOT NULL,
|
||||||
--
|
|
||||||
created_at DATE CONSTRAINT nn_sessions_created_at NOT NULL,
|
created_at DATE CONSTRAINT nn_sessions_created_at NOT NULL,
|
||||||
updated_at DATE CONSTRAINT nn_sessions_updated_at NOT NULL,
|
updated_at DATE CONSTRAINT nn_sessions_updated_at NOT NULL,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_sessions
|
CONSTRAINT pk_sessions
|
||||||
PRIMARY KEY (app_id, session_id),
|
PRIMARY KEY (app_id, session_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_sessions_app_id
|
CONSTRAINT fk_sessions_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
@ -18,8 +16,7 @@ CREATE TABLE sessions (
|
|||||||
FOREIGN KEY (user_id)
|
FOREIGN KEY (user_id)
|
||||||
REFERENCES users (user_id)
|
REFERENCES users (user_id)
|
||||||
DEFERRABLE INITIALLY DEFERRED
|
DEFERRABLE INITIALLY DEFERRED
|
||||||
)
|
);
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE sessions IS '[CORE] List of sessions';
|
COMMENT ON TABLE sessions IS '[CORE] List of sessions';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,22 +1,19 @@
|
|||||||
--DROP TABLE setting_contexts PURGE;
|
|
||||||
CREATE TABLE setting_contexts (
|
CREATE TABLE setting_contexts (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_setting_contexts_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_setting_contexts_app_id NOT NULL,
|
||||||
context_id VARCHAR2(64) CONSTRAINT nn_setting_contexts_name NOT NULL,
|
context_id VARCHAR2(64) CONSTRAINT nn_setting_contexts_name NOT NULL,
|
||||||
context_name VARCHAR2(64),
|
context_name VARCHAR2(64),
|
||||||
description_ VARCHAR2(1000),
|
description_ VARCHAR2(1000),
|
||||||
order# NUMBER(4),
|
order# NUMBER(4,0),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT uq_setting_contexts
|
CONSTRAINT uq_setting_contexts
|
||||||
UNIQUE (app_id, context_id),
|
UNIQUE (app_id, context_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_setting_contexts_app_id
|
CONSTRAINT fk_setting_contexts_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
REFERENCES apps (app_id)
|
REFERENCES apps (app_id)
|
||||||
)
|
);
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE setting_contexts IS '[CORE] List of contexts for settings overrides';
|
COMMENT ON TABLE setting_contexts IS '[CORE] List of contexts for settings overrides';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,38 +1,32 @@
|
|||||||
--DROP TABLE settings PURGE;
|
|
||||||
CREATE TABLE settings (
|
CREATE TABLE settings (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_settings_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_settings_app_id NOT NULL,
|
||||||
setting_name VARCHAR2(30) CONSTRAINT nn_settings_id NOT NULL,
|
setting_name VARCHAR2(30) CONSTRAINT nn_settings_id NOT NULL,
|
||||||
--
|
|
||||||
setting_value VARCHAR2(256),
|
setting_value VARCHAR2(256),
|
||||||
setting_context VARCHAR2(64),
|
setting_context VARCHAR2(64),
|
||||||
setting_group VARCHAR2(64),
|
setting_group VARCHAR2(64),
|
||||||
--
|
|
||||||
is_numeric CHAR(1),
|
is_numeric CHAR(1),
|
||||||
is_date CHAR(1),
|
is_date CHAR(1),
|
||||||
is_private CHAR(1),
|
is_private CHAR(1),
|
||||||
--
|
|
||||||
description_ VARCHAR2(1000),
|
description_ VARCHAR2(1000),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT uq_settings
|
|
||||||
UNIQUE (app_id, setting_name, setting_context),
|
|
||||||
--
|
|
||||||
CONSTRAINT fk_settings_app_id
|
|
||||||
FOREIGN KEY (app_id)
|
|
||||||
REFERENCES apps (app_id),
|
|
||||||
--
|
|
||||||
CONSTRAINT ch_settings_is_active
|
CONSTRAINT ch_settings_is_active
|
||||||
CHECK ((is_numeric = 'Y' AND is_date IS NULL) OR is_numeric IS NULL),
|
CHECK ((is_numeric = 'Y' AND is_date IS NULL) OR is_numeric IS NULL),
|
||||||
--
|
--
|
||||||
CONSTRAINT ch_settings_is_date
|
CONSTRAINT ch_settings_is_date
|
||||||
CHECK ((is_date = 'Y' AND is_numeric IS NULL) OR is_date IS NULL),
|
CHECK ((is_date = 'Y' AND is_numeric IS NULL) OR is_date IS NULL),
|
||||||
--
|
--
|
||||||
|
CONSTRAINT uq_settings
|
||||||
|
UNIQUE (app_id, setting_name, setting_context)
|
||||||
|
--
|
||||||
CONSTRAINT ch_settings_is_private
|
CONSTRAINT ch_settings_is_private
|
||||||
CHECK (is_private = 'Y' OR is_private IS NULL)
|
CHECK (is_private = 'Y' OR is_private IS NULL),
|
||||||
)
|
--
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
CONSTRAINT fk_settings_app_id
|
||||||
|
FOREIGN KEY (app_id)
|
||||||
|
REFERENCES apps (app_id)
|
||||||
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE settings IS '[CORE] List of settings shared through whole app';
|
COMMENT ON TABLE settings IS '[CORE] List of settings shared through whole app';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,36 +1,31 @@
|
|||||||
--DROP TABLE translated_items PURGE;
|
|
||||||
CREATE TABLE translated_items (
|
CREATE TABLE translated_items (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_translated_items_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_translated_items_app_id NOT NULL,
|
||||||
page_id NUMBER(6) CONSTRAINT nn_translated_items_page_id NOT NULL,
|
page_id NUMBER(6,0) CONSTRAINT nn_translated_items_page_id NOT NULL,
|
||||||
item_name VARCHAR2(64) CONSTRAINT nn_translated_items_name NOT NULL,
|
item_name VARCHAR2(64) CONSTRAINT nn_translated_items_name NOT NULL,
|
||||||
--
|
|
||||||
value_en VARCHAR2(2000),
|
value_en VARCHAR2(2000),
|
||||||
value_cz VARCHAR2(2000),
|
value_cz VARCHAR2(2000),
|
||||||
value_sk VARCHAR2(2000),
|
value_sk VARCHAR2(2000),
|
||||||
value_pl VARCHAR2(2000),
|
value_pl VARCHAR2(2000),
|
||||||
value_hu VARCHAR2(2000),
|
value_hu VARCHAR2(2000),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_translated_items
|
CONSTRAINT pk_translated_items
|
||||||
PRIMARY KEY (app_id, page_id, item_name),
|
PRIMARY KEY (app_id, page_id, item_name)
|
||||||
|
--
|
||||||
|
CONSTRAINT ch_translated_items_name
|
||||||
|
CHECK (REGEXP_LIKE(item_name, '^([A-Z][A-Z0-9-_]*)$')),
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_translated_items_page_id
|
CONSTRAINT fk_translated_items_page_id
|
||||||
FOREIGN KEY (app_id, page_id)
|
FOREIGN KEY (app_id, page_id)
|
||||||
REFERENCES navigation (app_id, page_id),
|
REFERENCES navigation (app_id, page_id)
|
||||||
--
|
);
|
||||||
CONSTRAINT ch_translated_items_name
|
|
||||||
CHECK (REGEXP_LIKE(item_name, '^([A-Z][A-Z0-9-_]*)$'))
|
|
||||||
)
|
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE translated_items IS '[CORE] Translations for page/app items';
|
COMMENT ON TABLE translated_items IS '[CORE] Translations for page/app items';
|
||||||
--
|
--
|
||||||
COMMENT ON COLUMN translated_items.app_id IS 'APEX application ID';
|
COMMENT ON COLUMN translated_items.app_id IS 'APEX application ID';
|
||||||
COMMENT ON COLUMN translated_items.page_id IS 'APEX page ID; 0 for page zero or application item';
|
COMMENT ON COLUMN translated_items.page_id IS 'APEX page ID; 0 for page zero or application item';
|
||||||
COMMENT ON COLUMN translated_items.item_name IS 'Item name (preferrably) to translate';
|
COMMENT ON COLUMN translated_items.item_name IS 'Item name (preferrably) to translate';
|
||||||
--
|
|
||||||
COMMENT ON COLUMN translated_items.value_en IS 'Translated value';
|
COMMENT ON COLUMN translated_items.value_en IS 'Translated value';
|
||||||
COMMENT ON COLUMN translated_items.value_cz IS 'Translated value';
|
COMMENT ON COLUMN translated_items.value_cz IS 'Translated value';
|
||||||
COMMENT ON COLUMN translated_items.value_sk IS 'Translated value';
|
COMMENT ON COLUMN translated_items.value_sk IS 'Translated value';
|
||||||
|
|||||||
@ -1,27 +1,22 @@
|
|||||||
--DROP TABLE translated_messages PURGE;
|
|
||||||
CREATE TABLE translated_messages (
|
CREATE TABLE translated_messages (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_translated_messages_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_translated_messages_app_id NOT NULL,
|
||||||
message VARCHAR2(256) CONSTRAINT nn_translated_messages_message NOT NULL,
|
message VARCHAR2(256) CONSTRAINT nn_translated_messages_message NOT NULL,
|
||||||
--
|
|
||||||
value_en VARCHAR2(2000),
|
value_en VARCHAR2(2000),
|
||||||
value_cz VARCHAR2(2000),
|
value_cz VARCHAR2(2000),
|
||||||
value_sk VARCHAR2(2000),
|
value_sk VARCHAR2(2000),
|
||||||
value_pl VARCHAR2(2000),
|
value_pl VARCHAR2(2000),
|
||||||
value_hu VARCHAR2(2000),
|
value_hu VARCHAR2(2000),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_translated_messages
|
CONSTRAINT pk_translated_messages
|
||||||
PRIMARY KEY (app_id, message)
|
PRIMARY KEY (app_id, message)
|
||||||
)
|
);
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE translated_messages IS '[CORE] List of translated messages/notifications';
|
COMMENT ON TABLE translated_messages IS '[CORE] List of translated messages/notifications';
|
||||||
--
|
--
|
||||||
COMMENT ON COLUMN translated_messages.app_id IS 'APEX application ID';
|
COMMENT ON COLUMN translated_messages.app_id IS 'APEX application ID';
|
||||||
COMMENT ON COLUMN translated_messages.message IS 'Message to translate';
|
COMMENT ON COLUMN translated_messages.message IS 'Message to translate';
|
||||||
--
|
|
||||||
COMMENT ON COLUMN translated_messages.value_en IS 'Translated value';
|
COMMENT ON COLUMN translated_messages.value_en IS 'Translated value';
|
||||||
COMMENT ON COLUMN translated_messages.value_cz IS 'Translated value';
|
COMMENT ON COLUMN translated_messages.value_cz IS 'Translated value';
|
||||||
COMMENT ON COLUMN translated_messages.value_sk IS 'Translated value';
|
COMMENT ON COLUMN translated_messages.value_sk IS 'Translated value';
|
||||||
|
|||||||
@ -1,18 +1,16 @@
|
|||||||
--DROP TABLE user_messages PURGE;
|
|
||||||
CREATE TABLE user_messages (
|
CREATE TABLE user_messages (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_user_messages_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_user_messages_app_id NOT NULL,
|
||||||
user_id VARCHAR2(30) CONSTRAINT nn_user_messages_user_id NOT NULL,
|
user_id VARCHAR2(30) CONSTRAINT nn_user_messages_user_id NOT NULL,
|
||||||
message_id INTEGER CONSTRAINT nn_user_messages_message_id NOT NULL, -- log_id
|
message_id INTEGER CONSTRAINT nn_user_messages_message_id NOT NULL,
|
||||||
message_type VARCHAR2(16),
|
message_type VARCHAR2(16),
|
||||||
message_payload VARCHAR2(2000),
|
message_payload VARCHAR2(2000),
|
||||||
session_id INTEGER,
|
session_id INTEGER,
|
||||||
--
|
|
||||||
created_by VARCHAR2(30),
|
created_by VARCHAR2(30),
|
||||||
created_at DATE,
|
created_at DATE,
|
||||||
delivered_at DATE,
|
delivered_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_user_messages
|
CONSTRAINT pk_user_messages
|
||||||
PRIMARY KEY (app_id, user_id, message_id),
|
PRIMARY KEY (app_id, user_id, message_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_user_messages_app_id
|
CONSTRAINT fk_user_messages_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
@ -22,8 +20,7 @@ CREATE TABLE user_messages (
|
|||||||
FOREIGN KEY (user_id)
|
FOREIGN KEY (user_id)
|
||||||
REFERENCES users (user_id)
|
REFERENCES users (user_id)
|
||||||
DEFERRABLE INITIALLY DEFERRED
|
DEFERRABLE INITIALLY DEFERRED
|
||||||
)
|
);
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE user_messages IS '[CORE] Messages for users';
|
COMMENT ON TABLE user_messages IS '[CORE] Messages for users';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,32 +1,27 @@
|
|||||||
--DROP TABLE user_roles PURGE;
|
|
||||||
CREATE TABLE user_roles (
|
CREATE TABLE user_roles (
|
||||||
app_id NUMBER(4) CONSTRAINT nn_user_roles_app_id NOT NULL,
|
app_id NUMBER(4,0) CONSTRAINT nn_user_roles_app_id NOT NULL,
|
||||||
user_id VARCHAR2(30) CONSTRAINT nn_user_roles_user_id NOT NULL,
|
user_id VARCHAR2(30) CONSTRAINT nn_user_roles_user_id NOT NULL,
|
||||||
role_id VARCHAR2(30) CONSTRAINT nn_user_roles_role_id NOT NULL,
|
role_id VARCHAR2(30) CONSTRAINT nn_user_roles_role_id NOT NULL,
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
CONSTRAINT pk_user_roles
|
CONSTRAINT pk_user_roles
|
||||||
PRIMARY KEY (app_id, user_id, role_id),
|
PRIMARY KEY (app_id, user_id, role_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_user_roles_app_id
|
CONSTRAINT fk_users_roles_app_id
|
||||||
FOREIGN KEY (app_id)
|
FOREIGN KEY (app_id)
|
||||||
REFERENCES apps (app_id),
|
REFERENCES apps (app_id),
|
||||||
--
|
--
|
||||||
CONSTRAINT fk_user_roles_user_id
|
CONSTRAINT fk_users_roles_role_id
|
||||||
FOREIGN KEY (user_id)
|
|
||||||
REFERENCES users (user_id)
|
|
||||||
DEFERRABLE INITIALLY DEFERRED,
|
|
||||||
--
|
|
||||||
CONSTRAINT fk_user_roles_role_id
|
|
||||||
FOREIGN KEY (app_id, role_id)
|
FOREIGN KEY (app_id, role_id)
|
||||||
REFERENCES roles (app_id, role_id)
|
REFERENCES roles (app_id, role_id)
|
||||||
DEFERRABLE INITIALLY DEFERRED
|
DEFERRABLE INITIALLY DEFERRED,
|
||||||
)
|
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
ALTER TABLE user_roles MODIFY CONSTRAINT fk_user_roles_user_id DISABLE; -- to assign roles before user is created
|
CONSTRAINT fk_users_roles_user_id
|
||||||
|
FOREIGN KEY (user_id)
|
||||||
|
REFERENCES users (user_id)
|
||||||
|
DEFERRABLE INITIALLY DEFERRED DISABLE
|
||||||
|
);
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE user_roles IS '[CORE] List of roles assigned to users';
|
COMMENT ON TABLE user_roles IS '[CORE] List of roles assigned to users';
|
||||||
--
|
--
|
||||||
|
|||||||
@ -1,29 +1,21 @@
|
|||||||
/*
|
|
||||||
DROP TABLE sessions CASCADE CONSTRAINTS PURGE;
|
|
||||||
DROP TABLE user_roles CASCADE CONSTRAINTS PURGE;
|
|
||||||
DROP TABLE users CASCADE CONSTRAINTS PURGE;
|
|
||||||
*/
|
|
||||||
CREATE TABLE users (
|
CREATE TABLE users (
|
||||||
user_id VARCHAR2(30) CONSTRAINT nn_users_user_id NOT NULL,
|
user_id VARCHAR2(30) CONSTRAINT nn_users_user_id NOT NULL,
|
||||||
user_login VARCHAR2(128) CONSTRAINT nn_users_login NOT NULL,
|
user_login VARCHAR2(128) CONSTRAINT nn_users_login NOT NULL,
|
||||||
user_name VARCHAR2(64),
|
user_name VARCHAR2(64),
|
||||||
--
|
|
||||||
lang_id VARCHAR2(5),
|
lang_id VARCHAR2(5),
|
||||||
is_active CHAR(1),
|
is_active CHAR(1),
|
||||||
--
|
|
||||||
updated_by VARCHAR2(30),
|
updated_by VARCHAR2(30),
|
||||||
updated_at DATE,
|
updated_at DATE,
|
||||||
--
|
--
|
||||||
|
CONSTRAINT ch_users_is_active
|
||||||
|
CHECK (is_active = 'Y' OR is_active IS NULL),
|
||||||
|
--
|
||||||
CONSTRAINT pk_users
|
CONSTRAINT pk_users
|
||||||
PRIMARY KEY (user_id),
|
PRIMARY KEY (user_id)
|
||||||
--
|
--
|
||||||
CONSTRAINT uq_users_user_login
|
CONSTRAINT uq_users_user_login
|
||||||
UNIQUE (user_login),
|
UNIQUE (user_login)
|
||||||
--
|
);
|
||||||
CONSTRAINT ch_users_is_active
|
|
||||||
CHECK (is_active = 'Y' OR is_active IS NULL)
|
|
||||||
)
|
|
||||||
STORAGE (BUFFER_POOL KEEP);
|
|
||||||
--
|
--
|
||||||
COMMENT ON TABLE users IS '[CORE] List of users';
|
COMMENT ON TABLE users IS '[CORE] List of users';
|
||||||
--
|
--
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user