CREATE OR REPLACE TRIGGER ATUALIZASTATUSBAIXA
  AFTER UPDATE ON BOLETRECASSINA
  FOR EACH ROW
DECLARE
   PRAGMA AUTONOMOUS_TRANSACTION;
   JOB_N INT;
   V_IDINTERFACE NUMBER;
   V_NOME VARCHAR2(5000);
   V_COMANDO VARCHAR2(5000);
BEGIN
   IF UPDATING THEN
      IF (:OLD.IDSTATUS <> :NEW.IDSTATUS) AND (:OLD.DTULTATU <> :NEW.DTULTATU) THEN
         V_NOME := 'ATUALIZASTATUSBAIXA';
          BEGIN
            DBMS_SCHEDULER.DROP_JOB(V_NOME);
          EXCEPTION
               WHEN OTHERS THEN
            NULL;
          END;
           V_COMANDO := 'BEGIN GERA_BAIXA_ASSINA('||CHR(39)||:NEW.DTULTATU||CHR(39)||'); END;';
        
           BEGIN
              DBMS_SCHEDULER.CREATE_JOB (
              JOB_NAME => V_NOME,
              JOB_TYPE => 'PLSQL_BLOCK',
              JOB_ACTION => V_COMANDO,
              START_DATE => SYSTIMESTAMP,
              REPEAT_INTERVAL => 'FREQ=MINUTELY; INTERVAL=15',
              ENABLED => TRUE);
           END;
         
      END IF;
   END IF;    
END ATUALIZASTATUSBAIXA;
/

-- VERSAO --
BEGIN ATUVEROBJ('ATUALIZACAO_ESTRUTURA_BD','6.49.xxx') END
/