create or replace PROCEDURE IMPORTA_PEDIDO_CHQ(P_DATAINI IN DATE, P_DATAFIN IN DATE, P_CDOPERADOR IN VARCHAR2)
IS 
   v_count integer;
   /* FILIAL OL */
   V_FILIALOL VARCHAR2(4);
   /* PEDIDO */
   V_NRPEDIDO INTEGER;
   V_NRSEQPEDIDO INTEGER;
   V_CDCLIENTE VARCHAR2(20);
   V_CDCLIUN VARCHAR2(30);
   V_DTPEDIDO DATE;
   V_DTENTPEDIDO DATE;
   V_IDORIGPED VARCHAR2(1);
   V_CDFORNECED VARCHAR2(20);
   V_VRTOTPED FLOAT;
   V_IDSTATUSPED VARCHAR2(1);
   V_VRDESCONTO FLOAT;
   V_VRLIQPED FLOAT;
   V_IDINTERFACE INTEGER;
   V_SEQUENCIAL VARCHAR2(20);
   /* ITEMPEDIDO */
   V_NRSEQITEMPED INTEGER;
   V_NRITEMPED INTEGER;
   V_CDPRODFORN VARCHAR2(20);
   V_CDARVPROD VARCHAR2(20);
   V_SGUNIDADE VARCHAR2(10);
   V_QTITEMPED FLOAT;
   V_VRUNITITPED FLOAT;
   V_VRTOTITPED FLOAT;
   V_PRODUTO VARCHAR2(20);
   V_CDPRODUTO VARCHAR2(10);
   V_NUMPEDIDO VARCHAR2(10);
   V_IDINTERITEM INTEGER;
   /* VALIDA */
   V_CLIENTE VARCHAR2(21);
   V_FORNECEDOR VARCHAR2(21);
   V_ENCARGO VARCHAR2(2);
   V_FILIAL VARCHAR2(4);
   V_VENDEDOR VARCHAR2(4);
   V_CDMODPGTO VARCHAR2(5);
   V_PEDIDOEXIST VARCHAR2(10);
   V_IDCLIEATIV VARCHAR2(1);
   V_MENSERRO VARCHAR2(250);
   V_NMRAZSOCFORN VARCHAR2(250);
   V_IDIMPPEDIDO_EXT VARCHAR2(01);
   
   BOERRO BOOLEAN;

   CURSOR C_PEDIDO(C_DATAINI IN DATE, C_DATAFIN IN DATE) IS
      SELECT NRPEDIDO, NRSEQPEDIDO, REGEXP_REPLACE(CDCLIENTE, '\D') CDCLIENTE, CDCLIENTEUN, DTPEDIDO, DTENTPEDIDO, IDORIGPED, 
             REGEXP_REPLACE(CDFORNECEDOR, '\D') CDFORNECEDOR, VRTOTPED, IDSTATUSPED, VRDESCONTO, VRLIQPED, IDINTERFACE
        FROM INTEGRACAO.USR_CHQ_PEDIDO
       WHERE STATUS = 1
         AND TRUNC(DTPEDIDO) BETWEEN C_DATAINI AND C_DATAFIN;
   
   CURSOR C_ITEMPEDIDO(C_NRPEDIDO IN INTEGER) IS
      SELECT NRSEQITEMPED, NRITEMPED, CDPRODFORN, REGEXP_REPLACE(CDARVPROD, '\W') CDARVPROD, SGUNIDADE, 
             QTITEMPED, VRUNITITPED, VRTOTITPED, IDINTERFACE
        FROM INTEGRACAO.USR_CHQ_ITEMPEDIDO
       WHERE NRPEDIDO = C_NRPEDIDO;

   CURSOR C_FILIAIS(C_FILIALOL IN VARCHAR2, C_CDFORNECED IN VARCHAR2) IS
      SELECT F.CDFILIAL, P.CDVENDEDOR, P.CDMODPGTO
        FROM FILIAL F LEFT OUTER JOIN PARAMPEDIDO P
                                   ON F.CDFILIAL = P.CDFILIAL
       WHERE ((F.CDFILIAL = C_FILIALOL) OR (F.CDFORNOPELOG = C_CDFORNECED))
       ORDER BY P.CDMODPGTO DESC, P.CDVENDEDOR DESC;

   FUNCTION VALIDA_PRODUTO(F_NRPEDIDO IN INTEGER, F_FORNECED IN VARCHAR2) RETURN BOOLEAN
   IS
      BORETURN BOOLEAN;
      F_CDARVPRODVAL VARCHAR2(20);
      F_SGUNIDADEVAL VARCHAR2(10);
      F_QTITEMPEDVAL FLOAT;
      F_VRUNITITPEDVAL FLOAT;
      F_VRTOTITPEDVAL FLOAT;
      F_IDINTERITEMVAL INTEGER;
      F_UNID_TEK VARCHAR2(10);
      F_PRODUTO VARCHAR2(20);
      F_CDPRODUTO VARCHAR2(10);
      F_VRTOTALITEM FLOAT;
      F_VRTOTALPED FLOAT;
      F_VALIDATOTAL FLOAT;
      F_CDPRODFORN VARCHAR2(20);
      F_NRSEQPEDIDO NUMBER;

      CURSOR C_ITEMVALIDA(C_NRPEDVALIDA IN INTEGER) IS
         SELECT U.CDARVPROD, U.SGUNIDADE, U.QTITEMPED, U.VRUNITITPED,
                U.VRTOTITPED, U.IDINTERFACE, UN.SGUNIDADE UNID_TEK,
                U.CDPRODFORN, NRPEDIDO
           FROM INTEGRACAO.USR_CHQ_ITEMPEDIDO U LEFT OUTER JOIN UNIDMEDIDA UN
                                                  ON UPPER(U.SGUNIDADE) = UPPER(UN.SGUNIDADE)
          WHERE NRPEDIDO = C_NRPEDVALIDA;
   BEGIN

      BORETURN := TRUE;

      F_VRTOTALPED := 0;
 
      OPEN C_ITEMVALIDA(F_NRPEDIDO);
      LOOP
      
         FETCH C_ITEMVALIDA INTO F_CDARVPRODVAL, F_SGUNIDADEVAL, F_QTITEMPEDVAL, F_VRUNITITPEDVAL,
                                 F_VRTOTITPEDVAL, F_IDINTERITEMVAL, F_UNID_TEK, F_CDPRODFORN, F_NRSEQPEDIDO;
         IF (C_ITEMVALIDA%ROWCOUNT = 0) THEN

            INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
            VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Pedido '||F_NRPEDIDO||' n?o possui itens');

            BORETURN := FALSE;
            EXIT;
         END IF;

         EXIT WHEN C_ITEMVALIDA%NOTFOUND;

         IF (F_UNID_TEK IS NULL) THEN
            INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
            VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'Unidade de medida '||F_SGUNIDADEVAL||' n?o cadastrada no sistema para o produto '||F_CDARVPRODVAL||' Codigo Externo '||F_CDPRODFORN);
         ELSE
         --IF NOT BORETURN THEN
         --RAISE_APPLICATION_ERROR(-20405, F_NRSEQPEDIDO, TRUE);
      --END IF;
            F_PRODUTO := SUBSTR(REGEXP_REPLACE(F_CDARVPRODVAL, '\W'), 1, 9);
            v_count := 0;
            select count(1)
              into v_count   
              FROM PRODUTO
             WHERE CDPRODINTE = F_CDPRODFORN
               AND CDFORNPROD like '%'||F_FORNECED
               AND CDNVPRODUTO = (SELECT MAX(CDNVPRODUTO)
                                    FROM PRODUTO);
            if v_count > 1 then
               BORETURN := FALSE;

               INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
               VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'Foram encontrados mais de um produto com o codigo '||F_CDPRODFORN||' e Fornecedor: '||F_FORNECED||' - '|| V_NMRAZSOCFORN);           
            end if;
            
            if v_count = 0 then
               BORETURN := FALSE;

               INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                  VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'NAO foi encontrado produto com o codigo externo'||F_CDPRODFORN||' FORNECEDOR '||F_FORNECED||' - '|| V_NMRAZSOCFORN);
            end if;
            
            if BORETURN then  
            BEGIN
               SELECT max(CDPRODUTO)
                 INTO F_CDPRODUTO
                 FROM PRODUTO
             WHERE CDPRODINTE = F_CDPRODFORN
               AND CDFORNPROD like '%'||F_FORNECED
               AND CDNVPRODUTO = (SELECT MAX(CDNVPRODUTO)
                                    FROM PRODUTO);
            EXCEPTION
               WHEN NO_DATA_FOUND THEN

                  BORETURN := FALSE;

                  INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                  VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'NAO foi encontrado produto com o codigo externo'||F_CDPRODFORN||' FORNECEDOR '||F_FORNECED||' - '|| V_NMRAZSOCFORN);

               WHEN DUP_VAL_ON_INDEX THEN
                  BORETURN := FALSE;

                  INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                  VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'Foram encontrados mais de um produto com o codigo '||F_CDPRODFORN||' e Fornecedor: '||F_FORNECED||' - '|| V_NMRAZSOCFORN);           
            END;
            
            END IF;
            F_VRTOTALITEM := F_QTITEMPEDVAL*F_VRUNITITPEDVAL;
            IF (F_VRTOTALITEM <> F_VRTOTITPEDVAL) THEN
               BORETURN := FALSE;

               INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
               VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'Valor total do item '||F_CDARVPRODVAL||' n?o corresponde a quantidade multiplicada pelo valor unitario');
            END IF;
         END IF;

         F_VRTOTALPED := F_VRTOTALPED+F_VRTOTITPEDVAL;
      END LOOP;


      IF F_VRTOTALPED > 0 THEN
         F_VALIDATOTAL := F_VRTOTALPED-V_VRDESCONTO;
         --RAISE_APPLICATION_ERROR(-20405, V_VRTOTPED||'---'||F_VALIDATOTAL, TRUE);
         IF (F_VALIDATOTAL<>V_VRLIQPED) THEN
            BORETURN := FALSE;

            INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
            VALUES(F_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Valor total do pedido n?o corresponde a soma dos itens');
         END IF;
      END IF;

      RETURN BORETURN;
   END;
BEGIN
  
   DELETE FROM INTEGRACAO.USR_CHQ_LOG
   WHERE IDPROCESSO = 4;

   DELETE FROM INTEGRACAO.USR_CHQ_LOG
   WHERE IDPROCESSO = 5;

   SELECT CDFILIAL
     INTO V_FILIALOL
     FROM FILIAL
    WHERE IDFUNCAOFILI = 'O';

    SELECT MIN(CDENCARGO)
     INTO V_ENCARGO
     FROM ENCARGO
    WHERE CDENCARGONFE = '03';

   IF (V_ENCARGO IS NOT NULL) THEN

      OPEN C_PEDIDO(P_DATAINI, P_DATAFIN);
      LOOP
         FETCH C_PEDIDO INTO V_NRPEDIDO, V_NRSEQPEDIDO, V_CDCLIENTE, V_CDCLIUN, V_DTPEDIDO, V_DTENTPEDIDO, V_IDORIGPED,
                             V_CDFORNECED, V_VRTOTPED, V_IDSTATUSPED, V_VRDESCONTO, V_VRLIQPED, V_IDINTERFACE;
         EXIT WHEN C_PEDIDO%NOTFOUND;

         BEGIN
            SELECT CDFORNECED, NMRAZSOCFORN, NVL(IDIMPPEDIDO_EXT, 'N')
              INTO V_FORNECEDOR, V_NMRAZSOCFORN, V_IDIMPPEDIDO_EXT
              FROM FORNECEDOR
             WHERE NRINSJURFORN = V_CDFORNECED;
         EXCEPTION
            WHEN NO_DATA_FOUND THEN
               V_FORNECEDOR := NULL;
               INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
               VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Fornecedor n?o cadastrado com o codigo '||V_FORNECEDOR);
         END;

         IF V_IDIMPPEDIDO_EXT = 'S' THEN

            BEGIN
               SELECT MAX(CDCLIENTE), MAX(IDCLIEATIV)
                 INTO V_CLIENTE, V_IDCLIEATIV
                 FROM CLIENTE
                WHERE NRINSJURCLIE = V_CDCLIENTE
                  AND NVL(CDEXCLIENTE,V_CDCLIUN)  = V_CDCLIUN;
            EXCEPTION
               WHEN NO_DATA_FOUND THEN
                  V_CLIENTE := NULL;
                  INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                  VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Cliente n?o cadastrado com o codigo '||V_CDCLIENTE);
            END;

            IF ((V_CLIENTE IS NOT NULL) AND (V_IDCLIEATIV = 'N')) THEN
               V_CLIENTE := NULL;
               INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
               VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Cliente '||V_CDCLIENTE||' se encontra inativo no cadastro');
            END IF;

            BEGIN
               SELECT max(NRPEDIDO)
                 INTO V_PEDIDOEXIST
                 FROM PEDIDO
                WHERE NRPEDIDO_PROT = V_NRPEDIDO;
            EXCEPTION
               WHEN NO_DATA_FOUND THEN
                  V_PEDIDOEXIST := NULL;
            END;

            --IF (V_PEDIDOEXIST > 0) OR (V_PEDIDOEXIST <> NULL) THEN

             --  INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
           --    VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Pedido '||V_NRPEDIDO||' ja cadastrado no sistema');
            --END IF;
            IF ((V_CLIENTE IS NOT NULL) AND (V_FORNECEDOR IS NOT NULL) AND (V_PEDIDOEXIST IS NULL)) THEN
       --     RAISE_APPLICATION_ERROR(-20405,V_NRSEQPEDIDO||'***'||V_FORNECEDOR, TRUE);
               IF (VALIDA_PRODUTO(V_NRSEQPEDIDO, V_FORNECEDOR)) THEN

                  BOERRO := FALSE;
                  COMMIT;
                  OPEN C_FILIAIS(V_FILIALOL, V_FORNECEDOR);
                  LOOP
                     FETCH C_FILIAIS INTO V_FILIAL, V_VENDEDOR, V_CDMODPGTO;
                     EXIT WHEN C_FILIAIS%NOTFOUND;
                     IF ((V_VENDEDOR IS NULL) OR (V_CDMODPGTO IS NULL)) THEN
                        IF (V_CDMODPGTO  IS NULL) THEN
                           INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                           VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Modalidade de pagamento padr?o n?o definido para a filial '||V_FILIAL);
                        END IF;

                  --      IF (V_VENDEDOR IS NULL) THEN
                  --         INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                  --         VALUES(V_IDINTERFACE, USR_CHQ_IDSEQLOG.NEXTVAL, 1, SYSDATE, 0, 'Vendedor padr?o n?o definido para a filial '||V_FILIAL);
                  --      END IF;

                        EXIT;
                     END IF;

                     NOVO_CODIGO('PEDIDO'||V_FILIAL, V_SEQUENCIAL);
                     V_SEQUENCIAL := SUBSTR(V_SEQUENCIAL, -10);

                     BEGIN
                        INSERT INTO PEDIDO(NRPEDIDO, CDCLIENTE, CDFILIAL, CDVENDEDOR, DTPEDIDO,
                                           DTENTPED, IDPRIOPED, DTHRLANPED, CDOPELANPED, IDSITPEDIDO,
                                           CDMODPGTO, VRPLIQVOLPED, IDTIPOPEDIDO, CDTIPOOPER, IDENTRSAIDOP,
                                           CDFORNECEDPED, NRPEDIDO_PROT, NRSEQPEDIDO_PROT)
                        VALUES(V_SEQUENCIAL, V_CLIENTE, V_FILIAL, V_VENDEDOR, V_DTPEDIDO,
                               V_DTENTPEDIDO, V_IDORIGPED, SYSDATE, P_CDOPERADOR, '2',
                               V_CDMODPGTO, V_VRLIQPED, '1', '01', 'S',
                               V_FORNECEDOR, V_NRPEDIDO, V_NRSEQPEDIDO);
                     EXCEPTION
                        WHEN OTHERS THEN
                           V_MENSERRO := SQLERRM(SQLCODE);
                           INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                           VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Erro ao inserir o Pedido. Erro: '||V_MENSERRO);

                           EXIT;
                     END;

                     OPEN C_ITEMPEDIDO(V_NRSEQPEDIDO);
                     LOOP
                        FETCH C_ITEMPEDIDO INTO V_NRSEQITEMPED, V_NRITEMPED ,V_CDPRODFORN, V_CDARVPROD, V_SGUNIDADE, V_QTITEMPED,
                                                V_VRUNITITPED, V_VRTOTITPED, V_IDINTERITEM;
                        EXIT WHEN C_ITEMPEDIDO%NOTFOUND;

                        V_NUMPEDIDO := LPAD(V_NRITEMPED, 10, '0');
                      --  V_PRODUTO   := SUBSTR(V_CDARVPROD, 1, 9);

                        --SELECT MAX(CDPRODUTO)
                        --  INTO V_CDPRODUTO
                        --  FROM PRODUTO
                         --WHERE INSTR(CDARVPROD, V_PRODUTO) > 0
                           --AND UPPER(SGUNIDADE) = UPPER(V_SGUNIDADE);
                       --  WHERE CDPRODINTE = V_CDPRODFORN
                      --     AND CDNVPRODUTO = (SELECT MAX(CDNVPRODUTO)
                         --                       FROM PRODUTO);

                  SELECT max(CDPRODUTO)
                    INTO V_CDPRODUTO
                    FROM PRODUTO
                WHERE CDPRODINTE = V_CDPRODFORN
                  AND CDFORNPROD = V_FORNECEDOR
                  AND CDNVPRODUTO = (SELECT MAX(CDNVPRODUTO)
                                       FROM PRODUTO);
                        BEGIN
                           INSERT INTO ITEMPEDIDO(NRPEDIDO, CDPRODUTO, QTITEMPED, VRPREUNITPED,
                                                  NRITEMPED, IDSITITEMPED, CDFILIAL, CDOPERADOR,
                                                  QTEXPITEMPED, NRPEDIDO_PROT, NRSEQITEMPED_PROT)
                           VALUES(V_SEQUENCIAL, V_CDPRODUTO, V_QTITEMPED, V_VRUNITITPED,
                                  V_NUMPEDIDO, '3', V_FILIAL, P_CDOPERADOR,
                                  0, V_NRPEDIDO, V_NRSEQITEMPED);
                        EXCEPTION
                           WHEN OTHERS THEN
                              ROLLBACK;
                              --RAISE_APPLICATION_ERROR(-20405, 'V_CDPRODUTO', TRUE);
                              BOERRO := TRUE;
                              V_MENSERRO := SQLERRM(SQLCODE);
                              INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
                              VALUES(V_NRSEQPEDIDO, USR_CHQ_IDSEQLOG.NEXTVAL, 5, SYSDATE, 1, 'Erro ao inserir o Item do Pedido. Erro: '||V_MENSERRO||'***'||V_CDPRODFORN||'***'||V_FORNECEDOR);

                              EXIT;
                        END;
                     END LOOP;
                     CLOSE C_ITEMPEDIDO;
                     IF (BOERRO) THEN
                        EXIT;
                     END IF;
                  END LOOP;
                  close c_filiais;
               END IF;
            --END IF;
            END IF;
         END IF;
      END LOOP;
   ELSE
      INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
      VALUES(0, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Encargo de desconto n?o definido');
   END IF;
   COMMIT;
EXCEPTION
   WHEN NO_DATA_FOUND THEN
      INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
      VALUES(0, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'N?o existe filial definida como Operador Logistico');

   WHEN DUP_VAL_ON_INDEX THEN
      INSERT INTO INTEGRACAO.USR_CHQ_LOG(IDINTERFACE, IDSEQLOG, IDPROCESSO, DTLOG, STATUS, OBSSTATUS)
      VALUES(0, USR_CHQ_IDSEQLOG.NEXTVAL, 4, SYSDATE, 1, 'Existem duas ou mais filiais definidas como Operador Logistico');

   COMMIT;
END;
/

-- VERSAO --
BEGIN ATUVEROBJ('IMPORTA_PEDIDO_CHQ','6.05.XXX'); END;
/