80 lines
4.3 KiB
Plaintext
80 lines
4.3 KiB
Plaintext
CREATE OR REPLACE TRIGGER "EFT_NOM".cg$BUR_CUSTOMER_INTERMEDIARIES
|
|
|
|
BEFORE UPDATE ON CUSTOMER_INTERMEDIARIES FOR EACH ROW
|
|
|
|
|
|
DECLARE
|
|
cg$rec cg$CUSTOMER_INTERMEDIARIES.cg$row_type;
|
|
cg$ind cg$CUSTOMER_INTERMEDIARIES.cg$ind_type;
|
|
cg$old_rec cg$CUSTOMER_INTERMEDIARIES.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.CUST_ID := :new.CUST_ID;
|
|
cg$ind.CUST_ID := (:new.CUST_ID IS NULL AND :old.CUST_ID IS NOT NULL )
|
|
OR (:new.CUST_ID IS NOT NULL AND :old.CUST_ID IS NULL)
|
|
OR NOT(:new.CUST_ID = :old.CUST_ID) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).CUST_ID := :old.CUST_ID;
|
|
cg$rec.INTE_ID := :new.INTE_ID;
|
|
cg$ind.INTE_ID := (:new.INTE_ID IS NULL AND :old.INTE_ID IS NOT NULL )
|
|
OR (:new.INTE_ID IS NOT NULL AND :old.INTE_ID IS NULL)
|
|
OR NOT(:new.INTE_ID = :old.INTE_ID) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).INTE_ID := :old.INTE_ID;
|
|
cg$rec.CREATED_BY := :new.CREATED_BY;
|
|
cg$ind.CREATED_BY := (:new.CREATED_BY IS NULL AND :old.CREATED_BY IS NOT NULL )
|
|
OR (:new.CREATED_BY IS NOT NULL AND :old.CREATED_BY IS NULL)
|
|
OR NOT(:new.CREATED_BY = :old.CREATED_BY) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).CREATED_BY := :old.CREATED_BY;
|
|
cg$rec.CREATED_ON := :new.CREATED_ON;
|
|
cg$ind.CREATED_ON := (:new.CREATED_ON IS NULL AND :old.CREATED_ON IS NOT NULL )
|
|
OR (:new.CREATED_ON IS NOT NULL AND :old.CREATED_ON IS NULL)
|
|
OR NOT(:new.CREATED_ON = :old.CREATED_ON) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).CREATED_ON := :old.CREATED_ON;
|
|
cg$rec.UPDATED_BY := :new.UPDATED_BY;
|
|
cg$ind.UPDATED_BY := (:new.UPDATED_BY IS NULL AND :old.UPDATED_BY IS NOT NULL )
|
|
OR (:new.UPDATED_BY IS NOT NULL AND :old.UPDATED_BY IS NULL)
|
|
OR NOT(:new.UPDATED_BY = :old.UPDATED_BY) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).UPDATED_BY := :old.UPDATED_BY;
|
|
cg$rec.UPDATED_ON := :new.UPDATED_ON;
|
|
cg$ind.UPDATED_ON := (:new.UPDATED_ON IS NULL AND :old.UPDATED_ON IS NOT NULL )
|
|
OR (:new.UPDATED_ON IS NOT NULL AND :old.UPDATED_ON IS NULL)
|
|
OR NOT(:new.UPDATED_ON = :old.UPDATED_ON) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).UPDATED_ON := :old.UPDATED_ON;
|
|
cg$rec.CUST_NAME := :new.CUST_NAME;
|
|
cg$ind.CUST_NAME := (:new.CUST_NAME IS NULL AND :old.CUST_NAME IS NOT NULL )
|
|
OR (:new.CUST_NAME IS NOT NULL AND :old.CUST_NAME IS NULL)
|
|
OR NOT(:new.CUST_NAME = :old.CUST_NAME) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).CUST_NAME := :old.CUST_NAME;
|
|
cg$rec.INTE_NAME := :new.INTE_NAME;
|
|
cg$ind.INTE_NAME := (:new.INTE_NAME IS NULL AND :old.INTE_NAME IS NOT NULL )
|
|
OR (:new.INTE_NAME IS NOT NULL AND :old.INTE_NAME IS NULL)
|
|
OR NOT(:new.INTE_NAME = :old.INTE_NAME) ;
|
|
cg$CUSTOMER_INTERMEDIARIES.cg$table(cg$CUSTOMER_INTERMEDIARIES.idx).INTE_NAME := :old.INTE_NAME;
|
|
|
|
|
|
cg$CUSTOMER_INTERMEDIARIES.idx := cg$CUSTOMER_INTERMEDIARIES.idx + 1;
|
|
|
|
if not (cg$CUSTOMER_INTERMEDIARIES.called_from_package) then
|
|
cg$CUSTOMER_INTERMEDIARIES.validate_arc(cg$rec);
|
|
cg$CUSTOMER_INTERMEDIARIES.validate_domain(cg$rec, cg$ind);
|
|
cg$CUSTOMER_INTERMEDIARIES.validate_domain_cascade_update(cg$old_rec);
|
|
|
|
cg$CUSTOMER_INTERMEDIARIES.upd(cg$rec, cg$ind, FALSE);
|
|
cg$CUSTOMER_INTERMEDIARIES.called_from_package := FALSE;
|
|
end if;
|
|
|
|
:new.CREATED_BY := cg$rec.CREATED_BY;
|
|
:new.CREATED_ON := cg$rec.CREATED_ON;
|
|
:new.UPDATED_BY := cg$rec.UPDATED_BY;
|
|
:new.UPDATED_ON := cg$rec.UPDATED_ON;
|
|
:new.CUST_NAME := cg$rec.CUST_NAME;
|
|
:new.INTE_NAME := cg$rec.INTE_NAME;
|
|
-- Application_logic Post-Before-Update-row <<Start>>
|
|
-- Application_logic Post-Before-Update-row << End >>
|
|
END;
|
|
/
|
|
|