dbscr.raduga.init1: - if not has_domain({schema}, JROBO_RADUGA) - do CREATE DOMAIN {schema}JROBO_RADUGA AS INTEGER # RD_USER - | do CREATE TABLE {schema}RD_USER ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_USER PRIMARY KEY, NAME VARCHAR(64) NOT NULL CONSTRAINT {schema}UQ_RD_USER_NAME UNIQUE, PSW VARCHAR(64), SUPER BOOLEAN, DELETED BOOLEAN ) # RD_ROLE - | do CREATE TABLE {schema}RD_ROLE ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_ROLE PRIMARY KEY, NAME VARCHAR(64) NOT NULL CONSTRAINT {schema}UQ_RD_ROLE_NAME UNIQUE, DELETED BOOLEAN ) # RD_USER_ROLE - | do CREATE TABLE {schema}RD_USER_ROLE ( USER_ID INTEGER CONSTRAINT {schema}FK_RD_USERROLE_USER REFERENCES {schema}RD_USER ON DELETE CASCADE ON UPDATE CASCADE, ROLE_ID INTEGER CONSTRAINT {schema}FK_RD_USERROLE_ROLE REFERENCES {schema}RD_ROLE ON DELETE CASCADE ON UPDATE CASCADE ) # RD_PERM - | do CREATE TABLE {schema}RD_PERM ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_PERM PRIMARY KEY, NAME VARCHAR(64) NOT NULL CONSTRAINT {schema}UQ_RD_PERM_NAME UNIQUE, DESCR VARCHAR(128), DELETED BOOLEAN ) # RD_ROLE_PERM - | do CREATE TABLE {schema}RD_ROLE_PERM ( ROLE_ID INTEGER CONSTRAINT {schema}FK_RD_ROLEPERM_ROLE REFERENCES {schema}RD_USER ON DELETE CASCADE ON UPDATE CASCADE, PERM_ID INTEGER CONSTRAINT {schema}FK_RD_ROLEPERM_PERM REFERENCES {schema}RD_PERM ON DELETE CASCADE ON UPDATE CASCADE ) # RD_PRODUCT - | do CREATE TABLE {schema}RD_PRODUCT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_PRODUCT PRIMARY KEY, NAME VARCHAR(128) NOT NULL CONSTRAINT {schema}UQ_RD_PRODUCT_NAME UNIQUE, DELETED BOOLEAN ) # RD_PARAM - | do CREATE TABLE {schema}RD_PARAM ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_PARAM PRIMARY KEY, NAME VARCHAR(32) NOT NULL CONSTRAINT {schema}UQ_RD_PARAM_NAME UNIQUE, DESCR VARCHAR(128), VALTYPE CHAR(6) NOT NULL CONSTRAINT {schema}CH_RD_PARAM_VALTYPE CHECK (VALTYPE in ('BOOL','INT','LONG','DOUBLE','STRING')), DELETED BOOLEAN ) # RD_LINE - | do CREATE TABLE {schema}RD_LINE ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_LINE PRIMARY KEY, NAME VARCHAR(32) NOT NULL CONSTRAINT {schema}UQ_RD_LINE_NAME UNIQUE, DESCR VARCHAR(128), HIDDEN BOOLEAN, DELETED BOOLEAN ) # RD_DOSER - | do CREATE TABLE {schema}RD_DOSER ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_DOSER PRIMARY KEY, NAME VARCHAR(32) NOT NULL CONSTRAINT {schema}UQ_RD_DOSER_NAME UNIQUE, DELETED BOOLEAN ) # RD_LINE_DOSER - | do CREATE TABLE {schema}RD_LINE_DOSER ( LINE_ID INTEGER CONSTRAINT {schema}FK_RD_LINEDOSER_LINE REFERENCES {schema}RD_LINE ON DELETE CASCADE ON UPDATE CASCADE, DOSER_ID INTEGER CONSTRAINT {schema}FK_RD_LINEDOSER_DOSER REFERENCES {schema}RD_DOSER ON DELETE CASCADE ON UPDATE CASCADE ) # RD_BUNKER - | do CREATE TABLE {schema}RD_BUNKER ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_BUNKER PRIMARY KEY, NAME VARCHAR(32) NOT NULL CONSTRAINT {schema}UQ_RD_BUNKER_NAME UNIQUE, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_BUNKER_PRODUCT REFERENCES {schema}RD_PRODUCT ON DELETE SET NULL ON UPDATE CASCADE, WEIGHT BIGINT DEFAULT 0, DELETED BOOLEAN ) # RD_LINE_BUNKER - | do CREATE TABLE {schema}RD_LINE_BUNKER ( LINE_ID INTEGER CONSTRAINT {schema}FK_RD_LINEBUNKER_LINE REFERENCES {schema}RD_LINE ON DELETE CASCADE ON UPDATE CASCADE, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_LINEBUNKER_BUNKER REFERENCES {schema}RD_BUNKER ON DELETE CASCADE ON UPDATE CASCADE ) # RD_FEEDER - | do CREATE TABLE {schema}RD_FEEDER ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_FEEDER PRIMARY KEY, DOSER_ID INTEGER CONSTRAINT {schema}FK_RD_DOSERBUNKER_DOSER REFERENCES {schema}RD_DOSER ON DELETE CASCADE ON UPDATE CASCADE, FEEDER_NUM SMALLINT, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_DOSERBUNKER_BUNKER REFERENCES {schema}RD_BUNKER ON DELETE CASCADE ON UPDATE CASCADE, DELETED BOOLEAN ) # RD_LINE_PARAM - | do CREATE TABLE {schema}RD_LINE_PARAM ( LINE_ID INTEGER CONSTRAINT {schema}FK_RD_LINEPARAM_LINE REFERENCES {schema}RD_LINE ON DELETE CASCADE ON UPDATE CASCADE, PARAM_ID INTEGER CONSTRAINT {schema}FK_RD_LINEPARAM_PARAM REFERENCES {schema}RD_PARAM ON DELETE CASCADE ON UPDATE CASCADE ) # RD_RECIPE - | do CREATE TABLE {schema}RD_RECIPE ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_RECIPE PRIMARY KEY, NAME VARCHAR(128) NOT NULL CONSTRAINT {schema}UQ_RD_RECIPE_NAME UNIQUE, DESCR VARCHAR(2048), PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_RECIPE_PRODUCT REFERENCES {schema}RD_PRODUCT, DT TIMESTAMP, DELETED BOOLEAN ) # RD_RECIPE_PRODUCT - | do CREATE TABLE {schema}RD_RECIPE_PRODUCT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_RECIPE_PRODUCT PRIMARY KEY, RECIPE_ID INTEGER CONSTRAINT {schema}FK_RD_RECIPEPRODUCT_RECIPE REFERENCES {schema}RD_RECIPE ON DELETE CASCADE ON UPDATE CASCADE, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_RECIPEPRODUCT_PRODUCT REFERENCES {schema}RD_PRODUCT, WEIGHT BIGINT ) # RD_RECIPE_PARAM - | do CREATE TABLE {schema}RD_RECIPE_PARAM ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_RECIPE_PARAM PRIMARY KEY, RECIPE_ID INTEGER CONSTRAINT {schema}FK_RD_RECIPEPARAM_RECIPE REFERENCES {schema}RD_RECIPE ON DELETE CASCADE ON UPDATE CASCADE, PARAM_ID INTEGER CONSTRAINT {schema}FK_RD_RECIPEPARAM_PARAM REFERENCES {schema}RD_PARAM, VAL VARCHAR(32) ) # RD_PLACE - | do CREATE TABLE {schema}RD_PLACE ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_PLACE PRIMARY KEY, NAME VARCHAR(128) NOT NULL CONSTRAINT {schema}UQ_RD_PLACE_NAME UNIQUE, DELETED BOOLEAN ) # RD_SHIFT - | do CREATE TABLE {schema}RD_SHIFT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_SHIFT PRIMARY KEY, USER_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFT_USER REFERENCES {schema}RD_USER, PLACE_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFT_PLACE REFERENCES {schema}RD_PLACE, DT_OPEN TIMESTAMP, DT_CLOSE TIMESTAMP ) # RD_SHIFT_INPUT - | do CREATE TABLE {schema}RD_SHIFT_INPUT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_SHIFTINPUT PRIMARY KEY, SHIFT_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTINPUT_SHIFT REFERENCES {schema}RD_SHIFT ON DELETE CASCADE ON UPDATE CASCADE, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTINPUT_PRODUCT REFERENCES {schema}RD_PRODUCT, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTINPUT_BUNKER REFERENCES {schema}RD_BUNKER, DT TIMESTAMP, WEIGHT BIGINT ) # RD_SHIFT_OUTPUT - | do CREATE TABLE {schema}RD_SHIFT_OUTPUT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_SHIFTOUTPUT PRIMARY KEY, SHIFT_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTOUTPUT_SHIFT REFERENCES {schema}RD_SHIFT ON DELETE CASCADE ON UPDATE CASCADE, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTOUTPUT_PRODUCT REFERENCES {schema}RD_PRODUCT, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_SHIFTOUTPUT_BUNKER REFERENCES {schema}RD_BUNKER, DT TIMESTAMP, WEIGHT BIGINT ) # RD_TASK - | do CREATE TABLE {schema}RD_TASK ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASK PRIMARY KEY, LINE_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_LINE REFERENCES {schema}RD_LINE, RECIPE_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_RECIPE REFERENCES {schema}RD_RECIPE, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_PRODUCT REFERENCES {schema}RD_PRODUCT, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_BUNKER REFERENCES {schema}RD_BUNKER, USER_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_USER REFERENCES {schema}RD_USER, SHIFT_ID INTEGER CONSTRAINT {schema}FK_RD_TASK_SHIFT REFERENCES {schema}RD_SHIFT, DT_CREATE TIMESTAMP, DT_EXEC TIMESTAMP, DT_FINISH TIMESTAMP, SET_WEIGHT_TOT BIGINT, STATUS INTEGER ) # RD_TASK_PRODUCT - | do CREATE TABLE {schema}RD_TASK_PRODUCT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASKPRODUCT PRIMARY KEY, TASK_ID INTEGER CONSTRAINT {schema}FK_RD_TASKPRODUCT_TASK REFERENCES {schema}RD_TASK, PRODUCT_ID INTEGER CONSTRAINT {schema}FK_RD_TASKPRODUCT_PRODUCT REFERENCES {schema}RD_PRODUCT, BUNKER_ID INTEGER CONSTRAINT {schema}FK_RD_TASKPRODUCT_BUNKER REFERENCES {schema}RD_BUNKER, WEIGHT BIGINT ) # RD_TASK_PARAM - | do CREATE TABLE {schema}RD_TASK_PARAM ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASKPARAM PRIMARY KEY, TASK_ID INTEGER CONSTRAINT {schema}FK_RD_TASKPARAM_TASK REFERENCES {schema}RD_TASK, PARAM_ID INTEGER CONSTRAINT {schema}FK_RD_TASKPARAM_PRODUCT REFERENCES {schema}RD_PARAM, VAL VARCHAR(32) ) # RD_TASK_COMMENT - | do CREATE TABLE {schema}RD_TASK_COMMENT ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASKCOMMENT PRIMARY KEY, TASK_ID INTEGER CONSTRAINT {schema}FK_RD_TASKCOMMENT_TASK REFERENCES {schema}RD_TASK, USER_ID INTEGER CONSTRAINT {schema}FK_RD_TASKCOMMENT_USER REFERENCES {schema}RD_USER, TEXT VARCHAR(2048) ) # RD_TASK_EXEC - | do CREATE TABLE {schema}RD_TASK_EXEC ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASKEXEC PRIMARY KEY, TASK_ID INTEGER CONSTRAINT {schema}FK_RD_TASKEXEC_TASK REFERENCES {schema}RD_TASK, FEEDER_ID INTEGER CONSTRAINT {schema}FK_RD_TASKEXEC_FEEDER REFERENCES {schema}RD_FEEDER, CYCLE_ID INTEGER, DT TIMESTAMP, WEIGHT BIGINT, SUM_WEIGHT_BEG BIGINT, SUM_WEIGHT_END BIGINT ) # RD_TASK_CTL - | do CREATE TABLE {schema}RD_TASK_CTL ( ID INTEGER GENERATED BY DEFAULT AS IDENTITY CONSTRAINT {schema}PK_RD_TASKCTL PRIMARY KEY, TASK_ID INTEGER CONSTRAINT {schema}FK_RD_TASKCTL_TASK REFERENCES {schema}RD_TASK, CYCLE_ID INTEGER, DT TIMESTAMP, WEIGHT BIGINT ) - do CREATE UNIQUE DESCENDING INDEX {schema}IX_RD_TASKEXEC_ID_DSC ON {schema}RD_TASK_EXEC (ID); - do CREATE SEQUENCE {schema}SQ_RD_CYCLE_ID - do ALTER SEQUENCE {schema}SQ_RD_CYCLE_ID RESTART WITH 0 - do CREATE DOMAIN {schema}JROBO_RADUGA_INIT_1 AS INTEGER dbscr.raduga.init2: - if has_domain({schema}, JROBO_RADUGA_INIT_1) - do DROP DOMAIN {schema}JROBO_RADUGA_INIT_1 - do INSERT INTO {schema}RD_USER (ID, NAME, PSW) VALUES (1, 'Supervisor', '') - do INSERT INTO {schema}RD_USER (ID, NAME, PSW) VALUES (2, 'Оператор', '')