69 lines
3.4 KiB
Plaintext
69 lines
3.4 KiB
Plaintext
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BUR_STYLESHEET_ELEMENTS
|
|
|
|
BEFORE UPDATE ON STYLESHEET_ELEMENTS FOR EACH ROW
|
|
|
|
|
|
DECLARE
|
|
cg$rec cg$STYLESHEET_ELEMENTS.cg$row_type;
|
|
cg$ind cg$STYLESHEET_ELEMENTS.cg$ind_type;
|
|
cg$old_rec cg$STYLESHEET_ELEMENTS.cg$row_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Update-row <<Start>>
|
|
-- Application_logic Pre-Before-Update-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$rec.STEL_ID := :new.STEL_ID;
|
|
cg$ind.STEL_ID := (:new.STEL_ID IS NULL AND :old.STEL_ID IS NOT NULL )
|
|
OR (:new.STEL_ID IS NOT NULL AND :old.STEL_ID IS NULL)
|
|
OR NOT(:new.STEL_ID = :old.STEL_ID) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).STEL_ID := :old.STEL_ID;
|
|
cg$rec.STST_ID := :new.STST_ID;
|
|
cg$ind.STST_ID := (:new.STST_ID IS NULL AND :old.STST_ID IS NOT NULL )
|
|
OR (:new.STST_ID IS NOT NULL AND :old.STST_ID IS NULL)
|
|
OR NOT(:new.STST_ID = :old.STST_ID) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).STST_ID := :old.STST_ID;
|
|
cg$rec.ITEM_TYPE := :new.ITEM_TYPE;
|
|
cg$ind.ITEM_TYPE := (:new.ITEM_TYPE IS NULL AND :old.ITEM_TYPE IS NOT NULL )
|
|
OR (:new.ITEM_TYPE IS NOT NULL AND :old.ITEM_TYPE IS NULL)
|
|
OR NOT(:new.ITEM_TYPE = :old.ITEM_TYPE) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).ITEM_TYPE := :old.ITEM_TYPE;
|
|
cg$rec.ITEM_NAME := :new.ITEM_NAME;
|
|
cg$ind.ITEM_NAME := (:new.ITEM_NAME IS NULL AND :old.ITEM_NAME IS NOT NULL )
|
|
OR (:new.ITEM_NAME IS NOT NULL AND :old.ITEM_NAME IS NULL)
|
|
OR NOT(:new.ITEM_NAME = :old.ITEM_NAME) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).ITEM_NAME := :old.ITEM_NAME;
|
|
cg$rec.ITEM_PROMPT := :new.ITEM_PROMPT;
|
|
cg$ind.ITEM_PROMPT := (:new.ITEM_PROMPT IS NULL AND :old.ITEM_PROMPT IS NOT NULL )
|
|
OR (:new.ITEM_PROMPT IS NOT NULL AND :old.ITEM_PROMPT IS NULL)
|
|
OR NOT(:new.ITEM_PROMPT = :old.ITEM_PROMPT) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).ITEM_PROMPT := :old.ITEM_PROMPT;
|
|
cg$rec.ITEM_VALUE := :new.ITEM_VALUE;
|
|
cg$ind.ITEM_VALUE := (:new.ITEM_VALUE IS NULL AND :old.ITEM_VALUE IS NOT NULL )
|
|
OR (:new.ITEM_VALUE IS NOT NULL AND :old.ITEM_VALUE IS NULL)
|
|
OR NOT(:new.ITEM_VALUE = :old.ITEM_VALUE) ;
|
|
cg$STYLESHEET_ELEMENTS.cg$table(cg$STYLESHEET_ELEMENTS.idx).ITEM_VALUE := :old.ITEM_VALUE;
|
|
|
|
|
|
cg$STYLESHEET_ELEMENTS.idx := cg$STYLESHEET_ELEMENTS.idx + 1;
|
|
|
|
if not (cg$STYLESHEET_ELEMENTS.called_from_package) then
|
|
cg$STYLESHEET_ELEMENTS.validate_arc(cg$rec);
|
|
cg$STYLESHEET_ELEMENTS.validate_domain(cg$rec, cg$ind);
|
|
cg$STYLESHEET_ELEMENTS.validate_domain_cascade_update(cg$old_rec);
|
|
|
|
cg$STYLESHEET_ELEMENTS.upd(cg$rec, cg$ind, FALSE);
|
|
cg$STYLESHEET_ELEMENTS.called_from_package := FALSE;
|
|
end if;
|
|
|
|
:new.STST_ID := cg$rec.STST_ID;
|
|
:new.ITEM_TYPE := cg$rec.ITEM_TYPE;
|
|
:new.ITEM_NAME := cg$rec.ITEM_NAME;
|
|
:new.ITEM_PROMPT := cg$rec.ITEM_PROMPT;
|
|
:new.ITEM_VALUE := cg$rec.ITEM_VALUE;
|
|
-- Application_logic Post-Before-Update-row <<Start>>
|
|
-- Application_logic Post-Before-Update-row << End >>
|
|
END;
|
|
/
|
|
|