Files
mip/Data/BulkLoad/EFT/Nominations/plsql/cg$aus_nomination_windows.trg

64 lines
3.0 KiB
Plaintext

CREATE OR REPLACE TRIGGER EFT_NOM.cg$AUS_NOMINATION_WINDOWS
AFTER UPDATE ON NOMINATION_WINDOWS
DECLARE
idx BINARY_INTEGER := cg$NOMINATION_WINDOWS.cg$table.FIRST;
cg$old_rec cg$NOMINATION_WINDOWS.cg$row_type;
cg$rec cg$NOMINATION_WINDOWS.cg$row_type;
cg$ind cg$NOMINATION_WINDOWS.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.GAS_DAY := cg$NOMINATION_WINDOWS.cg$table(idx).GAS_DAY;
cg$old_rec.WINDOW_START := cg$NOMINATION_WINDOWS.cg$table(idx).WINDOW_START;
cg$old_rec.WINDOW_END := cg$NOMINATION_WINDOWS.cg$table(idx).WINDOW_END;
cg$old_rec.MESSAGE := cg$NOMINATION_WINDOWS.cg$table(idx).MESSAGE;
cg$old_rec.NOTES := cg$NOMINATION_WINDOWS.cg$table(idx).NOTES;
cg$old_rec.TSA_TIMESTAMP := cg$NOMINATION_WINDOWS.cg$table(idx).TSA_TIMESTAMP;
cg$old_rec.NOWI_ID := cg$NOMINATION_WINDOWS.cg$table(idx).NOWI_ID;
IF NOT (cg$NOMINATION_WINDOWS.called_from_package) THEN
idx := cg$NOMINATION_WINDOWS.cg$table.NEXT(idx);
cg$rec.GAS_DAY := cg$NOMINATION_WINDOWS.cg$table(idx).GAS_DAY;
cg$ind.GAS_DAY := updating('GAS_DAY');
cg$rec.WINDOW_START := cg$NOMINATION_WINDOWS.cg$table(idx).WINDOW_START;
cg$ind.WINDOW_START := updating('WINDOW_START');
cg$rec.WINDOW_END := cg$NOMINATION_WINDOWS.cg$table(idx).WINDOW_END;
cg$ind.WINDOW_END := updating('WINDOW_END');
cg$rec.MESSAGE := cg$NOMINATION_WINDOWS.cg$table(idx).MESSAGE;
cg$ind.MESSAGE := updating('MESSAGE');
cg$rec.NOTES := cg$NOMINATION_WINDOWS.cg$table(idx).NOTES;
cg$ind.NOTES := updating('NOTES');
cg$rec.TSA_TIMESTAMP := cg$NOMINATION_WINDOWS.cg$table(idx).TSA_TIMESTAMP;
cg$ind.TSA_TIMESTAMP := updating('TSA_TIMESTAMP');
cg$rec.NOWI_ID := cg$NOMINATION_WINDOWS.cg$table(idx).NOWI_ID;
cg$ind.NOWI_ID := updating('NOWI_ID');
cg$NOMINATION_WINDOWS.validate_foreign_keys_upd(cg$rec, cg$old_rec, cg$ind);
cg$NOMINATION_WINDOWS.upd_denorm2( cg$rec,
cg$NOMINATION_WINDOWS.cg$tableind(idx)
);
cg$NOMINATION_WINDOWS.upd_oper_denorm2( cg$rec,
cg$old_rec,
cg$NOMINATION_WINDOWS.cg$tableind(idx)
);
cg$NOMINATION_WINDOWS.cascade_update(cg$rec, cg$old_rec);
cg$NOMINATION_WINDOWS.domain_cascade_update(cg$rec, cg$ind, cg$old_rec);
cg$NOMINATION_WINDOWS.called_from_package := FALSE;
END IF;
idx := cg$NOMINATION_WINDOWS.cg$table.NEXT(idx);
END LOOP;
cg$NOMINATION_WINDOWS.cg$table.DELETE;
-- Application_logic Post-After-Update-statement <<Start>>
-- Application_logic Post-After-Update-statement << End >>
END;
/