CREATE OR REPLACE TRIGGER EFT_NOM.cg$AUS_RULES AFTER UPDATE ON RULES DECLARE idx BINARY_INTEGER := cg$RULES.cg$table.FIRST; cg$old_rec cg$RULES.cg$row_type; cg$rec cg$RULES.cg$row_type; cg$ind cg$RULES.cg$ind_type; BEGIN -- Application_logic Pre-After-Update-statement <> -- Application_logic Pre-After-Update-statement << End >> WHILE idx IS NOT NULL LOOP cg$old_rec.CREATED_BY := cg$RULES.cg$table(idx).CREATED_BY; cg$old_rec.RULE_ID := cg$RULES.cg$table(idx).RULE_ID; cg$old_rec.RULE_NAME := cg$RULES.cg$table(idx).RULE_NAME; cg$old_rec.LEFT_SIDE := cg$RULES.cg$table(idx).LEFT_SIDE; cg$old_rec.RULE_RELATION := cg$RULES.cg$table(idx).RULE_RELATION; cg$old_rec.RIGHT_SIDE := cg$RULES.cg$table(idx).RIGHT_SIDE; cg$old_rec.ERROR_MESSAGE_HU := cg$RULES.cg$table(idx).ERROR_MESSAGE_HU; cg$old_rec.ERROR_MESSAGE_EN := cg$RULES.cg$table(idx).ERROR_MESSAGE_EN; cg$old_rec.CREATED_ON := cg$RULES.cg$table(idx).CREATED_ON; IF NOT (cg$RULES.called_from_package) THEN idx := cg$RULES.cg$table.NEXT(idx); cg$rec.CREATED_BY := cg$RULES.cg$table(idx).CREATED_BY; cg$ind.CREATED_BY := updating('CREATED_BY'); cg$rec.RULE_ID := cg$RULES.cg$table(idx).RULE_ID; cg$ind.RULE_ID := updating('RULE_ID'); cg$rec.RULE_NAME := cg$RULES.cg$table(idx).RULE_NAME; cg$ind.RULE_NAME := updating('RULE_NAME'); cg$rec.LEFT_SIDE := cg$RULES.cg$table(idx).LEFT_SIDE; cg$ind.LEFT_SIDE := updating('LEFT_SIDE'); cg$rec.RULE_RELATION := cg$RULES.cg$table(idx).RULE_RELATION; cg$ind.RULE_RELATION := updating('RULE_RELATION'); cg$rec.RIGHT_SIDE := cg$RULES.cg$table(idx).RIGHT_SIDE; cg$ind.RIGHT_SIDE := updating('RIGHT_SIDE'); cg$rec.ERROR_MESSAGE_HU := cg$RULES.cg$table(idx).ERROR_MESSAGE_HU; cg$ind.ERROR_MESSAGE_HU := updating('ERROR_MESSAGE_HU'); cg$rec.ERROR_MESSAGE_EN := cg$RULES.cg$table(idx).ERROR_MESSAGE_EN; cg$ind.ERROR_MESSAGE_EN := updating('ERROR_MESSAGE_EN'); cg$rec.CREATED_ON := cg$RULES.cg$table(idx).CREATED_ON; cg$ind.CREATED_ON := updating('CREATED_ON'); cg$RULES.validate_foreign_keys_upd(cg$rec, cg$old_rec, cg$ind); cg$RULES.upd_denorm2( cg$rec, cg$RULES.cg$tableind(idx) ); cg$RULES.upd_oper_denorm2( cg$rec, cg$old_rec, cg$RULES.cg$tableind(idx) ); cg$RULES.cascade_update(cg$rec, cg$old_rec); cg$RULES.domain_cascade_update(cg$rec, cg$ind, cg$old_rec); cg$RULES.called_from_package := FALSE; END IF; idx := cg$RULES.cg$table.NEXT(idx); END LOOP; cg$RULES.cg$table.DELETE; -- Application_logic Post-After-Update-statement <> -- Application_logic Post-After-Update-statement << End >> END; /