CREATE OR REPLACE TRIGGER DTULTATU_ITMENUCONFTE_CASCADE
BEFORE INSERT OR UPDATE OR DELETE
ON ITMENUCONFTE FOR EACH ROW
BEGIN
   IF INSERTING THEN
      :NEW.DTULTATUITCT := SYSDATE;

      UPDATE PRODUTO
      SET DTULTATUPROD = SYSDATE
      WHERE CDPRODUTO  = :NEW.CDIDENTBUTON;  

      UPDATE PRODOCORRE
      SET DTULTATUPOCO = SYSDATE
      WHERE CDPRODUTO  = :NEW.CDIDENTBUTON; 

      UPDATE PRODLOJA
      SET DTULTATUPLOJ = SYSDATE
      WHERE CDPRODUTO  = :NEW.CDIDENTBUTON; 

      UPDATE PRODUTOSEG
      SET DTULTATUPSEG = SYSDATE
      WHERE CDPRODUTO  = :NEW.CDIDENTBUTON;

      IF :NEW.IDTPBUTTON = '5' THEN
         UPDATE TIPORECE
            SET DTULTATUTIPR = SYSDATE
          WHERE CDTIPORECE = :NEW.CDIDENTBUTON;
      END IF;
   END IF;
   IF UPDATING THEN
         :NEW.DTULTATUITCT := SYSDATE;

        /*Sempre que a tabela itmenuconfte era alterada, o dtultatu das tabelas abaixo tambem eram atualizados,
		  fazendo aumentar a quantidade de registros a serem baixados para o MSDE sem necessidade.*/				 
         UPDATE PRODUTO
            SET DTULTATUPROD = SYSDATE
          WHERE CDPRODUTO  = :OLD.CDIDENTBUTON;

         IF :NEW.IDTPBUTTON = '5' THEN
            UPDATE TIPORECE
               SET DTULTATUTIPR = SYSDATE
             WHERE CDTIPORECE = :NEW.CDIDENTBUTON;
         END IF;
/*
         UPDATE PRODOCORRE
         SET DTULTATUPOCO = SYSDATE
         WHERE CDPRODUTO  = :OLD.CDIDENTBUTON;

         UPDATE PRODLOJA
         SET DTULTATUPLOJ = SYSDATE
         WHERE CDPRODUTO  = :OLD.CDIDENTBUTON;

         UPDATE PRODUTOSEG
         SET DTULTATUPSEG = SYSDATE
         WHERE CDPRODUTO  = :OLD.CDIDENTBUTON;
*/

   END IF;
   IF DELETING THEN
      INSERT INTO DELETECACHE (NMTABLECACHE, CDFILICACHE, DSKEYCACHE, DTULTATUCACH)
                       VALUES ('ITMENUCONFTE',:OLD.CDFILIAL, 'CDFILIAL='||:OLD.CDFILIAL||';NRCONFTELA='||:OLD.NRCONFTELA||';IDTPBUTTON='||:OLD.IDTPBUTTON||
                                                             ';NRBUTTON='||:OLD.NRBUTTON||';NRPGCONFTELA='||:OLD.NRPGCONFTELA||';IDTPBUTONAUX='||:OLD.IDTPBUTONAUX||
                                                             ';NRBUTTONAUX='||:OLD.NRBUTTONAUX||';NRPGCONFTAUX='||:OLD.NRPGCONFTAUX||';IDTPBUTONAUX2='||:OLD.IDTPBUTONAUX2||
                                                             ';NRBUTTONAUX2='||:OLD.NRBUTTONAUX2||';NRPGCONFTAUX2='||:OLD.NRPGCONFTAUX2||';', SYSDATE);
   END IF;
END;
/

-- VERSAO --
BEGIN ATUVEROBJ('DTULTATU_ITMENUCONFTE_CASCADE','6.45.034'); END;
/

