72 lines
2.9 KiB
Plaintext
72 lines
2.9 KiB
Plaintext
CREATE OR REPLACE TRIGGER EFT_NOM.cg$BIR_NOMINATION_WINDOWS
|
|
|
|
BEFORE INSERT ON NOMINATION_WINDOWS FOR EACH ROW
|
|
DECLARE
|
|
cg$rec cg$NOMINATION_WINDOWS.cg$row_type;
|
|
cg$ind cg$NOMINATION_WINDOWS.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.GAS_DAY := :new.GAS_DAY;
|
|
cg$ind.GAS_DAY := TRUE;
|
|
cg$rec.WINDOW_START := :new.WINDOW_START;
|
|
cg$ind.WINDOW_START := TRUE;
|
|
cg$rec.WINDOW_END := :new.WINDOW_END;
|
|
cg$ind.WINDOW_END := TRUE;
|
|
cg$rec.MESSAGE := :new.MESSAGE;
|
|
cg$ind.MESSAGE := TRUE;
|
|
cg$rec.NOTES := :new.NOTES;
|
|
cg$ind.NOTES := TRUE;
|
|
cg$rec.TSA_TIMESTAMP := :new.TSA_TIMESTAMP;
|
|
cg$ind.TSA_TIMESTAMP := TRUE;
|
|
cg$rec.NOWI_ID := :new.NOWI_ID;
|
|
cg$ind.NOWI_ID := TRUE;
|
|
|
|
if not (cg$NOMINATION_WINDOWS.called_from_package) then
|
|
cg$NOMINATION_WINDOWS.validate_arc(cg$rec);
|
|
cg$NOMINATION_WINDOWS.validate_domain(cg$rec);
|
|
|
|
cg$NOMINATION_WINDOWS.ins(cg$rec, cg$ind, FALSE);
|
|
cg$NOMINATION_WINDOWS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).GAS_DAY := cg$rec.GAS_DAY;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).GAS_DAY := cg$ind.GAS_DAY;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).WINDOW_START := cg$rec.WINDOW_START;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).WINDOW_START := cg$ind.WINDOW_START;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).WINDOW_END := cg$rec.WINDOW_END;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).WINDOW_END := cg$ind.WINDOW_END;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).MESSAGE := cg$rec.MESSAGE;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).MESSAGE := cg$ind.MESSAGE;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).NOTES := cg$rec.NOTES;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).NOTES := cg$ind.NOTES;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).TSA_TIMESTAMP := cg$rec.TSA_TIMESTAMP;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).TSA_TIMESTAMP := cg$ind.TSA_TIMESTAMP;
|
|
|
|
cg$NOMINATION_WINDOWS.cg$table(cg$NOMINATION_WINDOWS.idx).NOWI_ID := cg$rec.NOWI_ID;
|
|
cg$NOMINATION_WINDOWS.cg$tableind(cg$NOMINATION_WINDOWS.idx).NOWI_ID := cg$ind.NOWI_ID;
|
|
|
|
cg$NOMINATION_WINDOWS.idx := cg$NOMINATION_WINDOWS.idx + 1;
|
|
|
|
:new.GAS_DAY := cg$rec.GAS_DAY;
|
|
:new.WINDOW_START := cg$rec.WINDOW_START;
|
|
:new.WINDOW_END := cg$rec.WINDOW_END;
|
|
:new.MESSAGE := cg$rec.MESSAGE;
|
|
:new.NOTES := cg$rec.NOTES;
|
|
:new.TSA_TIMESTAMP := cg$rec.TSA_TIMESTAMP;
|
|
:new.NOWI_ID := cg$rec.NOWI_ID;
|
|
|
|
-- Application_logic Post-Before-Insert-row <<Start>>
|
|
-- Application_logic Post-Before-Insert-row << End >>
|
|
END;
|
|
/
|
|
|