CREATE OR REPLACE TRIGGER DTULTATU_FILITABGER_CASCADE
BEFORE INSERT OR UPDATE OR DELETE
ON FILITABGER FOR EACH ROW

BEGIN
   IF INSERTING THEN
      :NEW.DTULTATU := SYSDATE;
      UPDATE TABEPRECGER
         SET DTULTATU = SYSDATE
       WHERE CDTABEPREC = :NEW.CDTABEPREC;
   END IF;
   IF UPDATING THEN
      :NEW.DTULTATU := SYSDATE;
      UPDATE TABEPRECGER
         SET DTULTATU = SYSDATE
       WHERE CDTABEPREC = :OLD.CDTABEPREC;
   END IF;
   IF DELETING THEN
      INSERT INTO DELETECACHE (NMTABLECACHE, CDFILICACHE, DSKEYCACHE, DTULTATUCACH)
                       VALUES ('FILITABGER', :OLD.CDFILIAL, 'CDTABEPREC='||:OLD.CDTABEPREC||';CDFILIAL='||:OLD.CDFILIAL||';', SYSDATE);
   END IF;
END;
/