/******************************************************************************/
/*                                                                            */
/* Trigger: DTULTATU_CARDCICLO                                                */
/* Tabela : CARDCICLO                                                         */
/*                                                                            */
/******************************************************************************/

CREATE OR REPLACE TRIGGER DTULTATU_CARDCICLO
BEFORE INSERT OR UPDATE OR DELETE
ON CARDCICLO FOR EACH ROW
BEGIN
   IF INSERTING THEN
      :NEW.DTULTATUCRDCICL := SYSDATE;
   END IF;
   IF UPDATING THEN
      IF (NVL(:OLD.CDCARDCICLO,   '¿') <> NVL(:NEW.CDCARDCICLO,   '¿')) OR
         (NVL(:OLD.NMCARDCICLO,   '¿') <> NVL(:NEW.NMCARDCICLO,   '¿')) OR
         (NVL(:OLD.NRDIAINICICLO,  -1) <> NVL(:NEW.NRDIAINICICLO,  -1)) OR
         (NVL(:OLD.NRDIAINICICLO,  -1) <> NVL(:NEW.NRDIAINICICLO,  -1)) OR
         (NVL(:OLD.NRSEMCICLO,     -1) <> NVL(:NEW.NRSEMCICLO,     -1)) THEN
         :NEW.DTULTATUCRDCICL := SYSDATE;
      END IF;
   END IF;
   IF DELETING THEN
      INSERT INTO DELETECACHE (NMTABLECACHE, CDFILICACHE, DSKEYCACHE, DTULTATUCACH)
                       VALUES ('CARDCICLO', '', 'CDCARDCICLO='||:OLD.CDCARDCICLO||';', SYSDATE);
   END IF;
END;
/

ALTER TABLE CARDCICLO MODIFY DTULTATUCRDCICL DEFAULT SYSDATE
/

-- VERSAO --
BEGIN ATUVEROBJ('DTULTATU_CARDCICLO','5.20.000'); 
END;