git-svn-id: http://locode01.ad.dom/svn/WEBMIP/trunk@50874 248e525c-4dfb-0310-94bc-949c084e9493
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BUR_SYSTEM_PROFILES
|
||||
|
||||
BEFORE UPDATE ON SYSTEM_PROFILES FOR EACH ROW
|
||||
|
||||
|
||||
DECLARE
|
||||
cg$rec cg$SYSTEM_PROFILES.cg$row_type;
|
||||
cg$ind cg$SYSTEM_PROFILES.cg$ind_type;
|
||||
cg$old_rec cg$SYSTEM_PROFILES.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.SYPR_ID := :new.SYPR_ID;
|
||||
cg$ind.SYPR_ID := (:new.SYPR_ID IS NULL AND :old.SYPR_ID IS NOT NULL )
|
||||
OR (:new.SYPR_ID IS NOT NULL AND :old.SYPR_ID IS NULL)
|
||||
OR NOT(:new.SYPR_ID = :old.SYPR_ID) ;
|
||||
cg$SYSTEM_PROFILES.cg$table(cg$SYSTEM_PROFILES.idx).SYPR_ID := :old.SYPR_ID;
|
||||
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_PROFILES.cg$table(cg$SYSTEM_PROFILES.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_PROFILES.cg$table(cg$SYSTEM_PROFILES.idx).DESCRIPTION := :old.DESCRIPTION;
|
||||
cg$rec.ROLE_NAME := :new.ROLE_NAME;
|
||||
cg$ind.ROLE_NAME := (:new.ROLE_NAME IS NULL AND :old.ROLE_NAME IS NOT NULL )
|
||||
OR (:new.ROLE_NAME IS NOT NULL AND :old.ROLE_NAME IS NULL)
|
||||
OR NOT(:new.ROLE_NAME = :old.ROLE_NAME) ;
|
||||
cg$SYSTEM_PROFILES.cg$table(cg$SYSTEM_PROFILES.idx).ROLE_NAME := :old.ROLE_NAME;
|
||||
|
||||
|
||||
cg$SYSTEM_PROFILES.idx := cg$SYSTEM_PROFILES.idx + 1;
|
||||
|
||||
if not (cg$SYSTEM_PROFILES.called_from_package) then
|
||||
cg$SYSTEM_PROFILES.validate_arc(cg$rec);
|
||||
cg$SYSTEM_PROFILES.validate_domain(cg$rec, cg$ind);
|
||||
cg$SYSTEM_PROFILES.validate_domain_cascade_update(cg$old_rec);
|
||||
|
||||
cg$SYSTEM_PROFILES.upd(cg$rec, cg$ind, FALSE);
|
||||
cg$SYSTEM_PROFILES.called_from_package := FALSE;
|
||||
end if;
|
||||
|
||||
:new.NAME := cg$rec.NAME;
|
||||
:new.DESCRIPTION := cg$rec.DESCRIPTION;
|
||||
:new.ROLE_NAME := cg$rec.ROLE_NAME;
|
||||
-- Application_logic Post-Before-Update-row <<Start>>
|
||||
-- Application_logic Post-Before-Update-row << End >>
|
||||
END;
|
||||
/
|
||||
|
||||
Reference in New Issue
Block a user