CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BUR_SYSTEM_OPTIONS BEFORE UPDATE ON SYSTEM_OPTIONS FOR EACH ROW DECLARE cg$rec cg$SYSTEM_OPTIONS.cg$row_type; cg$ind cg$SYSTEM_OPTIONS.cg$ind_type; cg$old_rec cg$SYSTEM_OPTIONS.cg$row_type; BEGIN -- Application_logic Pre-Before-Update-row <> -- Application_logic Pre-Before-Update-row << End >> -- Load cg$rec/cg$ind values from new cg$rec.SYOP_ID_THE_PARENT_OF := :new.SYOP_ID_THE_PARENT_OF; cg$ind.SYOP_ID_THE_PARENT_OF := (:new.SYOP_ID_THE_PARENT_OF IS NULL AND :old.SYOP_ID_THE_PARENT_OF IS NOT NULL ) OR (:new.SYOP_ID_THE_PARENT_OF IS NOT NULL AND :old.SYOP_ID_THE_PARENT_OF IS NULL) OR NOT(:new.SYOP_ID_THE_PARENT_OF = :old.SYOP_ID_THE_PARENT_OF) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).SYOP_ID_THE_PARENT_OF := :old.SYOP_ID_THE_PARENT_OF; cg$rec.SYOP_ID := :new.SYOP_ID; cg$ind.SYOP_ID := (:new.SYOP_ID IS NULL AND :old.SYOP_ID IS NOT NULL ) OR (:new.SYOP_ID IS NOT NULL AND :old.SYOP_ID IS NULL) OR NOT(:new.SYOP_ID = :old.SYOP_ID) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).SYOP_ID := :old.SYOP_ID; cg$rec.OPTION_TYPE := :new.OPTION_TYPE; cg$ind.OPTION_TYPE := (:new.OPTION_TYPE IS NULL AND :old.OPTION_TYPE IS NOT NULL ) OR (:new.OPTION_TYPE IS NOT NULL AND :old.OPTION_TYPE IS NULL) OR NOT(:new.OPTION_TYPE = :old.OPTION_TYPE) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).OPTION_TYPE := :old.OPTION_TYPE; cg$rec.NAME := :new.NAME; cg$ind.NAME := (:new.NAME IS NULL AND :old.NAME IS NOT NULL ) OR (:new.NAME IS NOT NULL AND :old.NAME IS NULL) OR NOT(:new.NAME = :old.NAME) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).NAME := :old.NAME; cg$rec.DESCRIPTION := :new.DESCRIPTION; cg$ind.DESCRIPTION := (:new.DESCRIPTION IS NULL AND :old.DESCRIPTION IS NOT NULL ) OR (:new.DESCRIPTION IS NOT NULL AND :old.DESCRIPTION IS NULL) OR NOT(:new.DESCRIPTION = :old.DESCRIPTION) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).DESCRIPTION := :old.DESCRIPTION; cg$rec.MODULE_NAME := :new.MODULE_NAME; cg$ind.MODULE_NAME := (:new.MODULE_NAME IS NULL AND :old.MODULE_NAME IS NOT NULL ) OR (:new.MODULE_NAME IS NOT NULL AND :old.MODULE_NAME IS NULL) OR NOT(:new.MODULE_NAME = :old.MODULE_NAME) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).MODULE_NAME := :old.MODULE_NAME; cg$rec.MTXT_TEXT_NUMBER := :new.MTXT_TEXT_NUMBER; cg$ind.MTXT_TEXT_NUMBER := (:new.MTXT_TEXT_NUMBER IS NULL AND :old.MTXT_TEXT_NUMBER IS NOT NULL ) OR (:new.MTXT_TEXT_NUMBER IS NOT NULL AND :old.MTXT_TEXT_NUMBER IS NULL) OR NOT(:new.MTXT_TEXT_NUMBER = :old.MTXT_TEXT_NUMBER) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).MTXT_TEXT_NUMBER := :old.MTXT_TEXT_NUMBER; cg$rec.DISPLAY_SEQ := :new.DISPLAY_SEQ; cg$ind.DISPLAY_SEQ := (:new.DISPLAY_SEQ IS NULL AND :old.DISPLAY_SEQ IS NOT NULL ) OR (:new.DISPLAY_SEQ IS NOT NULL AND :old.DISPLAY_SEQ IS NULL) OR NOT(:new.DISPLAY_SEQ = :old.DISPLAY_SEQ) ; cg$SYSTEM_OPTIONS.cg$table(cg$SYSTEM_OPTIONS.idx).DISPLAY_SEQ := :old.DISPLAY_SEQ; cg$SYSTEM_OPTIONS.idx := cg$SYSTEM_OPTIONS.idx + 1; if not (cg$SYSTEM_OPTIONS.called_from_package) then cg$SYSTEM_OPTIONS.validate_arc(cg$rec); cg$SYSTEM_OPTIONS.validate_domain(cg$rec, cg$ind); cg$SYSTEM_OPTIONS.validate_domain_cascade_update(cg$old_rec); cg$SYSTEM_OPTIONS.upd(cg$rec, cg$ind, FALSE); cg$SYSTEM_OPTIONS.called_from_package := FALSE; end if; :new.SYOP_ID_THE_PARENT_OF := cg$rec.SYOP_ID_THE_PARENT_OF; :new.OPTION_TYPE := cg$rec.OPTION_TYPE; :new.NAME := cg$rec.NAME; :new.DESCRIPTION := cg$rec.DESCRIPTION; :new.MODULE_NAME := cg$rec.MODULE_NAME; :new.MTXT_TEXT_NUMBER := cg$rec.MTXT_TEXT_NUMBER; :new.DISPLAY_SEQ := cg$rec.DISPLAY_SEQ; -- Application_logic Post-Before-Update-row <> -- Application_logic Post-Before-Update-row << End >> END; /