40 lines
1.4 KiB
Plaintext
40 lines
1.4 KiB
Plaintext
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BDR_MESSAGE_RECIPIENT
|
|
|
|
BEFORE DELETE ON MESSAGE_RECIPIENT FOR EACH ROW
|
|
|
|
DECLARE
|
|
cg$pk cg$MESSAGE_RECIPIENT.cg$pk_type;
|
|
cg$rec cg$MESSAGE_RECIPIENT.cg$row_type;
|
|
cg$ind cg$MESSAGE_RECIPIENT.cg$ind_type;
|
|
BEGIN
|
|
-- Application_logic Pre-Before-Delete-row <<Start>>
|
|
-- Application_logic Pre-Before-Delete-row << End >>
|
|
|
|
-- Load cg$rec/cg$ind values from new
|
|
|
|
cg$pk.SYUS_ID := :old.SYUS_ID;
|
|
cg$rec.SYUS_ID := :old.SYUS_ID;
|
|
cg$MESSAGE_RECIPIENT.cg$table(cg$MESSAGE_RECIPIENT.idx).SYUS_ID := :old.SYUS_ID;
|
|
cg$pk.BUBM_ID := :old.BUBM_ID;
|
|
cg$rec.BUBM_ID := :old.BUBM_ID;
|
|
cg$MESSAGE_RECIPIENT.cg$table(cg$MESSAGE_RECIPIENT.idx).BUBM_ID := :old.BUBM_ID;
|
|
cg$rec.BUBM_ID := :old.BUBM_ID;
|
|
cg$MESSAGE_RECIPIENT.cg$table(cg$MESSAGE_RECIPIENT.idx).BUBM_ID := :old.BUBM_ID;
|
|
cg$rec.SYUS_ID := :old.SYUS_ID;
|
|
cg$MESSAGE_RECIPIENT.cg$table(cg$MESSAGE_RECIPIENT.idx).SYUS_ID := :old.SYUS_ID;
|
|
|
|
|
|
cg$MESSAGE_RECIPIENT.idx := cg$MESSAGE_RECIPIENT.idx + 1;
|
|
|
|
if not (cg$MESSAGE_RECIPIENT.called_from_package) then
|
|
cg$MESSAGE_RECIPIENT.validate_domain_cascade_delete(cg$rec);
|
|
cg$MESSAGE_RECIPIENT.del(cg$pk, FALSE);
|
|
cg$MESSAGE_RECIPIENT.called_from_package := FALSE;
|
|
end if;
|
|
|
|
-- Application_logic Post-Before-Delete-row <<Start>>
|
|
-- Application_logic Post-Before-Delete-row << End >>
|
|
END;
|
|
/
|
|
|