CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BUR_OPTION_PACKAGES BEFORE UPDATE ON OPTION_PACKAGES FOR EACH ROW DECLARE cg$rec cg$OPTION_PACKAGES.cg$row_type; cg$ind cg$OPTION_PACKAGES.cg$ind_type; cg$old_rec cg$OPTION_PACKAGES.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.OPPA_ID := :new.OPPA_ID; cg$ind.OPPA_ID := (:new.OPPA_ID IS NULL AND :old.OPPA_ID IS NOT NULL ) OR (:new.OPPA_ID IS NOT NULL AND :old.OPPA_ID IS NULL) OR NOT(:new.OPPA_ID = :old.OPPA_ID) ; cg$OPTION_PACKAGES.cg$table(cg$OPTION_PACKAGES.idx).OPPA_ID := :old.OPPA_ID; cg$rec.SYOP_SYOP_ID := :new.SYOP_SYOP_ID; cg$ind.SYOP_SYOP_ID := (:new.SYOP_SYOP_ID IS NULL AND :old.SYOP_SYOP_ID IS NOT NULL ) OR (:new.SYOP_SYOP_ID IS NOT NULL AND :old.SYOP_SYOP_ID IS NULL) OR NOT(:new.SYOP_SYOP_ID = :old.SYOP_SYOP_ID) ; cg$OPTION_PACKAGES.cg$table(cg$OPTION_PACKAGES.idx).SYOP_SYOP_ID := :old.SYOP_SYOP_ID; cg$rec.PACKAGE_NAME := :new.PACKAGE_NAME; cg$ind.PACKAGE_NAME := (:new.PACKAGE_NAME IS NULL AND :old.PACKAGE_NAME IS NOT NULL ) OR (:new.PACKAGE_NAME IS NOT NULL AND :old.PACKAGE_NAME IS NULL) OR NOT(:new.PACKAGE_NAME = :old.PACKAGE_NAME) ; cg$OPTION_PACKAGES.cg$table(cg$OPTION_PACKAGES.idx).PACKAGE_NAME := :old.PACKAGE_NAME; cg$rec.ENTRY_POINT := :new.ENTRY_POINT; cg$ind.ENTRY_POINT := (:new.ENTRY_POINT IS NULL AND :old.ENTRY_POINT IS NOT NULL ) OR (:new.ENTRY_POINT IS NOT NULL AND :old.ENTRY_POINT IS NULL) OR NOT(:new.ENTRY_POINT = :old.ENTRY_POINT) ; cg$OPTION_PACKAGES.cg$table(cg$OPTION_PACKAGES.idx).ENTRY_POINT := :old.ENTRY_POINT; cg$OPTION_PACKAGES.idx := cg$OPTION_PACKAGES.idx + 1; if not (cg$OPTION_PACKAGES.called_from_package) then cg$OPTION_PACKAGES.validate_arc(cg$rec); cg$OPTION_PACKAGES.validate_domain(cg$rec, cg$ind); cg$OPTION_PACKAGES.validate_domain_cascade_update(cg$old_rec); cg$OPTION_PACKAGES.upd(cg$rec, cg$ind, FALSE); cg$OPTION_PACKAGES.called_from_package := FALSE; end if; :new.SYOP_SYOP_ID := cg$rec.SYOP_SYOP_ID; :new.PACKAGE_NAME := cg$rec.PACKAGE_NAME; :new.ENTRY_POINT := cg$rec.ENTRY_POINT; -- Application_logic Post-Before-Update-row <> -- Application_logic Post-Before-Update-row << End >> END; /