357 lines
14 KiB
Plaintext
357 lines
14 KiB
Plaintext
|
|
PROMPT Creating Trigger Logic for Table 'NOM_WINDOW_CONTRACTS'
|
|
PROMPT Creating Before Insert Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BIS_NOM_WINDOW_CONTRACTS
|
|
BEFORE INSERT ON NOM_WINDOW_CONTRACTS
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Insert-statement <<Start>>
|
|
-- Application_logic Pre-Before-Insert-statement << End >>
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.idx := 1;
|
|
|
|
-- Application_logic Post-Before-Insert-statement <<Start>>
|
|
-- Application_logic Post-Before-Insert-statement << End >>
|
|
END;
|
|
/
|
|
|
|
|
|
PROMPT Creating Before Insert Row Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BIR_NOM_WINDOW_CONTRACTS
|
|
BEFORE INSERT ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
DECLARE
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$ind cg$NOM_WINDOW_CONTRACTS.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Insert-row <<Start>>
|
|
-- Application_logic Pre-Before-Insert-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$rec.CONT_ID := :new.CONT_ID;
|
|
cg$ind.CONT_ID := TRUE;
|
|
cg$rec.NOWI_ID := :new.NOWI_ID;
|
|
cg$ind.NOWI_ID := TRUE;
|
|
cg$rec.NOWC_ID := :new.NOWC_ID;
|
|
cg$ind.NOWC_ID := TRUE;
|
|
|
|
if not (cg$NOM_WINDOW_CONTRACTS.called_from_package) then
|
|
cg$NOM_WINDOW_CONTRACTS.validate_arc(cg$rec);
|
|
cg$NOM_WINDOW_CONTRACTS.validate_domain(cg$rec);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.ins(cg$rec, cg$ind, FALSE);
|
|
cg$NOM_WINDOW_CONTRACTS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).CONT_ID := cg$rec.CONT_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(cg$NOM_WINDOW_CONTRACTS.idx).CONT_ID := cg$ind.CONT_ID;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWI_ID := cg$rec.NOWI_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(cg$NOM_WINDOW_CONTRACTS.idx).NOWI_ID := cg$ind.NOWI_ID;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWC_ID := cg$rec.NOWC_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(cg$NOM_WINDOW_CONTRACTS.idx).NOWC_ID := cg$ind.NOWC_ID;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.idx := cg$NOM_WINDOW_CONTRACTS.idx + 1;
|
|
|
|
:new.CONT_ID := cg$rec.CONT_ID;
|
|
:new.NOWI_ID := cg$rec.NOWI_ID;
|
|
:new.NOWC_ID := cg$rec.NOWC_ID;
|
|
|
|
-- Application_logic Post-Before-Insert-row <<Start>>
|
|
-- Application_logic Post-Before-Insert-row << End >>
|
|
END;
|
|
/
|
|
|
|
|
|
-- No application logic defined for Trigger cg$AIR_NOM_WINDOW_CONTRACTS, so drop it.
|
|
-- To avoid an error if there isn't one, create or replace it, and then drop it
|
|
CREATE OR REPLACE TRIGGER cg$AIR_NOM_WINDOW_CONTRACTS
|
|
AFTER INSERT ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
BEGIN
|
|
null;
|
|
END;
|
|
/
|
|
drop trigger cg$AIR_NOM_WINDOW_CONTRACTS
|
|
/
|
|
|
|
PROMPT Creating After Insert Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$AIS_NOM_WINDOW_CONTRACTS
|
|
AFTER INSERT ON NOM_WINDOW_CONTRACTS
|
|
DECLARE
|
|
idx BINARY_INTEGER := cg$NOM_WINDOW_CONTRACTS.cg$table.FIRST;
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$old_rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
fk_check INTEGER;
|
|
BEGIN
|
|
-- Application_logic Pre-After-Insert-statement <<Start>>
|
|
-- Application_logic Pre-After-Insert-statement << End >>
|
|
|
|
|
|
IF NOT (cg$NOM_WINDOW_CONTRACTS.called_from_package) THEN
|
|
WHILE idx IS NOT NULL LOOP
|
|
cg$rec.CONT_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).CONT_ID;
|
|
cg$rec.NOWI_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWI_ID;
|
|
cg$rec.NOWC_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWC_ID;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.validate_foreign_keys_ins(cg$rec);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.upd_oper_denorm2( cg$rec,
|
|
cg$old_rec,
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx),
|
|
'INS'
|
|
);
|
|
|
|
idx := cg$NOM_WINDOW_CONTRACTS.cg$table.NEXT(idx);
|
|
END LOOP;
|
|
END IF;
|
|
|
|
-- Application_logic Post-After-Insert-statement <<Start>>
|
|
-- Application_logic Post-After-Insert-statement << End >>
|
|
|
|
END;
|
|
/
|
|
|
|
|
|
|
|
|
|
PROMPT Creating Before Update Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BUS_NOM_WINDOW_CONTRACTS
|
|
BEFORE UPDATE ON NOM_WINDOW_CONTRACTS
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Update-statement <<Start>>
|
|
-- Application_logic Pre-Before-Update-statement << End >>
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.idx := 1;
|
|
|
|
-- Application_logic Post-Before-Update-statement <<Start>>
|
|
-- Application_logic Post-Before-Update-statement << End >>
|
|
|
|
END;
|
|
/
|
|
|
|
|
|
PROMPT Creating Before Update Row Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BUR_NOM_WINDOW_CONTRACTS
|
|
BEFORE UPDATE ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
DECLARE
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$ind cg$NOM_WINDOW_CONTRACTS.cg$ind_type;
|
|
cg$old_rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Update-row <<Start>>
|
|
-- Application_logic Pre-Before-Update-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$rec.CONT_ID := :new.CONT_ID;
|
|
cg$ind.CONT_ID := (:new.CONT_ID IS NULL AND :old.CONT_ID IS NOT NULL )
|
|
OR (:new.CONT_ID IS NOT NULL AND :old.CONT_ID IS NULL)
|
|
OR NOT(:new.CONT_ID = :old.CONT_ID) ;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).CONT_ID := :old.CONT_ID;
|
|
cg$rec.NOWI_ID := :new.NOWI_ID;
|
|
cg$ind.NOWI_ID := (:new.NOWI_ID IS NULL AND :old.NOWI_ID IS NOT NULL )
|
|
OR (:new.NOWI_ID IS NOT NULL AND :old.NOWI_ID IS NULL)
|
|
OR NOT(:new.NOWI_ID = :old.NOWI_ID) ;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWI_ID := :old.NOWI_ID;
|
|
cg$rec.NOWC_ID := :new.NOWC_ID;
|
|
cg$ind.NOWC_ID := (:new.NOWC_ID IS NULL AND :old.NOWC_ID IS NOT NULL )
|
|
OR (:new.NOWC_ID IS NOT NULL AND :old.NOWC_ID IS NULL)
|
|
OR NOT(:new.NOWC_ID = :old.NOWC_ID) ;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWC_ID := :old.NOWC_ID;
|
|
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.idx := cg$NOM_WINDOW_CONTRACTS.idx + 1;
|
|
|
|
if not (cg$NOM_WINDOW_CONTRACTS.called_from_package) then
|
|
cg$NOM_WINDOW_CONTRACTS.validate_arc(cg$rec);
|
|
cg$NOM_WINDOW_CONTRACTS.validate_domain(cg$rec, cg$ind);
|
|
cg$NOM_WINDOW_CONTRACTS.validate_domain_cascade_update(cg$old_rec);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.upd(cg$rec, cg$ind, FALSE);
|
|
cg$NOM_WINDOW_CONTRACTS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
:new.CONT_ID := cg$rec.CONT_ID;
|
|
:new.NOWI_ID := cg$rec.NOWI_ID;
|
|
-- Application_logic Post-Before-Update-row <<Start>>
|
|
-- Application_logic Post-Before-Update-row << End >>
|
|
END;
|
|
/
|
|
|
|
-- No application logic defined for Trigger cg$AUR_NOM_WINDOW_CONTRACTS, so drop it.
|
|
-- To avoid an error if there isn't one, create or replace it, and then drop it
|
|
CREATE OR REPLACE TRIGGER cg$AUR_NOM_WINDOW_CONTRACTS
|
|
AFTER UPDATE ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
BEGIN
|
|
null;
|
|
END;
|
|
/
|
|
drop trigger cg$AUR_NOM_WINDOW_CONTRACTS
|
|
/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PROMPT Creating After Update Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$AUS_NOM_WINDOW_CONTRACTS
|
|
AFTER UPDATE ON NOM_WINDOW_CONTRACTS
|
|
DECLARE
|
|
idx BINARY_INTEGER := cg$NOM_WINDOW_CONTRACTS.cg$table.FIRST;
|
|
cg$old_rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$ind cg$NOM_WINDOW_CONTRACTS.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-After-Update-statement <<Start>>
|
|
-- Application_logic Pre-After-Update-statement << End >>
|
|
|
|
WHILE idx IS NOT NULL LOOP
|
|
cg$old_rec.CONT_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).CONT_ID;
|
|
cg$old_rec.NOWI_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWI_ID;
|
|
cg$old_rec.NOWC_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWC_ID;
|
|
|
|
IF NOT (cg$NOM_WINDOW_CONTRACTS.called_from_package) THEN
|
|
idx := cg$NOM_WINDOW_CONTRACTS.cg$table.NEXT(idx);
|
|
cg$rec.CONT_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).CONT_ID;
|
|
cg$ind.CONT_ID := updating('CONT_ID');
|
|
cg$rec.NOWI_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWI_ID;
|
|
cg$ind.NOWI_ID := updating('NOWI_ID');
|
|
cg$rec.NOWC_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWC_ID;
|
|
cg$ind.NOWC_ID := updating('NOWC_ID');
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.validate_foreign_keys_upd(cg$rec, cg$old_rec, cg$ind);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.upd_denorm2( cg$rec,
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx)
|
|
);
|
|
cg$NOM_WINDOW_CONTRACTS.upd_oper_denorm2( cg$rec,
|
|
cg$old_rec,
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx)
|
|
);
|
|
cg$NOM_WINDOW_CONTRACTS.cascade_update(cg$rec, cg$old_rec);
|
|
cg$NOM_WINDOW_CONTRACTS.domain_cascade_update(cg$rec, cg$ind, cg$old_rec);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.called_from_package := FALSE;
|
|
END IF;
|
|
idx := cg$NOM_WINDOW_CONTRACTS.cg$table.NEXT(idx);
|
|
END LOOP;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table.DELETE;
|
|
|
|
-- Application_logic Post-After-Update-statement <<Start>>
|
|
-- Application_logic Post-After-Update-statement << End >>
|
|
|
|
END;
|
|
/
|
|
|
|
PROMPT Creating Before Delete Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BDS_NOM_WINDOW_CONTRACTS
|
|
BEFORE DELETE ON NOM_WINDOW_CONTRACTS
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Delete-statement <<Start>>
|
|
-- Application_logic Pre-Before-Delete-statement << End >>
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind.DELETE;
|
|
cg$NOM_WINDOW_CONTRACTS.idx := 1;
|
|
|
|
-- Application_logic Post-Before-Delete-statement <<Start>>
|
|
-- Application_logic Post-Before-Delete-statement << End >>
|
|
END;
|
|
/
|
|
|
|
|
|
PROMPT Creating Before Delete Row Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$BDR_NOM_WINDOW_CONTRACTS
|
|
BEFORE DELETE ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
DECLARE
|
|
cg$pk cg$NOM_WINDOW_CONTRACTS.cg$pk_type;
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$ind cg$NOM_WINDOW_CONTRACTS.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Delete-row <<Start>>
|
|
-- Application_logic Pre-Before-Delete-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$pk.NOWC_ID := :old.NOWC_ID;
|
|
cg$rec.NOWC_ID := :old.NOWC_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWC_ID := :old.NOWC_ID;
|
|
cg$rec.CONT_ID := :old.CONT_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).CONT_ID := :old.CONT_ID;
|
|
cg$rec.NOWI_ID := :old.NOWI_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$table(cg$NOM_WINDOW_CONTRACTS.idx).NOWI_ID := :old.NOWI_ID;
|
|
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.idx := cg$NOM_WINDOW_CONTRACTS.idx + 1;
|
|
|
|
if not (cg$NOM_WINDOW_CONTRACTS.called_from_package) then
|
|
cg$NOM_WINDOW_CONTRACTS.validate_domain_cascade_delete(cg$rec);
|
|
cg$NOM_WINDOW_CONTRACTS.del(cg$pk, FALSE);
|
|
cg$NOM_WINDOW_CONTRACTS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
-- Application_logic Post-Before-Delete-row <<Start>>
|
|
-- Application_logic Post-Before-Delete-row << End >>
|
|
END;
|
|
/
|
|
|
|
-- No application logic defined for Trigger cg$ADR_NOM_WINDOW_CONTRACTS, so drop it.
|
|
-- To avoid an error if there isn't one, create or replace it, and then drop it
|
|
CREATE OR REPLACE TRIGGER cg$ADR_NOM_WINDOW_CONTRACTS
|
|
AFTER DELETE ON NOM_WINDOW_CONTRACTS FOR EACH ROW
|
|
BEGIN
|
|
null;
|
|
END;
|
|
/
|
|
drop trigger cg$ADR_NOM_WINDOW_CONTRACTS
|
|
/
|
|
|
|
PROMPT Creating After Delete Statement Trigger on 'NOM_WINDOW_CONTRACTS'
|
|
CREATE OR REPLACE TRIGGER cg$ADS_NOM_WINDOW_CONTRACTS
|
|
AFTER DELETE ON NOM_WINDOW_CONTRACTS
|
|
DECLARE
|
|
idx BINARY_INTEGER := cg$NOM_WINDOW_CONTRACTS.cg$table.FIRST;
|
|
cg$rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
cg$old_rec cg$NOM_WINDOW_CONTRACTS.cg$row_type;
|
|
BEGIN
|
|
-- Application_logic Pre-After-Delete-statement <<Start>>
|
|
-- Application_logic Pre-After-Delete-statement << End >>
|
|
|
|
IF NOT (cg$NOM_WINDOW_CONTRACTS.called_from_package) THEN
|
|
WHILE idx IS NOT NULL LOOP
|
|
cg$rec.CONT_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).CONT_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx).CONT_ID := TRUE;
|
|
cg$rec.NOWI_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWI_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx).NOWI_ID := TRUE;
|
|
cg$rec.NOWC_ID := cg$NOM_WINDOW_CONTRACTS.cg$table(idx).NOWC_ID;
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx).NOWC_ID := TRUE;
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.validate_foreign_keys_del(cg$rec);
|
|
cg$NOM_WINDOW_CONTRACTS.upd_oper_denorm2( cg$rec,
|
|
cg$old_rec,
|
|
cg$NOM_WINDOW_CONTRACTS.cg$tableind(idx),
|
|
'DEL'
|
|
);
|
|
|
|
cg$NOM_WINDOW_CONTRACTS.cascade_delete(cg$rec);
|
|
cg$NOM_WINDOW_CONTRACTS.domain_cascade_delete(cg$rec);
|
|
|
|
idx := cg$NOM_WINDOW_CONTRACTS.cg$table.NEXT(idx);
|
|
END LOOP;
|
|
END IF;
|
|
|
|
-- Application_logic Post-After-Delete-statement <<Start>>
|
|
-- Application_logic Post-After-Delete-statement << End >>
|
|
|
|
END;
|
|
/
|
|
|
|
|
|
|