SELECT rank() over (order by ( nvl(VENDAMESATUAL.QTVENDAMES,0) +
                               nvl(VENDAMESANT.QTVENDAMES1,0) +
                               nvl(VENDAMESANT.QTVENDAMES2,0) +
                               nvl(VENDAMESANT.QTVENDAMES3,0) ) DESC) rankqtdevenda
      ,rank() over (order by ( NVL(VENDAMESATUAL.VLVENDAMES,0) - NVL(VENDAMESATUAL.VLCUSTOMES,0) ) DESC) rankperclucro
      ,rank() over (order by ( nvl(VENDAMESATUAL.VLVENDAMES,0) +
                               nvl(VENDAMESANT.VLVENDAMES1,0) +
                               nvl(VENDAMESANT.VLVENDAMES2,0) +
                               nvl(VENDAMESANT.VLVENDAMES3,0) ) DESC) rankvalorvenda
      ,( SELECT ESTVENDAPRODMES.QTMESES FROM ESTVENDAPRODMES
          WHERE ESTVENDAPRODMES.CODPROD = PCPRODUT.CODPROD ) QTMESESVENDA
      ,CASE WHEN ( nvl(VENDAMESATUAL.QTVENDAMES,0) +
                   nvl(VENDAMESANT.QTVENDAMES1,0) +
                   nvl(VENDAMESANT.QTVENDAMES2,0) +
                   nvl(VENDAMESANT.QTVENDAMES3,0) ) > 0 THEN
         ( ( nvl(VENDAMESATUAL.VLVENDAMES,0) +
             nvl(VENDAMESANT.VLVENDAMES1,0) +
             nvl(VENDAMESANT.VLVENDAMES2,0) +
             nvl(VENDAMESANT.VLVENDAMES3,0) ) /
               ( nvl(VENDAMESATUAL.QTVENDAMES,0) +
                 nvl(VENDAMESANT.QTVENDAMES1,0) +
                 nvl(VENDAMESANT.QTVENDAMES2,0) +
                 nvl(VENDAMESANT.QTVENDAMES3,0) ) )
       ELSE 0 END PRECOMEDIO
      ,CASE WHEN ( nvl(VENDAMESATUAL.VLVENDAMES,0) +
                    nvl(VENDAMESANT.VLVENDAMES1,0) +
                    nvl(VENDAMESANT.VLVENDAMES2,0) +
                    nvl(VENDAMESANT.VLVENDAMES3,0) ) <> 0 THEN
          ROUND(( ( ( nvl(VENDAMESATUAL.VLVENDAMES,0) +
                      nvl(VENDAMESANT.VLVENDAMES1,0) +
                      nvl(VENDAMESANT.VLVENDAMES2,0) +
                      nvl(VENDAMESANT.VLVENDAMES3,0) ) -
                    ( nvl(VENDAMESATUAL.VLCUSTOMES,0) +
                      nvl(VENDAMESANT.VLCUSTOFINMES1,0) +
                      nvl(VENDAMESANT.VLCUSTOFINMES2,0) +
                      nvl(VENDAMESANT.VLCUSTOFINMES3,0) ) ) /
                         (  nvl(VENDAMESATUAL.VLVENDAMES,0) +
                            nvl(VENDAMESANT.VLVENDAMES1,0) +
                            nvl(VENDAMESANT.VLVENDAMES2,0) +
                            nvl(VENDAMESANT.VLVENDAMES3,0) ) ) * 100,2)
       ELSE 0 END PERLUCROTOTAL
      ,PCEST.CODFILIAL
      ,PCPRODUT.CODPROD
      ,PCPRODUT.DESCRICAO
      ,PCPRODUT.EMBALAGEM
      ,esf_lista_produtos_similares(PCPRODUT.CODPROD) LISTA_PRODUTOS_SIMILARES
      ,PCPRODUT.CUSTOREP PCOMPRA
      ,PCPRODUT.DTPROXCOMPRA
      ,PCPRODUT.PERCIPI
      ,PCPRODUT.PERCST
      ,PCPRODUT.PERCDESC
      ,PCPRODUT.PCOMREP1
      ,PCPRODUT.PERCFRETE
      ,PCTRIBUT.CODST
      ,PCTRIBUT.MENSAGEM
      ,PCPRODUT.UNIDADE
      ,PCPRODUT.NOMEECOMMERCE
      ,PCPRODUT.QTUNITCX
      ,PCPRODUT.MULTIPLO
      ,PCPRODUT.CODFAB
      ,PCPRODUT.CODAUXILIAR
      ,PCPRODUT.CODMARCA
      ,PCPRODUT.TEMREPOS
      ,PCFORNEC.PRAZOENTREGA
      ,PCMARCA.MARCA
      ,PCPRODUT.CODEPTO
      ,PCPRODUT.TIPOPRODUTO
      ,PCDEPTO.DESCRICAO NOMEDEPARTAMENTO
      ,PCPRODUT.CODSEC
      ,PCSECAO.DESCRICAO NOMESECAO
      ,PCPRODUT.DADOSTECNICOS
      ,PCPRODUT.CODCATEGORIA
      ,PCCATEGORIA.CATEGORIA
      ,PCSUBCATEGORIA.CODSUBCATEGORIA
      ,PCSUBCATEGORIA.SUBCATEGORIA
      ,PCPRODUT.CODFORNEC
      ,PCFORNEC.CODFORNECPRINC
      ,PCFORNEC.FORNECEDOR
      ,PCPRODUT.CODCOMPRADOR
      ,COMPRADOR.NOME NOMECOMPRADOR
      ,PCPRODUT.PESOBRUTO
      ,PCPRODUT.PESOLIQ
      ,PCPRODUT.CLASSEVENDA
      ,PCPRODUT.CLASSEESTOQUE
      ,PCPRODUT.ENVIAECOMMERCE
      ,PCPRODUT.LARGURAM3
      ,PCPRODUT.ALTURAM3
      ,PCPRODUT.COMPRIMENTOM3
      ,PCPRODUT.VOLUME
      ,PCPRODUT.JUR_MARGEMMIN MARGEMMIN
      ,DDE_PRODUTO.DDE DDEPRODUTO
      ,DDE_SECAO.DDE   DDESECAO
      ,DDE_CATEGORIA.DDE DDECATEGORIA
      ,( SELECT PCTABPR.PVENDA1 FROM PCTABPR WHERE PCTABPR.NUMREGIAO = 4
             AND PCTABPR.CODPROD = PCPRODUT.CODPROD ) PVENDA4
      ,( SELECT PCTABPR.PVENDA1 FROM PCTABPR WHERE PCTABPR.NUMREGIAO = 5
             AND PCTABPR.CODPROD = PCPRODUT.CODPROD ) PVENDA5
      ,( SELECT PCTABPR.PVENDA1 FROM PCTABPR WHERE PCTABPR.NUMREGIAO = 7
             AND PCTABPR.CODPROD = PCPRODUT.CODPROD ) PVENDA7
      ,( SELECT PCTABPR.PVENDA1 FROM PCTABPR WHERE PCTABPR.NUMREGIAO = 8
             AND PCTABPR.CODPROD = PCPRODUT.CODPROD ) PVENDA8
      ,( SELECT P.CODPROD   FROM PCFORMPROD, PCPRODUT P
          WHERE PCFORMPROD.CODPRODMP   = PCPRODUT.CODPROD
            AND PCFORMPROD.CODPRODACAB = P.CODPROD
            AND P.DTEXCLUSAO IS NULL
            AND ROWNUM = 1 ) CODKIT
      ,( SELECT P.DESCRICAO FROM PCFORMPROD, PCPRODUT P
          WHERE PCFORMPROD.CODPRODMP = PCPRODUT.CODPROD
            AND PCFORMPROD.CODPRODACAB = P.CODPROD
            AND P.DTEXCLUSAO IS NULL
            AND ROWNUM = 1 ) DESCRICAOKIT
      ,PCPRODUT.ESC_EXIBIRSITE
      ,NVL(PCPRODUT.ESC_ATIVOSITE,'N') ESC_ATIVOSITE
      ,CASE WHEN PCPRODUT.OBS2 = 'FL' THEN 'S' ELSE 'N' END OBS2
      ,CASE WHEN PCPRODUT.DTEXCLUSAO IS NULL THEN 'N' ELSE 'S' END EXCLUIDO
      ,ESTPRODUCTECOMMERCE.informacoesecom INFORMACOESTECNICAS
      --,PCPRODUT.INFORMACOESTECNICAS URLIMAGEM
      , CASE WHEN PCPRODUT.URLIMAGEM IS NULL THEN 0
             WHEN INSTR(PCPRODUT.URLIMAGEM,';') = 0 THEN 1
             ELSE ( LENGTH(PCPRODUT.URLIMAGEM) - LENGTH(REPLACE(PCPRODUT.URLIMAGEM, ';'))) + 1 END QTDEIMAGENS
      , CASE WHEN PROD_ECOMMERCE.ID IS NULL THEN 'NÃO' ELSE 'SIM' END PRODUTO_CADASTRADO_ECOMMERCE
      ,PCPRODUT.URLIMAGEM
      ,ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) CUSTOULTENT --PCEST.CUSTOULTENT
      ,PCEST.CUSTOFIN
      ,PCEST.CUSTOREP
      ,PCEST.VALORULTENT

      ,(SELECT ESTFRETECOMPRA.VLFRETEFOB FROM PCMOV, ESTFRETECOMPRA
         WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.NUMNOTA     = ESTFRETECOMPRA.NUMNOTA
           AND PCMOV.CODPROD     = ESTFRETECOMPRA.CODPROD
           AND PCMOV.CODFORNEC   = ESTFRETECOMPRA.CODFORNEC
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') )
           AND ROWNUM = 1 ) VLFRETE_AJUSTADO
      ,PCPRODUT.DTCADASTRO
      ,PCPRODUT.NBM
      ,PCPRODUT.CODNCMEX
      ,( SELECT PCMOVPREENT.NBM
           FROM PCMOVPREENT
          WHERE PCMOVPREENT.CODPROD = PCPRODUT.CODPROD
            AND PCMOVPREENT.DTMOV   = ( SELECT MAX(M.DTMOV) FROM PCMOVPREENT M
                                         WHERE M.CODPROD = PCMOVPREENT.CODPROD
                                           AND M.DTMOV >= TRUNC(SYSDATE) - 360 )
            AND ROWNUM = 1 ) NCM_FORNECEDOR
      ,( SELECT PCCEST.CODCEST FROM PCCESTPRODUTO, PCCEST
          WHERE PCCESTPRODUTO.CODPROD = PCPRODUT.CODPROD
            AND PCCESTPRODUTO.CODSEQCEST = PCCEST.CODIGO AND ROWNUM = 1 ) CODCEST
      ,( SELECT PCCEST.DESCRICAOCEST FROM PCCESTPRODUTO, PCCEST
          WHERE PCCESTPRODUTO.CODPROD = PCPRODUT.CODPROD
            AND PCCESTPRODUTO.CODSEQCEST = PCCEST.CODIGO AND ROWNUM = 1 ) DESCRICAOCEST
      ,PCTRIBFIGURA.CODFIGURA
      ,PCTRIBFIGURA.DESCRICAO DESC_FIGURA_ENTRADA
      ,PCFORNEC.ESTADO UF_FORNECEDOR
      ,PCTRIBFIGURA.PERCICM
      ,PCTRIBFIGURA.PERCREDICMS
      ,ESTPRODUCTECOMMERCE.OBSESTOQUE
      ,ESTPRODUCTECOMMERCE.CLASSECOMPRADOR
      ,ESTPRODUCTECOMMERCE.CLASSEVENDA CLASSE01
      ,ESTPRODUCTECOMMERCE.CALCULARPRECOTINTOMETRICO
      ,ESTPRODUCTECOMMERCE.QTUNITRESSUPRIMENTO
      ,PCPRODUT.LETRABASETINTOMETRICO
      ,CASE WHEN CAMPANHA.CODPROD IS NULL THEN 'NAO' ELSE 'SIM' END PRODUTO_EM_CAMPANHA
      ,( SELECT MIN(E.DTMOV) FROM PCMOV E
          WHERE E.CODPROD = PCPRODUT.CODPROD AND E.CODOPER = 'E'
            AND NVL(E.QT,0) > 0
            AND E.DTCANCEL IS NULL) DTPRIMCOMPRA
     ,( nvl(VENDAMESATUAL.QTVENDAMES,0) +
        nvl(VENDAMESANT.QTVENDAMES1,0) +
        nvl(VENDAMESANT.QTVENDAMES2,0) +
        nvl(VENDAMESANT.QTVENDAMES3,0) ) QTVENDATOTAL
     ,( nvl(VENDAMESATUAL.VLVENDAMES,0) +
        nvl(VENDAMESANT.VLVENDAMES1,0) +
        nvl(VENDAMESANT.VLVENDAMES2,0) +
        nvl(VENDAMESANT.VLVENDAMES3,0) ) VLVENDATOTAL
     ,( nvl(VENDAMESATUAL.VLCUSTOMES,0) +
        nvl(VENDAMESANT.VLCUSTOFINMES1,0) +
        nvl(VENDAMESANT.VLCUSTOFINMES2,0) +
        nvl(VENDAMESANT.VLCUSTOFINMES3,0) ) VLCUSTOFINTOTAL
      ,( SELECT SUM( (NVL(ESTOQUE_TOTAL.QTESTGER,0) - NVL(ESTOQUE_TOTAL.QTRESERV,0)
                     - GREATEST(NVL(ESTOQUE_TOTAL.QTBLOQUEADA,0),0) - NVL(ESTOQUE_TOTAL.QTPENDENTE,0) ))
           FROM PCEST ESTOQUE_TOTAL
          WHERE ESTOQUE_TOTAL.CODPROD = PCEST.CODPROD ) QTESTDISP_TOTAL
      ,( SELECT SUM( (NVL(ESTOQUE_TOTAL.QTESTGER,0) - NVL(ESTOQUE_TOTAL.QTRESERV,0) -
                      GREATEST(NVL(ESTOQUE_TOTAL.QTBLOQUEADA,0),0) - NVL(ESTOQUE_TOTAL.QTPENDENTE,0) ) * ESTOQUE_TOTAL.CUSTOREP )
           FROM PCEST ESTOQUE_TOTAL
          WHERE ESTOQUE_TOTAL.CODPROD = PCEST.CODPROD ) VLESTDISP_TOTAL
      ,( SELECT SUM( (NVL(ESTOQUE_TOTAL.QTESTGER,0) - NVL(ESTOQUE_TOTAL.QTRESERV,0) - GREATEST(NVL(ESTOQUE_TOTAL.QTEXPOSICAO,0),0)
                     - GREATEST(NVL(ESTOQUE_TOTAL.QTINDENIZ,0),0) - NVL(ESTOQUE_TOTAL.QTPENDENTE,0) ))
           FROM PCEST ESTOQUE_TOTAL
          WHERE ESTOQUE_TOTAL.CODPROD = PCEST.CODPROD ) QTESTDISP_COMPRA_TOTAL
      ,VENDAMESATUAL.VLVENDAMES
      ,VENDAMESATUAL.QTVENDAMES
      ,VENDAMESANT.VLVENDAMES1
      ,VENDAMESANT.VLCUSTOFINMES1
      ,VENDAMESANT.QTVENDAMES1
      ,VENDAMESANT.VLVENDAMES2
      ,VENDAMESANT.VLCUSTOFINMES2
      ,VENDAMESANT.QTVENDAMES2
      ,VENDAMESANT.VLVENDAMES3
      ,VENDAMESANT.VLCUSTOFINMES3
      ,VENDAMESANT.QTVENDAMES3
      ,CONSUMO.QT QTCONSUMO
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_A_VISTA
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_A_VISTA
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_DEBITO
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_DEBITO
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_CREDITO_1X
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_CREDITO_1X
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_CREDITO_10X
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
         WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
           AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
           AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
           AND ROWNUM = 1 ) ALTERACAO_PRECO_CREDITO_10X

 --DATA INICIO VIGENCIA
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTINI_PRECO_A_VISTA
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTINI_PRECO_DEBITO
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTINI_PRECO_CREDITO_1X
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46)
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTINI_PRECO_CREDITO_10X
      --DATA FIM VIGENCIA
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTFIM_PRECO_A_VISTA
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTFIM_PRECO_DEBITO
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTFIM_PRECO_CREDITO_1X
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46)
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 1
             AND ROWNUM = 1 ) DTFIM_PRECO_CREDITO_10X


      ,( ((VENDAMESATUAL.VLVENDAMES - VENDAMESATUAL.VLCUSTOMES ) /
          DECODE( VENDAMESATUAL.VLVENDAMES, 0, 1,VENDAMESATUAL.VLVENDAMES) ) * 100 )  PERCLUCRO
     ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 1
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 1 ) MARGEMATUAL

    ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 4
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 4 ) MARGEMATUAL4


    ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 5
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 5 ) MARGEMATUAL5

    ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 7
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 7 ) MARGEMATUAL7

    ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 8
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 8 ) MARGEMATUAL8

   --FILIAL 9
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_A_VISTA_F9
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_A_VISTA_F9
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_DEBITO_F9
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_DEBITO_F9
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_CREDITO_1X_F9
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_CREDITO_1X_F9
      ,NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) PRECO_CREDITO_10X_F9
      ,(SELECT PCPRECOPROM.DTULTALTER FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ) ALTERACAO_PRECO_CREDITO_10X_F9

--DATA INICIO VIGENCIA
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTINI_PRECO_A_VISTA_F9
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTINI_PRECO_DEBITO_F9
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTINI_PRECO_CREDITO_1X_F9
      ,(SELECT PCPRECOPROM.DTINICIOVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46)
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTINI_PRECO_CREDITO_10X_F9
      --DATA FIM VIGENCIA
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTFIM_PRECO_A_VISTA_F9
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 2
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTFIM_PRECO_DEBITO_F9
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTFIM_PRECO_CREDITO_1X_F9
      ,(SELECT PCPRECOPROM.DTFIMVIGENCIA FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46)
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND PCPRECOPROM.NUMREGIAO   = 4
             AND ROWNUM = 1 ) DTFIM_PRECO_CREDITO_10X_F9


     ,(SELECT CASE WHEN PCTABPR.PVENDA > 0 THEN
          ROUND(( ( PCTABPR.PVENDA - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( PCTABPR.PVENDA * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL(PCTABPR.PVENDA,0) ) * 100,2)
       ELSE 0 END MARGEMATUAL
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 4
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 4 ) MARGEMATUAL_F9
 --FILIAL 9 -FIM


     ,(SELECT MAX(PCMOV.DTMOV) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
            AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV >= TO_DATE('01/01/2019', 'DD/MM/YYYY')  ) DATAULTCOMPRA
     ,(SELECT MAX(PCMOV.PTABELA) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) PRECOULTCOMPRA

     ,( (SELECT MAX(PCMOV.PTABELA) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) +
        (SELECT MAX(PCMOV.VLDESPFORANF) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) ) PRECOULTCOMPRA_CHEIO

      ,(SELECT MAX(PCMOV.VALORULTENT) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VALORULTCOMPRA
      ,(SELECT MAX(PCMOV.VLDESPFORANF) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTCANCEL IS NULL
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VALORDESPFORANF
      ,(SELECT MAX(PCMOV.QT) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) QTDEULTCOPRA
      ,(SELECT MAX(PCMOV.CODFORNEC) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) CODFORNECULTCOMPRA
     ,(SELECT MAX(PCMOV.CODFILIAL) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) CODFILIALULTCOMPRA
     ,(SELECT MAX(PCMOV.VLFRETE) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VLFRETEULTCOMPRA
     ,(SELECT MAX(PCMOV.VLFRETECONHEC) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VLFRETEFOBULTCOMPRA
     ,(SELECT MAX(PCMOV.PERCST) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) PERCSTENTRADA
     ,(SELECT MAX(PCMOV.ST) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VLST
     ,(SELECT MAX(PCMOV.VLDESPADICIONAL) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VLSTGUIA
     ,(SELECT MAX(PCMOV.PERCDESPADICIONAL) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) PERCSTGUIA

      ,( SELECT PCFORNEC.FORNECEDOR FROM PCFORNEC
          WHERE PCFORNEC.CODFORNEC = (SELECT MAX(PCMOV.CODFORNEC) FROM PCMOV
                              WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
                               AND PCMOV.CODOPER = 'E'
                               AND PCMOV.DTCANCEL IS NULL
                               AND NVL(PCMOV.QT,0) > 0
                               AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                                      AND M.CODOPER = 'E'
                                                      AND NVL(M.QT,0) > 0
                                                      AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) ) FORNECEDORULTCOMPRA
      ,(SELECT MAX(PCMOV.PUNIT) FROM PCMOV WHERE PCMOV.CODPROD = PCPRODUT.CODPROD
           AND PCMOV.CODOPER = 'E'
           AND PCMOV.DTCANCEL IS NULL
           AND NVL(PCMOV.QT,0) > 0
           AND PCMOV.DTMOV = ( SELECT MAX(M.DTMOV) FROM PCMOV M WHERE M.CODPROD = PCMOV.CODPROD
                                  AND M.CODOPER = 'E'
                                  AND NVL(M.QT,0) > 0
                                  AND M.DTMOV   >= TO_DATE('01/01/2019', 'DD/MM/YYYY') ) ) VLULTPRECONF
      ,( EST_F1.QTESTGER - NVL(EST_F1.QTRESERV,0) - NVL(EST_F1.QTPENDENTE,0) - GREATEST(NVL(EST_F1.QTBLOQUEADA,0),0) ) QTDISP_F1
      ,( EST_F2.QTESTGER - NVL(EST_F2.QTRESERV,0) - NVL(EST_F2.QTPENDENTE,0) - GREATEST(NVL(EST_F2.QTBLOQUEADA,0),0) ) QTDISP_F2
      ,( EST_F3.QTESTGER - NVL(EST_F3.QTRESERV,0) - NVL(EST_F3.QTPENDENTE,0) - GREATEST(NVL(EST_F3.QTBLOQUEADA,0),0) ) QTDISP_F3
      ,( EST_F4.QTESTGER - NVL(EST_F4.QTRESERV,0) - NVL(EST_F4.QTPENDENTE,0) - GREATEST(NVL(EST_F4.QTBLOQUEADA,0),0) ) QTDISP_F4
      ,( EST_F5.QTESTGER - NVL(EST_F5.QTRESERV,0) - NVL(EST_F5.QTPENDENTE,0) - GREATEST(NVL(EST_F5.QTBLOQUEADA,0),0) ) QTDISP_F5
      ,( EST_F6.QTESTGER - NVL(EST_F6.QTRESERV,0) - NVL(EST_F6.QTPENDENTE,0) - GREATEST(NVL(EST_F6.QTBLOQUEADA,0),0) ) QTDISP_F6
      ,( EST_F8.QTESTGER - NVL(EST_F8.QTRESERV,0) - NVL(EST_F8.QTPENDENTE,0) - GREATEST(NVL(EST_F8.QTBLOQUEADA,0),0) ) QTDISP_F8
      ,( EST_F9.QTESTGER - NVL(EST_F9.QTRESERV,0) - NVL(EST_F9.QTPENDENTE,0) - GREATEST(NVL(EST_F9.QTBLOQUEADA,0),0) ) QTDISP_F9
      ,( EST_F10.QTESTGER - NVL(EST_F10.QTRESERV,0) - NVL(EST_F10.QTPENDENTE,0) - GREATEST(NVL(EST_F10.QTBLOQUEADA,0),0) ) QTDISP_F10
      ,( EST_F11.QTESTGER - NVL(EST_F11.QTRESERV,0) - NVL(EST_F11.QTPENDENTE,0) - GREATEST(NVL(EST_F11.QTBLOQUEADA,0),0) ) QTDISP_F11
      ,( EST_F12.QTESTGER - NVL(EST_F12.QTRESERV,0) - NVL(EST_F12.QTPENDENTE,0) - GREATEST(NVL(EST_F12.QTBLOQUEADA,0),0) ) QTDISP_F12
      ,( EST_F13.QTESTGER - NVL(EST_F13.QTRESERV,0) - NVL(EST_F13.QTPENDENTE,0) - GREATEST(NVL(EST_F13.QTBLOQUEADA,0),0) ) QTDISP_F13
      ,CASE WHEN NVL(PROD_F1.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F1
      ,CASE WHEN NVL(PROD_F2.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F2
      ,CASE WHEN NVL(PROD_F3.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F3
      ,CASE WHEN NVL(PROD_F4.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F4
      ,CASE WHEN NVL(PROD_F5.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F5
      ,CASE WHEN NVL(PROD_F6.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F6
      ,CASE WHEN NVL(PROD_F8.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F8
      ,CASE WHEN NVL(PROD_F9.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F9
      ,CASE WHEN NVL(PROD_F10.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F10
      ,CASE WHEN NVL(PROD_F11.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F11
      ,CASE WHEN NVL(PROD_F12.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F12
      ,CASE WHEN NVL(PROD_F13.FORALINHA,'N') = 'N' THEN 'S' ELSE 'N' END PERTENCE_F13
      ,PCTABPR.PVENDA1
      ,NVL(PCTABPR_CAST.PVENDA1,0) PVENDA1_CAST
      ,NVL(PCTABPR_OUTLET.PVENDA1,0) PVENDA1_OUTLET
      ,PCTABPR.DTULTALTPTABELA
      ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM

       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 1
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 1 ) MARGEM_A_VISTA

      ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 1
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 1 ) MARGEM_CARTAO1X

      ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 1
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 1
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 1 ) MARGEM_CARTAO10X
  --FILIAL 9
    ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 1 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 4
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 4 ) MARGEM_A_VISTA_F9

      ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX = 10 AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 4
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 4 ) MARGEM_CARTAO1X_F9

      ,(SELECT CASE WHEN NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) > 0 THEN
          ROUND(( ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) - ( ESF_CALC_CUSTO_PRECIFICACAO(PCEST.CODFILIAL, PCEST.CODPROD) +
                   ( NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) * ( ( NVL(PCTRIBUT.CODICMTAB,0) + NVL(PCPRODUT.PCOMREP1,0) + NVL(PCCONSUM.TXVENDA,0) /*+ NVL(PCREGIAO.PERFRETETERCEIROS,0)*/ ) / 100 ) ) ) )
                  / NVL((SELECT PCPRECOPROM.PRECOFIXO FROM PCPRECOPROM
          WHERE  PCPRECOPROM.DTFIMVIGENCIA >= TRUNC(SYSDATE) --BETWEEN PCPRECOPROM.DTINICIOVIGENCIA AND PCPRECOPROM.DTFIMVIGENCIA
             AND PCPRECOPROM.CODPLPAGMAX IN (42,46) AND PCPRECOPROM.NUMREGIAO = 4
             AND PCPRECOPROM.CODPROD     = PCPRODUT.CODPROD
             AND ROWNUM = 1 ),0) ) * 100,2) ELSE 0 END MARGEM_A_VISTA
        FROM PCTABPR, PCREGIAO, PCTABTRIB, PCTRIBUT, PCCONSUM
       WHERE PCTABPR.CODPROD = PCPRODUT.CODPROD
         AND PCREGIAO.NUMREGIAO      = 4
         AND PCREGIAO.UF             = PCTABTRIB.UFDESTINO
         AND PCEST.CODFILIAL         = PCTABTRIB.CODFILIALNF
         AND PCEST.CODPROD           = PCTABTRIB.CODPROD
         AND PCTABTRIB.CODST         = PCTRIBUT.CODST
         AND PCTABPR.NUMREGIAO = 4 ) MARGEM_CARTAO10X_F9
  --FILIAL 9 - FIM

   --CLASSE PRODUTO
     ,ABC_GERAL_RETIRA.CLASSEESTOQUE      CLASSEESTOQUE_RETIRA
     ,ABC_GERAL_RETIRA.CLASSEESTOQUEDEPTO CLASSEESTOQUEDEPTO_RETIRA
     ,ABC_GERAL_RETIRA.CLASSEVENDA        CLASSEVENDA_RETIRA

     ,ABC_GERAL_VENDA.CLASSEESTOQUE       CLASSEESTOQUE_VENDA
     ,ABC_GERAL_VENDA.CLASSEVENDA         CLASSEVENDA_VENDA
     ,ABC_GERAL_VENDA.CLASSEVENDADEPTO    CLASSEVENDADEPTO_VENDA

     ,ABC_F1_VENDA.CLASSEVENDA       CLASSEVENDA_F1
     ,ABC_F1_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F1
     ,ABC_F2_VENDA.CLASSEVENDA       CLASSEVENDA_F2
     ,ABC_F2_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F2
     ,ABC_F3_VENDA.CLASSEVENDA       CLASSEVENDA_F3
     ,ABC_F3_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F3
     ,ABC_F4_VENDA.CLASSEVENDA       CLASSEVENDA_F4
     ,ABC_F4_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F4
     ,ABC_F5_VENDA.CLASSEVENDA       CLASSEVENDA_F5
     ,ABC_F5_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F5
     ,ABC_F6_VENDA.CLASSEVENDA       CLASSEVENDA_F6
     ,ABC_F6_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F6
     ,ABC_F8_VENDA.CLASSEVENDA       CLASSEVENDA_F8
     ,ABC_F8_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F8
     ,ABC_F9_VENDA.CLASSEVENDA       CLASSEVENDA_F9
     ,ABC_F9_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F9
     ,ABC_F10_VENDA.CLASSEVENDA      CLASSEVENDA_F10
     ,ABC_F10_RETIRA.CLASSEESTOQUE   CLASSEESTOQUE_F10
     ,ABC_F11_VENDA.CLASSEVENDA       CLASSEVENDA_F11
     ,ABC_F11_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F11
     ,ABC_F12_VENDA.CLASSEVENDA       CLASSEVENDA_F12
     ,ABC_F12_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F12
     ,ABC_F13_VENDA.CLASSEVENDA       CLASSEVENDA_F13
     ,ABC_F13_RETIRA.CLASSEESTOQUE    CLASSEESTOQUE_F13
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 1 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F1
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 2 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F2
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 3 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F3
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 4 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F4
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 5 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F5
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 6 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F6
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 8 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F8
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 9 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F9
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 10 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F10
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 11 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F11
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 12 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F12
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 13 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F13
     ,( SELECT S.FREQUENCIA FROM ESTSYSTOCKPRODUTO S WHERE S.CODFILIAL = 49 AND S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F49
     ,( SELECT SUM(S.FREQUENCIA) FROM ESTSYSTOCKPRODUTO S WHERE S.CODPROD = PCPRODUT.CODPROD ) FREQUENCIA_F99

     ,EST_F1.QTEXPOSICAO EXPOSICAO_F1
     ,EST_F2.QTEXPOSICAO EXPOSICAO_F2
     ,EST_F3.QTEXPOSICAO EXPOSICAO_F3
     ,EST_F4.QTEXPOSICAO EXPOSICAO_F4
     ,EST_F5.QTEXPOSICAO EXPOSICAO_F5
     ,EST_F6.QTEXPOSICAO EXPOSICAO_F6
     ,EST_F8.QTEXPOSICAO EXPOSICAO_F8
     ,EST_F9.QTEXPOSICAO EXPOSICAO_F9
     ,EST_F10.QTEXPOSICAO EXPOSICAO_F10
     ,EST_F11.QTEXPOSICAO EXPOSICAO_F11
     ,EST_F12.QTEXPOSICAO EXPOSICAO_F12
     ,EST_F13.QTEXPOSICAO EXPOSICAO_F13
     ,EST_F99.QTEXPOSICAO EXPOSICAO_F99

  --//COLUNAS PARA EXCEL
  --//FILIAL 1
     ,PROD_F1.ESTOQUEIDEAL DIAS_EST_IDEAL_F1
     ,PROD_F1.ESTIDEAL     ESTOQUE_IDEAL_M_F1
     ,EST_F1.QTESTGER      QTESTGER_F1
     ,( GREATEST(EST_F1.QTBLOQUEADA,0) -
        NVL(BLOQ_MANUAL_F1.QTBLOQMANUAL,0) ) QTBLOQUEADA_F1
     ,( NVL(BLOQ_MANUAL_F1.QTBLOQMANUAL,0) -
        NVL(EST_F1.QTEXPOSICAO,0) ) QTBLOQMANUAL_F1
     ,EST_F1.QTINDENIZ     QTINDENIZ_F1
     ,EST_F1.QTPENDENTE    QTPENDENTE_F1
     ,EST_F1.QTRESERV      QTRESERV_F1
     ,( EST_F1.QTESTGER - GREATEST(NVL(EST_F1.QTBLOQUEADA,0),0) - NVL(EST_F1.QTPENDENTE,0) - NVL(EST_F1.QTRESERV,0) ) QTEST_DISP_F1
     ,GIRO_F1.ESTOQUEIDEAL ESTOQUE_IDEAL_F1
     ,PEDIDOSLIBERADOS_F1.QTPEDIDA      QTPEDIDA_F1
     ,PEDIDOS_EM_TRANSITO_F1.QT         QTTRANSITO_F1
     ,CASE WHEN NVL(GIRO_F1.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F1.QTESTGER,0) - NVL(EST_F1.QTINDENIZ,0) -
          NVL(EST_F1.QTPENDENTE,0) - NVL(EST_F1.QTRESERV,0) ) / NVL(GIRO_F1.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F1
     ,( GIRO_F1.QTGIRODIA * 30 ) GIRO_15DIAS_F1

  --//FILIAL 2
     ,PROD_F2.ESTOQUEIDEAL DIAS_EST_IDEAL_F2
     ,PROD_F2.ESTIDEAL     ESTOQUE_IDEAL_M_F2
     ,EST_F2.QTESTGER      QTESTGER_F2
     ,( EST_F2.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F2.QTBLOQMANUAL,0) ) QTBLOQUEADA_F2
     ,( NVL(BLOQ_MANUAL_F2.QTBLOQMANUAL,0) -
        NVL(EST_F2.QTEXPOSICAO,0) )  QTBLOQMANUAL_F2
     ,EST_F2.QTINDENIZ     QTINDENIZ_F2
     ,EST_F2.QTPENDENTE    QTPENDENTE_F2
     ,EST_F2.QTRESERV      QTRESERV_F2
     ,PEDIDOSLIBERADOS_F2.QTPEDIDA      QTPEDIDA_F2
     ,( EST_F2.QTESTGER - NVL(EST_F2.QTBLOQUEADA,0) - NVL(EST_F2.QTPENDENTE,0) - NVL(EST_F2.QTRESERV,0) ) QTEST_DISP_F2
     ,GIRO_F2.ESTOQUEIDEAL ESTOQUE_IDEAL_F2
     ,PEDIDOS_EM_TRANSITO_F2.QT         QTTRANSITO_F2
     ,CASE WHEN NVL(GIRO_F2.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F2.QTESTGER,0) - NVL(EST_F2.QTINDENIZ,0) -
          NVL(EST_F2.QTPENDENTE,0) - NVL(EST_F2.QTRESERV,0) ) / NVL(GIRO_F2.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F2
     ,( GIRO_F2.QTGIRODIA * 30 ) GIRO_15DIAS_F2


  --//FILIAL 3
     ,PROD_F3.ESTOQUEIDEAL DIAS_EST_IDEAL_F3
     ,PROD_F3.ESTIDEAL     ESTOQUE_IDEAL_M_F3
     ,EST_F3.QTESTGER      QTESTGER_F3
     ,( EST_F3.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F3.QTBLOQMANUAL,0) ) QTBLOQUEADA_F3
     ,( NVL(BLOQ_MANUAL_F3.QTBLOQMANUAL,0) -
        NVL(EST_F3.QTEXPOSICAO,0) )  QTBLOQMANUAL_F3
     ,EST_F3.QTINDENIZ     QTINDENIZ_F3
     ,EST_F3.QTPENDENTE    QTPENDENTE_F3
     ,EST_F3.QTRESERV      QTRESERV_F3
     ,PEDIDOSLIBERADOS_F3.QTPEDIDA      QTPEDIDA_F3
     ,( EST_F3.QTESTGER - NVL(EST_F3.QTBLOQUEADA,0) - NVL(EST_F3.QTPENDENTE,0) - NVL(EST_F3.QTRESERV,0) ) QTEST_DISP_F3
     ,GIRO_F3.ESTOQUEIDEAL ESTOQUE_IDEAL_F3
     ,PEDIDOS_EM_TRANSITO_F3.QT         QTTRANSITO_F3
     ,CASE WHEN NVL(GIRO_F3.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F3.QTESTGER,0) - NVL(EST_F3.QTINDENIZ,0) -
          NVL(EST_F3.QTPENDENTE,0) - NVL(EST_F3.QTRESERV,0) ) / NVL(GIRO_F3.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F3
     ,( GIRO_F3.QTGIRODIA * 30 ) GIRO_15DIAS_F3


  --//FILIAL 4
     ,PROD_F4.ESTOQUEIDEAL DIAS_EST_IDEAL_F4
     ,PROD_F4.ESTIDEAL     ESTOQUE_IDEAL_M_F4
     ,EST_F4.QTESTGER      QTESTGER_F4
     ,( EST_F4.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F4.QTBLOQMANUAL,0) ) QTBLOQUEADA_F4
     ,( NVL(BLOQ_MANUAL_F4.QTBLOQMANUAL,0) -
        NVL(EST_F4.QTEXPOSICAO,0) )  QTBLOQMANUAL_F4
     ,EST_F4.QTINDENIZ     QTINDENIZ_F4
     ,EST_F4.QTPENDENTE    QTPENDENTE_F4
     ,EST_F4.QTRESERV      QTRESERV_F4
     ,PEDIDOSLIBERADOS_F4.QTPEDIDA      QTPEDIDA_F4
     ,( EST_F4.QTESTGER - NVL(EST_F4.QTBLOQUEADA,0) - NVL(EST_F4.QTPENDENTE,0) - NVL(EST_F4.QTRESERV,0) ) QTEST_DISP_F4
     ,GIRO_F4.ESTOQUEIDEAL ESTOQUE_IDEAL_F4
     ,PEDIDOS_EM_TRANSITO_F4.QT         QTTRANSITO_F4
     ,CASE WHEN NVL(GIRO_F4.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F4.QTESTGER,0) - NVL(EST_F4.QTINDENIZ,0) -
          NVL(EST_F4.QTPENDENTE,0) - NVL(EST_F4.QTRESERV,0) ) / NVL(GIRO_F4.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F4
     ,( GIRO_F4.QTGIRODIA * 30 ) GIRO_15DIAS_F4


  --//FILIAL 5
     ,PROD_F5.ESTOQUEIDEAL DIAS_EST_IDEAL_F5
     ,PROD_F5.ESTIDEAL     ESTOQUE_IDEAL_M_F5
     ,EST_F5.QTESTGER      QTESTGER_F5
     ,( EST_F5.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F5.QTBLOQMANUAL,0) ) QTBLOQUEADA_F5
     ,( NVL(BLOQ_MANUAL_F5.QTBLOQMANUAL,0) -
        NVL(EST_F5.QTEXPOSICAO,0) )  QTBLOQMANUAL_F5
     ,EST_F5.QTINDENIZ     QTINDENIZ_F5
     ,EST_F5.QTPENDENTE    QTPENDENTE_F5
     ,EST_F5.QTRESERV      QTRESERV_F5
     ,PEDIDOSLIBERADOS_F5.QTPEDIDA      QTPEDIDA_F5
     ,( EST_F5.QTESTGER - NVL(EST_F5.QTBLOQUEADA,0) - NVL(EST_F5.QTPENDENTE,0) - NVL(EST_F5.QTRESERV,0) ) QTEST_DISP_F5
     ,GIRO_F5.ESTOQUEIDEAL ESTOQUE_IDEAL_F5
     ,PEDIDOS_EM_TRANSITO_F5.QT         QTTRANSITO_F5
     ,CASE WHEN NVL(GIRO_F5.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F5.QTESTGER,0) - NVL(EST_F5.QTINDENIZ,0) -
          NVL(EST_F5.QTPENDENTE,0) - NVL(EST_F5.QTRESERV,0) ) / NVL(GIRO_F5.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F5
     ,( GIRO_F5.QTGIRODIA * 30 ) GIRO_15DIAS_F5


  --//FILIAL 6
     ,PROD_F6.ESTOQUEIDEAL DIAS_EST_IDEAL_F6
     ,PROD_F6.ESTIDEAL     ESTOQUE_IDEAL_M_F6
     ,EST_F6.QTESTGER      QTESTGER_F6
     ,( EST_F6.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F6.QTBLOQMANUAL,0) ) QTBLOQUEADA_F6
     ,( NVL(BLOQ_MANUAL_F6.QTBLOQMANUAL,0) -
        NVL(EST_F6.QTEXPOSICAO,0) )  QTBLOQMANUAL_F6

     ,EST_F6.QTINDENIZ     QTINDENIZ_F6
     ,EST_F6.QTPENDENTE    QTPENDENTE_F6
     ,EST_F6.QTRESERV      QTRESERV_F6
     ,PEDIDOSLIBERADOS_F6.QTPEDIDA      QTPEDIDA_F6
     ,( EST_F6.QTESTGER - NVL(EST_F6.QTBLOQUEADA,0) - NVL(EST_F6.QTPENDENTE,0) - NVL(EST_F6.QTRESERV,0) ) QTEST_DISP_F6
     ,GIRO_F6.ESTOQUEIDEAL ESTOQUE_IDEAL_F6
     ,PEDIDOS_EM_TRANSITO_F6.QT         QTTRANSITO_F6
     ,CASE WHEN NVL(GIRO_F6.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F6.QTESTGER,0) - NVL(EST_F6.QTINDENIZ,0) -
          NVL(EST_F6.QTPENDENTE,0) - NVL(EST_F6.QTRESERV,0) ) / NVL(GIRO_F6.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F6
     ,( GIRO_F6.QTGIRODIA * 30 ) GIRO_15DIAS_F6


  --//FILIAL 8
     ,PROD_F8.ESTOQUEIDEAL DIAS_EST_IDEAL_F8
     ,PROD_F8.ESTIDEAL     ESTOQUE_IDEAL_M_F8
     ,EST_F8.QTESTGER      QTESTGER_F8
     ,( EST_F8.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F8.QTBLOQMANUAL,0) ) QTBLOQUEADA_F8
     ,( NVL(BLOQ_MANUAL_F8.QTBLOQMANUAL,0) -
        NVL(EST_F8.QTEXPOSICAO,0) )  QTBLOQMANUAL_F8
     ,EST_F8.QTINDENIZ     QTINDENIZ_F8
     ,EST_F8.QTPENDENTE    QTPENDENTE_F8
     ,EST_F8.QTRESERV      QTRESERV_F8
     ,PEDIDOSLIBERADOS_F8.QTPEDIDA      QTPEDIDA_F8
     ,( EST_F8.QTESTGER - NVL(EST_F8.QTBLOQUEADA,0) - NVL(EST_F8.QTPENDENTE,0) - NVL(EST_F8.QTRESERV,0) ) QTEST_DISP_F8
     ,GIRO_F8.ESTOQUEIDEAL ESTOQUE_IDEAL_F8
     ,PEDIDOS_EM_TRANSITO_F8.QT         QTTRANSITO_F8
     ,CASE WHEN NVL(GIRO_F8.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F8.QTESTGER,0) - NVL(EST_F8.QTINDENIZ,0) -
          NVL(EST_F8.QTPENDENTE,0) - NVL(EST_F8.QTRESERV,0) ) / NVL(GIRO_F8.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F8
     ,( GIRO_F8.QTGIRODIA * 30 ) GIRO_15DIAS_F8

  --//FILIAL 9
     ,PROD_F9.ESTOQUEIDEAL DIAS_EST_IDEAL_F9
     ,PROD_F9.ESTIDEAL     ESTOQUE_IDEAL_M_F9
     ,EST_F9.QTESTGER      QTESTGER_F9
     ,( EST_F9.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F9.QTBLOQMANUAL,0) ) QTBLOQUEADA_F9
     ,( NVL(BLOQ_MANUAL_F9.QTBLOQMANUAL,0) -
        NVL(EST_F9.QTEXPOSICAO,0) )  QTBLOQMANUAL_F9
     ,EST_F9.QTINDENIZ     QTINDENIZ_F9
     ,EST_F9.QTPENDENTE    QTPENDENTE_F9
     ,EST_F9.QTRESERV      QTRESERV_F9
     ,PEDIDOSLIBERADOS_F9.QTPEDIDA      QTPEDIDA_F9
     ,( EST_F9.QTESTGER - NVL(EST_F9.QTBLOQUEADA,0) - NVL(EST_F9.QTPENDENTE,0) - NVL(EST_F9.QTRESERV,0) ) QTEST_DISP_F9
     ,GIRO_F9.ESTOQUEIDEAL ESTOQUE_IDEAL_F9
     ,PEDIDOS_EM_TRANSITO_F9.QT         QTTRANSITO_F9
     ,CASE WHEN NVL(GIRO_F9.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F9.QTESTGER,0) - NVL(EST_F9.QTINDENIZ,0) -
          NVL(EST_F9.QTPENDENTE,0) - NVL(EST_F9.QTRESERV,0) ) / NVL(GIRO_F9.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F9
     ,( GIRO_F9.QTGIRODIA * 30 ) GIRO_15DIAS_F9


  --//FILIAL 10
     ,PROD_F10.ESTOQUEIDEAL DIAS_EST_IDEAL_F10
     ,PROD_F10.ESTIDEAL     ESTOQUE_IDEAL_M_F10
     ,EST_F10.QTESTGER      QTESTGER_F10
     ,( EST_F10.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F10.QTBLOQMANUAL,0) ) QTBLOQUEADA_F10
     ,( NVL(BLOQ_MANUAL_F10.QTBLOQMANUAL,0) -
        NVL(EST_F10.QTEXPOSICAO,0) )  QTBLOQMANUAL_F10
     ,EST_F10.QTINDENIZ     QTINDENIZ_F10
     ,EST_F10.QTPENDENTE    QTPENDENTE_F10
     ,EST_F10.QTRESERV      QTRESERV_F10
     ,PEDIDOSLIBERADOS_F10.QTPEDIDA      QTPEDIDA_F10
     ,( EST_F10.QTESTGER - NVL(EST_F10.QTBLOQUEADA,0) - NVL(EST_F10.QTPENDENTE,0) - NVL(EST_F10.QTRESERV,0) ) QTEST_DISP_F10
     ,GIRO_F10.ESTOQUEIDEAL ESTOQUE_IDEAL_F10
     ,PEDIDOS_EM_TRANSITO_F10.QT         QTTRANSITO_F10
     ,CASE WHEN NVL(GIRO_F10.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F10.QTESTGER,0) - NVL(EST_F10.QTINDENIZ,0) -
          NVL(EST_F10.QTPENDENTE,0) - NVL(EST_F10.QTRESERV,0) ) / NVL(GIRO_F10.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F10
     ,( GIRO_F10.QTGIRODIA * 30 ) GIRO_15DIAS_F10


  --//FILIAL 11
     ,PROD_F11.ESTOQUEIDEAL DIAS_EST_IDEAL_F11
     ,PROD_F11.ESTIDEAL     ESTOQUE_IDEAL_M_F11
     ,EST_F11.QTESTGER      QTESTGER_F11
     ,( EST_F11.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F11.QTBLOQMANUAL,0) ) QTBLOQUEADA_F11
     ,( NVL(BLOQ_MANUAL_F11.QTBLOQMANUAL,0) -
        NVL(EST_F11.QTEXPOSICAO,0) )  QTBLOQMANUAL_F11
     ,EST_F11.QTINDENIZ     QTINDENIZ_F11
     ,EST_F11.QTPENDENTE    QTPENDENTE_F11
     ,EST_F11.QTRESERV      QTRESERV_F11
     ,PEDIDOSLIBERADOS_F11.QTPEDIDA      QTPEDIDA_F11
     ,( EST_F11.QTESTGER - NVL(EST_F11.QTBLOQUEADA,0) - NVL(EST_F11.QTPENDENTE,0) - NVL(EST_F11.QTRESERV,0) ) QTEST_DISP_F11
     ,GIRO_F11.ESTOQUEIDEAL ESTOQUE_IDEAL_F11
     ,PEDIDOS_EM_TRANSITO_F11.QT         QTTRANSITO_F11
     ,CASE WHEN NVL(GIRO_F11.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F11.QTESTGER,0) - NVL(EST_F11.QTINDENIZ,0) -
          NVL(EST_F11.QTPENDENTE,0) - NVL(EST_F11.QTRESERV,0) ) / NVL(GIRO_F11.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F11
     ,( GIRO_F11.QTGIRODIA * 30 ) GIRO_15DIAS_F11


  --//FILIAL 12
     ,PROD_F12.ESTOQUEIDEAL DIAS_EST_IDEAL_F12
     ,PROD_F12.ESTIDEAL     ESTOQUE_IDEAL_M_F12
     ,EST_F12.QTESTGER      QTESTGER_F12
     ,( EST_F12.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F12.QTBLOQMANUAL,0) ) QTBLOQUEADA_F12
     ,( NVL(BLOQ_MANUAL_F12.QTBLOQMANUAL,0) -
        NVL(EST_F12.QTEXPOSICAO,0) )  QTBLOQMANUAL_F12
     ,EST_F12.QTINDENIZ     QTINDENIZ_F12
     ,EST_F12.QTPENDENTE    QTPENDENTE_F12
     ,EST_F12.QTRESERV      QTRESERV_F12
     ,PEDIDOSLIBERADOS_F12.QTPEDIDA      QTPEDIDA_F12
     ,( EST_F12.QTESTGER - NVL(EST_F12.QTBLOQUEADA,0) - NVL(EST_F12.QTPENDENTE,0) - NVL(EST_F12.QTRESERV,0) ) QTEST_DISP_F12
     ,GIRO_F12.ESTOQUEIDEAL ESTOQUE_IDEAL_F12
     ,PEDIDOS_EM_TRANSITO_F12.QT         QTTRANSITO_F12
     ,CASE WHEN NVL(GIRO_F12.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F12.QTESTGER,0) - NVL(EST_F12.QTINDENIZ,0) -
          NVL(EST_F12.QTPENDENTE,0) - NVL(EST_F12.QTRESERV,0) ) / NVL(GIRO_F12.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F12
     ,( GIRO_F12.QTGIRODIA * 30 ) GIRO_15DIAS_F12

  --//FILIAL 13
     ,PROD_F13.ESTOQUEIDEAL DIAS_EST_IDEAL_F13
     ,PROD_F13.ESTIDEAL     ESTOQUE_IDEAL_M_F13
     ,EST_F13.QTESTGER      QTESTGER_F13
     ,( GREATEST(EST_F13.QTBLOQUEADA,0) -
        NVL(BLOQ_MANUAL_F13.QTBLOQMANUAL,0) ) QTBLOQUEADA_F13
     ,( NVL(BLOQ_MANUAL_F13.QTBLOQMANUAL,0) -
        NVL(EST_F13.QTEXPOSICAO,0) )  QTBLOQMANUAL_F13
     ,EST_F13.QTINDENIZ     QTINDENIZ_F13
     ,EST_F13.QTPENDENTE    QTPENDENTE_F13
     ,EST_F13.QTRESERV      QTRESERV_F13
     ,PEDIDOSLIBERADOS_F13.QTPEDIDA      QTPEDIDA_F13
     ,( EST_F13.QTESTGER - GREATEST(NVL(EST_F13.QTBLOQUEADA,0),0) - NVL(EST_F13.QTPENDENTE,0) - NVL(EST_F13.QTRESERV,0) ) QTEST_DISP_F13
     ,GIRO_F13.ESTOQUEIDEAL ESTOQUE_IDEAL_F13
     ,PEDIDOS_EM_TRANSITO_F13.QT         QTTRANSITO_F13
     ,CASE WHEN NVL(GIRO_F13.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F13.QTESTGER,0) - NVL(EST_F13.QTINDENIZ,0) -
          NVL(EST_F13.QTPENDENTE,0) - NVL(EST_F13.QTRESERV,0) ) / NVL(GIRO_F13.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F13
     ,( GIRO_F13.QTGIRODIA * 30 ) GIRO_15DIAS_F13


     --//FILIAL 49
     ,PROD_F49.ESTOQUEIDEAL DIAS_EST_IDEAL_F49
     ,PROD_F49.ESTIDEAL     ESTOQUE_IDEAL_M_F49
     ,EST_F49.QTESTGER      QTESTGER_F49
     ,( EST_F49.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F49.QTBLOQMANUAL,0) ) QTBLOQUEADA_F49
     ,( NVL(BLOQ_MANUAL_F49.QTBLOQMANUAL,0) -
        NVL(EST_F49.QTEXPOSICAO,0) )  QTBLOQMANUAL_F49
     ,EST_F49.QTINDENIZ     QTINDENIZ_F49
     ,EST_F49.QTPENDENTE    QTPENDENTE_F49
     ,EST_F49.QTRESERV      QTRESERV_F49
     ,PEDIDOSLIBERADOS_F49.QTPEDIDA      QTPEDIDA_F49
     ,( EST_F49.QTESTGER - NVL(EST_F49.QTBLOQUEADA,0) - NVL(EST_F49.QTPENDENTE,0) - NVL(EST_F49.QTRESERV,0) ) QTEST_DISP_F49
     ,GIRO_F49.ESTOQUEIDEAL ESTOQUE_IDEAL_F49
     ,PEDIDOS_EM_TRANSITO_F49.QT         QTTRANSITO_F49
     ,CASE WHEN NVL(GIRO_F49.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F49.QTESTGER,0) - NVL(EST_F49.QTINDENIZ,0) -
          NVL(EST_F49.QTPENDENTE,0) - NVL(EST_F49.QTRESERV,0) ) / NVL(GIRO_F49.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F49
     ,( GIRO_F49.QTGIRODIA * 30 ) GIRO_15DIAS_F49


  --//FILIAL 99
     ,EST_F99.QTESTGER      QTESTGER_F99
     ,( EST_F99.QTBLOQUEADA -
        NVL(BLOQ_MANUAL_F99.QTBLOQMANUAL,0) ) QTBLOQUEADA_F99
     ,( NVL(BLOQ_MANUAL_F99.QTBLOQMANUAL,0) -
        NVL(EST_F99.QTEXPOSICAO,0) )  QTBLOQMANUAL_F99
     ,EST_F99.QTINDENIZ     QTINDENIZ_F99
     ,EST_F99.QTPENDENTE    QTPENDENTE_F99
     ,EST_F99.QTRESERV      QTRESERV_F99
     ,PEDIDOSLIBERADOS_F99.QTPEDIDA      QTPEDIDA_F99
     ,( NVL(EST_F99.QTESTGER,0) - NVL(EST_F99.QTBLOQUEADA,0) - NVL(EST_F99.QTPENDENTE,0) - NVL(EST_F99.QTRESERV,0) ) QTEST_DISP_F99
     ,GIRO_F99.ESTOQUEIDEAL ESTOQUE_IDEAL_F99
     ,PEDIDOS_EM_TRANSITO_F99.QT         QTTRANSITO_F99
     ,CASE WHEN NVL(GIRO_F99.QTGIRODIA,0) > 0 THEN
        ( ( NVL(EST_F99.QTESTGER,0) - NVL(EST_F99.QTINDENIZ,0) -
          NVL(EST_F99.QTPENDENTE,0) - NVL(EST_F99.QTRESERV,0) ) / NVL(GIRO_F99.QTGIRODIA,0) )
      ELSE 0 END DIASESTOQUE_F99
     ,( GIRO_F99.QTGIRODIA * 30 ) GIRO_15DIAS_F99
     ,PROD_F99.ESTIDEAL ESTOQUE_IDEAL_M_F99

  --//VENDAS F1
    ,VENDAMES_F1.VLVENDAMES  VLVENDAMES_F1
    ,VENDAMES_F1.QTGIROMES   QTGIROMES_F1
  --//VENDAS F1
    ,VENDAMES_F2.VLVENDAMES  VLVENDAMES_F2
    ,VENDAMES_F2.QTGIROMES   QTGIROMES_F2
  --//VENDAS F1
    ,VENDAMES_F3.VLVENDAMES  VLVENDAMES_F3
    ,VENDAMES_F3.QTGIROMES   QTGIROMES_F3
  --//VENDAS F1
    ,VENDAMES_F4.VLVENDAMES  VLVENDAMES_F4
    ,VENDAMES_F4.QTGIROMES   QTGIROMES_F4
  --//VENDAS F1
    ,VENDAMES_F5.VLVENDAMES  VLVENDAMES_F5
    ,VENDAMES_F5.QTGIROMES   QTGIROMES_F5
  --//VENDAS F1
    ,VENDAMES_F6.VLVENDAMES  VLVENDAMES_F6
    ,VENDAMES_F6.QTGIROMES   QTGIROMES_F6
  --//VENDAS F1
    ,VENDAMES_F7.VLVENDAMES  VLVENDAMES_F7
    ,VENDAMES_F7.QTGIROMES   QTGIROMES_F7
  --//VENDAS F1
    ,VENDAMES_F8.VLVENDAMES  VLVENDAMES_F8
    ,VENDAMES_F8.QTGIROMES   QTGIROMES_F8
  --//VENDAS F9
    ,VENDAMES_F9.VLVENDAMES  VLVENDAMES_F9
    ,VENDAMES_F9.QTGIROMES   QTGIROMES_F9
  --//VENDAS F9
    ,VENDAMES_F49.VLVENDAMES  VLVENDAMES_F49
    ,VENDAMES_F49.QTGIROMES   QTGIROMES_F49
  --//VENDAS F10
    ,VENDAMES_F10.VLVENDAMES  VLVENDAMES_F10
    ,VENDAMES_F10.QTGIROMES   QTGIROMES_F10
  --//VENDAS F11
    ,VENDAMES_F11.VLVENDAMES  VLVENDAMES_F11
    ,VENDAMES_F11.QTGIROMES   QTGIROMES_F11
  --//VENDAS F12
    ,VENDAMES_F12.VLVENDAMES  VLVENDAMES_F12
    ,VENDAMES_F12.QTGIROMES   QTGIROMES_F12
  --//VENDAS F13
    ,VENDAMES_F13.VLVENDAMES  VLVENDAMES_F13
    ,VENDAMES_F13.QTGIROMES   QTGIROMES_F13

  --//VENDAS F99
    ,VENDAMES_F99.VLVENDAMES  VLVENDAMES_F99
    ,VENDAMES_F99.QTGIROMES   QTGIROMES_F99

  --//VENDAS 12 MESES + MES ATUAL - GERAL
   ,DDE_ANUAL.GIRODIA       GIRODIAANUAL_F99
   ,DDE_ANUAL.VLVENDAANUAL  VLVENDAANUAL_F99
   ,DDE_ANUAL.QTVENDAANUAL  QTVENDAANUAL_F99
   ,DDE_ANUAL.DDE           DDEANUAL_F99

  --//VENDAS TRIMESTRE + MES ATUAL - GERAL
   ,DDE_TRIMESTRE.GIRODIA           GIRODIATRIMESTRE_F99
   ,DDE_TRIMESTRE.VLVENDATRIMESTRE  VLVENDATRIMESTRE_F99
   ,DDE_TRIMESTRE.QTVENDATRIMESTRE  QTVENDATRIMESTRE_F99
   ,DDE_TRIMESTRE.DDE               DDETRIMESTRE_F99

   ,PREENT.QT QT_PREENT


  FROM PCPRODUT, PCEST, PCDEPTO, PCSECAO, PCCATEGORIA, PCSUBCATEGORIA, PCFORNEC, PCMARCA, PCTABPR, PCTABPR PCTABPR_CAST,
       PCTABPR PCTABPR_OUTLET, PCTRIBENTRADA, PCTRIBFIGURA, PCTABTRIB, PCTRIBUT, PCEMPR COMPRADOR, ESTPRODUCTECOMMERCE,
       ( SELECT ESTPRODUCTECOMMERCE_ID.ID, ESTPRODUCTECOMMERCE_ID.CODPROD FROM ESTPRODUCTECOMMERCE_ID
          WHERE ESTPRODUCTECOMMERCE_ID.TIPO    = 'PRODUTO'
            AND ESTPRODUCTECOMMERCE_ID.ECOMMERCE = 'VTEX' ) PROD_ECOMMERCE,
       ( SELECT CODPROD, SUM(VLVENDAMES) VLVENDAMES, SUM(QTVENDAMES) QTVENDAMES, SUM(VLCUSTOMES) VLCUSTOMES
           FROM ESVVENDAMES
          GROUP BY CODPROD ) VENDAMESATUAL,
       ( SELECT VENDA12MESES.CODPRODUTO,
                SUM(VENDA12MESES.VLVENDAMES1) VLVENDAMES1,
                SUM(VENDA12MESES.VLVENDAMES2) VLVENDAMES2,
                SUM(VENDA12MESES.VLVENDAMES3) VLVENDAMES3,
                SUM(VENDA12MESES.VLCUSTOFINMES1) VLCUSTOFINMES1,
                SUM(VENDA12MESES.VLCUSTOFINMES2) VLCUSTOFINMES2,
                SUM(VENDA12MESES.VLCUSTOFINMES3) VLCUSTOFINMES3,
                SUM(VENDA12MESES.QTVENDAMES1) QTVENDAMES1,
                SUM(VENDA12MESES.QTVENDAMES2) QTVENDAMES2,
                SUM(VENDA12MESES.QTVENDAMES3) QTVENDAMES3
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES
          GROUP BY VENDA12MESES.CODPRODUTO ) VENDAMESANT,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '1'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F1,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '2'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F2,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '3'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F3,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '4'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F4,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '5'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F5,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '6'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F6,

       ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '7'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F7,

        ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '8'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F8,

      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '9'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F9,

      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '10'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F10,

      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '11'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F11,


      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '12'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F12,

      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '13'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F13,


      ( SELECT VENDA12MESES.CODPRODUTO,
                ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                  NVL(VENDA12MESES.VLVENDAMES1,0) +
                  NVL(VENDA12MESES.VLVENDAMES2,0) +
                  NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                ( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL = '49'
            AND VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+) ) VENDAMES_F49,
        ( SELECT VENDA12MESES.CODPRODUTO,
                 SUM( NVL(ESVVENDAMES.VLVENDAMES,0) +
                      NVL(VENDA12MESES.VLVENDAMES1,0) +
                      NVL(VENDA12MESES.VLVENDAMES2,0) +
                      NVL(VENDA12MESES.VLVENDAMES3,0) ) VLVENDAMES,
                 SUM( NVL(ESVVENDAMES.QTVENDAMES,0) +
                      NVL(VENDA12MESES.QTVENDAMES1,0) +
                      NVL(VENDA12MESES.QTVENDAMES2,0) +
                      NVL(VENDA12MESES.QTVENDAMES3,0)) QTGIROMES
           FROM ESVVENDAPRODUTO12MESES VENDA12MESES, ESVVENDAMES
          WHERE VENDA12MESES.CODFILIAL    = ESVVENDAMES.CODFILIAL (+)
            AND VENDA12MESES.CODPRODUTO   = ESVVENDAMES.CODPROD (+)
          GROUP BY VENDA12MESES.CODPRODUTO ) VENDAMES_F99,
       PCEST EST_F1,
       PCEST EST_F2,
       PCEST EST_F3,
       PCEST EST_F4,
       PCEST EST_F5,
       PCEST EST_F6,
       PCEST EST_F8,
       PCEST EST_F9,
       PCEST EST_F10,
       PCEST EST_F11,
       PCEST EST_F12,
       PCEST EST_F13,
       PCEST EST_F49,
       ( SELECT PCEST.CODPROD, SUM(NVL(PCEST.QTESTGER,0)) QTESTGER, SUM(NVL(PCEST.QTRESERV,0)) QTRESERV,
                SUM(NVL(PCEST.QTPENDENTE,0)) QTPENDENTE, SUM(NVL(PCEST.QTBLOQUEADA,0)) QTBLOQUEADA,
                SUM(NVL(PCEST.QTINDENIZ,0)) QTINDENIZ, SUM(NVL(PCEST.QTPEDIDA,0)),
                SUM(NVL(PCEST.QTEXPOSICAO,0)) QTEXPOSICAO
          FROM PCEST
         GROUP BY PCEST.CODPROD  ) EST_F99,
       PCPRODFILIAL PROD_F1,
       PCPRODFILIAL PROD_F2,
       PCPRODFILIAL PROD_F3,
       PCPRODFILIAL PROD_F4,
       PCPRODFILIAL PROD_F5,
       PCPRODFILIAL PROD_F6,
       PCPRODFILIAL PROD_F8,
       PCPRODFILIAL PROD_F9,
       PCPRODFILIAL PROD_F10,
       PCPRODFILIAL PROD_F11,
       PCPRODFILIAL PROD_F12,
       PCPRODFILIAL PROD_F13,
       PCPRODFILIAL PROD_F49,
       ( SELECT PCPRODFILIAL.CODPROD, SUM(PCPRODFILIAL.ESTIDEAL) ESTIDEAL FROM PCPRODFILIAL
          GROUP BY PCPRODFILIAL.CODPROD ) PROD_F99,
       ( SELECT ESTABCPRODUTO.CODPROD, ESTABCPRODUTO.CLASSEESTOQUE, ESTABCPRODUTO.CLASSEVENDA,
                ESTABCPRODUTO.CLASSEESTOQUEDEPTO
           FROM ESTABCPRODUTO
          WHERE ESTABCPRODUTO.CODFILIAL = '99'
            AND ESTABCPRODUTO.TIPO = 'R' )  ABC_GERAL_RETIRA,
       ( SELECT ESTABCPRODUTO.CODPROD, ESTABCPRODUTO.CLASSEESTOQUE, ESTABCPRODUTO.CLASSEVENDA,
                ESTABCPRODUTO.CLASSEVENDADEPTO
           FROM ESTABCPRODUTO
          WHERE ESTABCPRODUTO.CODFILIAL = '99'
            AND ESTABCPRODUTO.TIPO = 'V' )  ABC_GERAL_VENDA,
       ESTABCPRODUTO ABC_F1_VENDA,
       ESTABCPRODUTO ABC_F1_RETIRA,
       ESTABCPRODUTO ABC_F2_VENDA,
       ESTABCPRODUTO ABC_F2_RETIRA,
       ESTABCPRODUTO ABC_F3_VENDA,
       ESTABCPRODUTO ABC_F3_RETIRA,
       ESTABCPRODUTO ABC_F4_VENDA,
       ESTABCPRODUTO ABC_F4_RETIRA,
       ESTABCPRODUTO ABC_F5_VENDA,
       ESTABCPRODUTO ABC_F5_RETIRA,
       ESTABCPRODUTO ABC_F6_VENDA,
       ESTABCPRODUTO ABC_F6_RETIRA,
       ESTABCPRODUTO ABC_F8_VENDA,
       ESTABCPRODUTO ABC_F8_RETIRA,
       ESTABCPRODUTO ABC_F9_VENDA,
       ESTABCPRODUTO ABC_F9_RETIRA,
       ESTABCPRODUTO ABC_F10_VENDA,
       ESTABCPRODUTO ABC_F10_RETIRA,
       ESTABCPRODUTO ABC_F11_VENDA,
       ESTABCPRODUTO ABC_F11_RETIRA,
       ESTABCPRODUTO ABC_F12_VENDA,
       ESTABCPRODUTO ABC_F12_RETIRA,
       ESTABCPRODUTO ABC_F13_VENDA,
       ESTABCPRODUTO ABC_F13_RETIRA,

       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '1' ) BLOQ_MANUAL_F1,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '2' ) BLOQ_MANUAL_F2,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '3' ) BLOQ_MANUAL_F3,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '4' ) BLOQ_MANUAL_F4,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '5' ) BLOQ_MANUAL_F5,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '6' ) BLOQ_MANUAL_F6,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '8' ) BLOQ_MANUAL_F8,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '9' ) BLOQ_MANUAL_F9,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '10' ) BLOQ_MANUAL_F10,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '11' ) BLOQ_MANUAL_F11,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '12' ) BLOQ_MANUAL_F12,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '13' ) BLOQ_MANUAL_F13,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, ESTBLOQUEIOPRODUTO.QTBLOQMANUAL FROM ESTBLOQUEIOPRODUTO
          WHERE ESTBLOQUEIOPRODUTO.CODFILIAL = '49' ) BLOQ_MANUAL_F49,
       ( SELECT ESTBLOQUEIOPRODUTO.CODPROD, SUM(NVL(ESTBLOQUEIOPRODUTO.QTBLOQMANUAL,0)) QTBLOQMANUAL
           FROM ESTBLOQUEIOPRODUTO
          GROUP BY ESTBLOQUEIOPRODUTO.CODPROD ) BLOQ_MANUAL_F99,

       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '1' ) GIRO_F1,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '2' ) GIRO_F2,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '3' ) GIRO_F3,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '4' ) GIRO_F4,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '5' ) GIRO_F5,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '6' ) GIRO_F6,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '8' ) GIRO_F8,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '9' ) GIRO_F9,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '10' ) GIRO_F10,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '11' ) GIRO_F11,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '12' ) GIRO_F12,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '13' ) GIRO_F13,
       ( SELECT ESTGIRODIA.CODFILIAL, ESTGIRODIA.CODPROD, ESTGIRODIA.ESTOQUEIDEAL, ESTGIRODIA.QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R' AND ESTGIRODIA.CODFILIAL = '49' ) GIRO_F49,
       ( SELECT ESTGIRODIA.CODPROD, SUM(ESTGIRODIA.ESTOQUEIDEAL) ESTOQUEIDEAL,
                SUM(ESTGIRODIA.QTGIRODIA) QTGIRODIA
           FROM ESTGIRODIA WHERE ESTGIRODIA.TIPO = 'R'
          GROUP BY ESTGIRODIA.CODPROD  ) GIRO_F99,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '1'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F1,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '1'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F1,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '2'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F2,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '2'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F2,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '3'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F3,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '3'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F3,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '4'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F4,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '4'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F4,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '5'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F5,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '5'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F5,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '6'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F6,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '6'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F6,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '7'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F7,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '7'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F7,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '8'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F8,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '8'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F8,
      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '9'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F9,

      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '10'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F10,

      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '11'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F11,

      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '12'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F12,

      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '13'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F13,

      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '9'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F9,

      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '10'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F10,

      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '11'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F11,

      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '12'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F12,

      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '13'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F13,

      ( SELECT PCPEDIDO.CODFILIAL, PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
           AND PCPEDIDO.CODFILIAL = '49'
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCPEDIDO.CODFILIAL, PCITEM.CODPROD ) PEDIDOSLIBERADOS_F49,
      ( SELECT PCFILIAL.CODIGO CODFILIAL, PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND PCFILIAL.CODIGO = '49'
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
                               GROUP BY PCFILIAL.CODIGO, PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F49,

      ( SELECT PCITEM.CODPROD, SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) QTPEDIDA
          FROM PCITEM, PCPEDIDO
         WHERE PCITEM.NUMPED = PCPEDIDO.NUMPED
           AND PCPEDIDO.DTLIBERA IS NOT NULL
        HAVING SUM(PCITEM.QTPEDIDA - NVL(PCITEM.QTENTREGUE, 0)) > 0
         GROUP BY PCITEM.CODPROD ) PEDIDOSLIBERADOS_F99,
      ( SELECT PCPEDI.CODPROD, SUM(PCPEDI.QT) QT
          FROM PCPEDI, PCPEDC, PCFILIAL
         WHERE PCPEDI.NUMPED = PCPEDC.NUMPED
           AND PCPEDI.CODCLI = PCFILIAL.CODCLI
           AND PCPEDC.CONDVENDA = 10
           AND ( ( PCPEDC.POSICAO IN ('L','M','P', 'B') ) OR
                 ( ( PCPEDC.POSICAO = 'F' ) AND
                 ( NOT EXISTS(SELECT PCNFENT.CODFORNEC FROM PCNFENT, PCFILIAL FIL_ORIGEM
                               WHERE PCNFENT.CODFORNEC = FIL_ORIGEM.CODFORNEC
                                 AND FIL_ORIGEM.CODIGO = PCPEDC.CODFILIAL
                                 AND PCNFENT.NUMNOTA = PCPEDC.NUMNOTA ) )) )
         GROUP BY PCPEDI.CODPROD ) PEDIDOS_EM_TRANSITO_F99
     ,( SELECT DISTINCT ESTCAMPANHAATACPROD.CODPROD FROM ESTCAMPANHAATAC, ESTCAMPANHAATACPROD
         WHERE TRUNC(SYSDATE) BETWEEN ESTCAMPANHAATAC.DTINICIO AND ESTCAMPANHAATAC.DTFIM
           AND ESTCAMPANHAATACPROD.CODCAMPANHA = ESTCAMPANHAATAC.CODCAMPANHA ) CAMPANHA,
       ( SELECT DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA,
                SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) VALOR_ESTOQUE_DISP,
                SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) VALOR_CMV,
                     CASE WHEN SUM(NVL(DADOS.VALOR_ULT_TRI_MES_ATUAL,0)) = 0  THEN
                       999
                     ELSE
                         ROUND(SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) /
                                ( SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) / ( 90 + TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) - 1 ) ),2) END  DDE
                 FROM (
                SELECT PCEST.CODFILIAL, PCEST.CODPROD, PCPRODUT.CODEPTO, PCPRODUT.CODSEC, PCPRODUT.CODCATEGORIA, PCEST.CUSTOREP,
                       ( ( NVL(ESVVENDAMES.qtvendames,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames3,0) ) * PCEST.CUSTOREP ) VALOR_ULT_TRI_MES_ATUAL,
                       GREATEST(( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) -
                           NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ),0) QTESTOQUE_DISPONIVEL
                  FROM PCEST, ESVVENDAPRODUTO12MESES, ESVVENDAMES, PCPRODUT
                 WHERE PCEST.CODPROD    = PCPRODUT.CODPROD
                   AND PCEST.CODPROD    = ESVVENDAMES.CODPROD (+)
                   AND PCEST.CODFILIAL  = ESVVENDAMES.CODFILIAL (+)
                   AND PCEST.CODPROD    = ESVVENDAPRODUTO12MESES.CODPRODUTO (+)
                   AND PCEST.CODFILIAL  = ESVVENDAPRODUTO12MESES.CODFILIAL (+)
                   AND PCPRODUT.DESCRICAO NOT LIKE '++%' ) DADOS
               GROUP BY DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA
                 ) DDE_PRODUTO,
       ( SELECT DADOS.CODSEC,
                SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) VALOR_ESTOQUE_DISP,
                SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) VALOR_CMV,
                     CASE WHEN SUM(NVL(DADOS.VALOR_ULT_TRI_MES_ATUAL,0)) = 0  THEN
                       999
                     ELSE
                         ROUND(SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) /
                                ( SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) / ( 90 + TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) - 1 ) ),2) END  DDE
                 FROM (
                SELECT PCEST.CODFILIAL, PCEST.CODPROD, PCPRODUT.CODEPTO, PCPRODUT.CODSEC, PCPRODUT.CODCATEGORIA, PCEST.CUSTOREP,
                       ( ( NVL(ESVVENDAMES.qtvendames,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames3,0) ) * PCEST.CUSTOREP ) VALOR_ULT_TRI_MES_ATUAL,
                       GREATEST(( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) -
                           NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ),0) QTESTOQUE_DISPONIVEL
                  FROM PCEST, ESVVENDAPRODUTO12MESES, ESVVENDAMES, PCPRODUT
                 WHERE PCEST.CODPROD    = PCPRODUT.CODPROD
                   AND PCEST.CODPROD    = ESVVENDAMES.CODPROD (+)
                   AND PCEST.CODFILIAL  = ESVVENDAMES.CODFILIAL (+)
                   AND PCEST.CODPROD    = ESVVENDAPRODUTO12MESES.CODPRODUTO (+)
                   AND PCEST.CODFILIAL  = ESVVENDAPRODUTO12MESES.CODFILIAL (+)
                   AND PCPRODUT.DESCRICAO NOT LIKE '++%' ) DADOS
               GROUP BY DADOS.CODSEC
                 ) DDE_SECAO,
       ( SELECT DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA,
                SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) VALOR_ESTOQUE_DISP,
                SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) VALOR_CMV,
                     CASE WHEN SUM(NVL(DADOS.VALOR_ULT_TRI_MES_ATUAL,0)) = 0  THEN
                       999
                     ELSE
                         ROUND(SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) /
                                ( SUM(DADOS.VALOR_ULT_TRI_MES_ATUAL) / ( 90 + TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) - 1 ) ),2) END  DDE
                 FROM (
                SELECT PCEST.CODFILIAL, PCEST.CODPROD, PCPRODUT.CODEPTO, PCPRODUT.CODSEC, PCPRODUT.CODCATEGORIA, PCEST.CUSTOREP,
                       ( ( NVL(ESVVENDAMES.qtvendames,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames3,0) ) * PCEST.CUSTOREP ) VALOR_ULT_TRI_MES_ATUAL,
                       GREATEST(( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) -
                           NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ),0) QTESTOQUE_DISPONIVEL
                  FROM PCEST, ESVVENDAPRODUTO12MESES, ESVVENDAMES, PCPRODUT
                 WHERE PCEST.CODPROD    = PCPRODUT.CODPROD
                   AND PCEST.CODPROD    = ESVVENDAMES.CODPROD (+)
                   AND PCEST.CODFILIAL  = ESVVENDAMES.CODFILIAL (+)
                   AND PCEST.CODPROD    = ESVVENDAPRODUTO12MESES.CODPRODUTO (+)
                   AND PCEST.CODFILIAL  = ESVVENDAPRODUTO12MESES.CODFILIAL (+)
                   AND PCPRODUT.DESCRICAO NOT LIKE '++%' ) DADOS
               GROUP BY DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA
                 ) DDE_CATEGORIA,
      ( SELECT PCMOV.CODPROD, SUM(PCMOV.QT) QT
          FROM PCMOV
         WHERE PCMOV.CODOPER = 'SM'
           AND PCMOV.DTMOV >= lAST_DAY(ADD_MONTHS(TRUNC(SYSDATE),-4)) + 1
      GROUP BY PCMOV.CODPROD ) CONSUMO,
     (  SELECT DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA,
        DADOS.QTDIAS,
        SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) VALOR_ESTOQUE_DISP,
        ROUND(SUM(DADOS.QT_VENDA_ANUAL / DADOS.QTDIAS),3) GIRODIA,
        SUM(DADOS.VL_VENDA_ANUAL) VLVENDAANUAL,
        SUM(DADOS.QT_VENDA_ANUAL) QTVENDAANUAL,
        CASE WHEN SUM(NVL(DADOS.VL_VENDA_ANUAL,0)) = 0  THEN
           999
        ELSE
          ROUND(SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) /
                  ( SUM(DADOS.VL_VENDA_ANUAL) / ( 90 + TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) - 1 ) ),2) END  DDE
                 FROM (
                SELECT PCEST.CODPROD, PCPRODUT.CODEPTO,
                       PCPRODUT.CODSEC, PCPRODUT.CODCATEGORIA, PCEST.CUSTOREP,
                       DIAS_ESTOQUE_ANUAL.QTDIAS,
                       ( ( NVL(ESVVENDAMES.qtvendames,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames3,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames4,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames5,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames6,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames7,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames8,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames9,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames10,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames11,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames12,0) ) ) QT_VENDA_ANUAL,
                       ( ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                           NVL(ESVVENDAPRODUTO12MESES.vlvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES3,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES4,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES5,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES6,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES7,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES8,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES9,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES10,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES11,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES12,0) ) ) VL_VENDA_ANUAL,
                       GREATEST(( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) -
                           NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ),0) QTESTOQUE_DISPONIVEL
                  FROM PCEST, ESVVENDAPRODUTO12MESES, ESVVENDAMES, PCPRODUT,
                       ( SELECT PCHISTEST.CODPROD, COUNT(DISTINCT PCHISTEST.DATA) QTDIAS FROM PCHISTEST
                          WHERE PCHISTEST.DATA >= LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE), -14)) + 1
                          HAVING SUM(PCHISTEST.QTESTGER) > 0
                          GROUP BY PCHISTEST.CODPROD ) DIAS_ESTOQUE_ANUAL
                 WHERE PCEST.CODPROD    = PCPRODUT.CODPROD
                   AND PCEST.CODPROD    = ESVVENDAMES.CODPROD (+)
                   AND PCEST.CODFILIAL  = ESVVENDAMES.CODFILIAL (+)
                   AND PCEST.CODPROD    = ESVVENDAPRODUTO12MESES.CODPRODUTO (+)
                   AND PCEST.CODFILIAL  = ESVVENDAPRODUTO12MESES.CODFILIAL (+)
                   AND PCEST.CODPROD    = DIAS_ESTOQUE_ANUAL.CODPROD (+)
                   AND PCPRODUT.DESCRICAO NOT LIKE '++%' ) DADOS
               GROUP BY DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA, DADOS.QTDIAS
                 ) DDE_ANUAL,
(  SELECT DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA,
        DADOS.QTDIAS,
        SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) VALOR_ESTOQUE_DISP,
        ROUND(SUM(DADOS.QT_VENDA_ANUAL / DADOS.QTDIAS),3) GIRODIA,
        SUM(DADOS.VL_VENDA_ANUAL) VLVENDATRIMESTRE,
        SUM(DADOS.QT_VENDA_ANUAL) QTVENDATRIMESTRE,
        CASE WHEN SUM(NVL(DADOS.VL_VENDA_ANUAL,0)) = 0  THEN
           999
        ELSE
          ROUND(SUM(DADOS.QTESTOQUE_DISPONIVEL*DADOS.CUSTOREP) /
                  ( SUM(DADOS.VL_VENDA_ANUAL) / ( 90 + TO_NUMBER(TO_CHAR(SYSDATE, 'DD')) - 1 ) ),2) END  DDE
                 FROM (
                SELECT PCEST.CODPROD, PCPRODUT.CODEPTO,
                       PCPRODUT.CODSEC, PCPRODUT.CODCATEGORIA, PCEST.CUSTOREP,
                       DIAS_ESTOQUE_ANUAL.QTDIAS,
                       ( ( NVL(ESVVENDAMES.qtvendames,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.qtvendames3,0)  ) ) QT_VENDA_ANUAL,
                       ( ( NVL(ESVVENDAMES.VLVENDAMES,0) +
                           NVL(ESVVENDAPRODUTO12MESES.vlvendames1,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES2,0) +
                           NVL(ESVVENDAPRODUTO12MESES.VLVENDAMES3,0)  ) ) VL_VENDA_ANUAL,
                       GREATEST(( NVL(PCEST.QTESTGER,0) - NVL(PCEST.QTRESERV,0) -
                           NVL(PCEST.QTBLOQUEADA,0) - NVL(PCEST.QTPENDENTE,0) ),0) QTESTOQUE_DISPONIVEL
                  FROM PCEST, ESVVENDAPRODUTO12MESES, ESVVENDAMES, PCPRODUT,
                       ( SELECT PCHISTEST.CODPROD, COUNT(DISTINCT PCHISTEST.DATA) QTDIAS FROM PCHISTEST
                          WHERE PCHISTEST.DATA >= LAST_DAY(ADD_MONTHS(TRUNC(SYSDATE), -4)) + 1
                          HAVING SUM(PCHISTEST.QTESTGER) > 0
                          GROUP BY PCHISTEST.CODPROD ) DIAS_ESTOQUE_ANUAL
                 WHERE PCEST.CODPROD    = PCPRODUT.CODPROD
                   AND PCEST.CODPROD    = ESVVENDAMES.CODPROD (+)
                   AND PCEST.CODFILIAL  = ESVVENDAMES.CODFILIAL (+)
                   AND PCEST.CODPROD    = ESVVENDAPRODUTO12MESES.CODPRODUTO (+)
                   AND PCEST.CODFILIAL  = ESVVENDAPRODUTO12MESES.CODFILIAL (+)
                   AND PCEST.CODPROD    = DIAS_ESTOQUE_ANUAL.CODPROD (+)
                   AND PCPRODUT.DESCRICAO NOT LIKE '++%' ) DADOS
               GROUP BY DADOS.CODPROD, DADOS.CODEPTO, DADOS.CODSEC, DADOS.CODCATEGORIA, DADOS.QTDIAS
                 ) DDE_TRIMESTRE
    ,( SELECT PCMOVPREENT.CODPROD, SUM(PCMOVPREENT.QT) QT
         FROM PCMOVPREENT
        WHERE NOT EXISTS(SELECT PCMOV.NUMTRANSENT FROM PCMOV
                          WHERE PCMOV.NUMTRANSENT = PCMOVPREENT.NUMTRANSENT
                            AND PCMOV.CODPROD = PCMOVPREENT.CODPROD )
        GROUP BY PCMOVPREENT.CODPROD ) PREENT
 WHERE PCPRODUT.DTEXCLUSAO IS NULL
   AND PCPRODUT.CODEPTO = PCDEPTO.CODEPTO
   AND PCPRODUT.CODSEC  = PCSECAO.CODSEC
   AND PCPRODUT.CODSEC  = PCCATEGORIA.CODSEC (+)
   AND PCPRODUT.CODCATEGORIA = PCCATEGORIA.CODCATEGORIA (+)
   AND PCPRODUT.CODSEC   = PCSUBCATEGORIA.CODSEC (+)
   AND PCPRODUT.CODCATEGORIA = PCSUBCATEGORIA.CODCATEGORIA (+)
   AND PCPRODUT.CODSUBCATEGORIA = PCSUBCATEGORIA.CODSUBCATEGORIA (+)
   AND PCPRODUT.CODMARCA = PCMARCA.CODMARCA (+)
   AND PCPRODUT.CODFORNEC = PCFORNEC.CODFORNEC (+)
   AND PCPRODUT.CODPROD = VENDAMESATUAL.CODPROD (+)
   AND PCPRODUT.CODPROD = VENDAMESANT.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = ABC_GERAL_RETIRA.CODPROD (+)
   AND PCPRODUT.CODPROD = ABC_GERAL_VENDA.CODPROD (+)
   AND PCPRODUT.CODPROD = PROD_ECOMMERCE.CODPROD (+)
   AND PCPRODUT.CODPROD = ESTPRODUCTECOMMERCE.ID (+)
   AND PCPRODUT.CODPROD = CONSUMO.CODPROD (+)
   AND PCPRODUT.CODPROD = PREENT.CODPROD (+)
   AND PCPRODUT.CODPROD = PCEST.CODPROD
   AND PCEST.CODFILIAL  = :CODFILIAL
   AND PCPRODUT.CODCOMPRADOR = COMPRADOR.MATRICULA (+)
   AND NOT EXISTS(SELECT PCFORMPROD.CODPRODMP FROM PCFORMPROD
                   WHERE PCFORMPROD.CODPRODACAB = PCPRODUT.CODPROD )
   AND PCEST.CODPROD   = DDE_ANUAL.CODPROD (+)
   AND PCEST.CODPROD   = DDE_TRIMESTRE.CODPROD (+)
   --TRIBUTACAO
   AND PCPRODUT.CODNCMEX   = PCTRIBENTRADA.NCM (+)
   AND PCEST.CODFILIAL     = PCTRIBENTRADA.CODFILIAL (+)
   AND PCFORNEC.TIPOFORNEC = PCTRIBENTRADA.TIPOFORNEC (+)
   AND PCFORNEC.ESTADO     = PCTRIBENTRADA.UFORIGEM (+)
   AND PCTRIBENTRADA.CODFIGURA = PCTRIBFIGURA.CODFIGURA (+)
   AND PCPRODUT.CODPROD = PCTABPR.CODPROD
   AND PCTABPR.NUMREGIAO = 1
   AND PCPRODUT.CODPROD = PCTABPR_CAST.CODPROD
   AND PCTABPR_CAST.NUMREGIAO = 4
   AND PCPRODUT.CODPROD = PCTABPR_OUTLET.CODPROD
   AND PCTABPR_OUTLET.NUMREGIAO = 6
   AND PCEST.CODPROD    = PCTABTRIB.CODPROD (+)
   AND PCEST.CODFILIAL  = PCTABTRIB.CODFILIALNF (+)
   AND PCTABTRIB.UFDESTINO = 'PA'
   AND PCTABTRIB.CODST     = PCTRIBUT.CODST (+)
   AND PCPRODUT.CODPROD = CAMPANHA.CODPROD (+)
   AND PCPRODUT.CODPROD = EST_F1.CODPROD
   AND EST_F1.CODFILIAL = '1'
   AND PCPRODUT.CODPROD = EST_F2.CODPROD
   AND EST_F2.CODFILIAL = '2'
   AND PCPRODUT.CODPROD = EST_F3.CODPROD
   AND EST_F3.CODFILIAL = '3'
   AND PCPRODUT.CODPROD = EST_F4.CODPROD
   AND EST_F4.CODFILIAL = '4'
   AND PCPRODUT.CODPROD = EST_F5.CODPROD
   AND EST_F5.CODFILIAL = '5'
   AND PCPRODUT.CODPROD = EST_F6.CODPROD
   AND EST_F6.CODFILIAL = '6'
   AND PCPRODUT.CODPROD = EST_F8.CODPROD
   AND EST_F8.CODFILIAL = '8'
   AND PCPRODUT.CODPROD = EST_F9.CODPROD
   AND EST_F9.CODFILIAL = '9'
   AND PCPRODUT.CODPROD = EST_F10.CODPROD
   AND EST_F10.CODFILIAL = '10'
   AND PCPRODUT.CODPROD = EST_F11.CODPROD
   AND EST_F11.CODFILIAL = '11'
   AND PCPRODUT.CODPROD = EST_F12.CODPROD
   AND EST_F12.CODFILIAL = '12'
   AND PCPRODUT.CODPROD = EST_F13.CODPROD
   AND EST_F13.CODFILIAL = '13'
   AND PCPRODUT.CODPROD = EST_F49.CODPROD
   AND EST_F49.CODFILIAL = '49'
   AND PCPRODUT.CODPROD = EST_F99.CODPROD
   AND PCPRODUT.CODPROD = PROD_F1.CODPROD
   AND PROD_F1.CODFILIAL = '1'
   AND PCPRODUT.CODPROD = PROD_F2.CODPROD
   AND PROD_F2.CODFILIAL = '2'
   AND PCPRODUT.CODPROD = PROD_F3.CODPROD
   AND PROD_F3.CODFILIAL = '3'
   AND PCPRODUT.CODPROD = PROD_F4.CODPROD
   AND PROD_F4.CODFILIAL = '4'
   AND PCPRODUT.CODPROD = PROD_F5.CODPROD
   AND PROD_F5.CODFILIAL = '5'
   AND PCPRODUT.CODPROD = PROD_F6.CODPROD
   AND PROD_F6.CODFILIAL = '6'
   AND PCPRODUT.CODPROD = PROD_F8.CODPROD
   AND PROD_F8.CODFILIAL = '8'
   AND PCPRODUT.CODPROD = PROD_F9.CODPROD
   AND PROD_F9.CODFILIAL = '9'
   AND PCPRODUT.CODPROD = PROD_F10.CODPROD
   AND PROD_F10.CODFILIAL = '10'
   AND PCPRODUT.CODPROD = PROD_F11.CODPROD
   AND PROD_F11.CODFILIAL = '11'
   AND PCPRODUT.CODPROD = PROD_F12.CODPROD
   AND PROD_F12.CODFILIAL = '12'
   AND PCPRODUT.CODPROD = PROD_F13.CODPROD
   AND PROD_F13.CODFILIAL = '13'
   AND PCPRODUT.CODPROD = PROD_F49.CODPROD
   AND PROD_F49.CODFILIAL = '49'
   AND PCPRODUT.CODPROD = PROD_F99.CODPROD
   AND PCPRODUT.CODPROD = ABC_F1_VENDA.CODPROD
   AND ABC_F1_VENDA.TIPO = 'V'
   AND ABC_F1_VENDA.CODFILIAL = '1'
   AND PCPRODUT.CODPROD = ABC_F2_VENDA.CODPROD
   AND ABC_F2_VENDA.TIPO = 'V'
   AND ABC_F2_VENDA.CODFILIAL = '2'
   AND PCPRODUT.CODPROD = ABC_F3_VENDA.CODPROD
   AND ABC_F3_VENDA.TIPO = 'V'
   AND ABC_F3_VENDA.CODFILIAL = '3'
   AND PCPRODUT.CODPROD = ABC_F4_VENDA.CODPROD
   AND ABC_F4_VENDA.TIPO = 'V'
   AND ABC_F4_VENDA.CODFILIAL = '4'
   AND PCPRODUT.CODPROD = ABC_F5_VENDA.CODPROD
   AND ABC_F5_VENDA.TIPO = 'V'
   AND ABC_F5_VENDA.CODFILIAL = '5'
   AND PCPRODUT.CODPROD = ABC_F6_VENDA.CODPROD
   AND ABC_F6_VENDA.TIPO = 'V'
   AND ABC_F6_VENDA.CODFILIAL = '6'
   AND PCPRODUT.CODPROD = ABC_F8_VENDA.CODPROD
   AND ABC_F8_VENDA.TIPO = 'V'
   AND ABC_F8_VENDA.CODFILIAL = '8'
   AND PCPRODUT.CODPROD = ABC_F9_VENDA.CODPROD
   AND ABC_F9_VENDA.TIPO = 'V'
   AND ABC_F9_VENDA.CODFILIAL = '9'
   AND PCPRODUT.CODPROD = ABC_F10_VENDA.CODPROD
   AND ABC_F10_VENDA.TIPO = 'V'
   AND ABC_F10_VENDA.CODFILIAL = '10'
   AND PCPRODUT.CODPROD = ABC_F11_VENDA.CODPROD
   AND ABC_F11_VENDA.TIPO = 'V'
   AND ABC_F11_VENDA.CODFILIAL = '11'
   AND PCPRODUT.CODPROD = ABC_F12_VENDA.CODPROD
   AND ABC_F12_VENDA.TIPO = 'V'
   AND ABC_F12_VENDA.CODFILIAL = '12'
   AND PCPRODUT.CODPROD = ABC_F13_VENDA.CODPROD
   AND ABC_F13_VENDA.TIPO = 'V'
   AND ABC_F13_VENDA.CODFILIAL = '13'
   AND PCPRODUT.CODPROD = ABC_F1_RETIRA.CODPROD
   AND ABC_F1_RETIRA.TIPO = 'R'
   AND ABC_F1_RETIRA.CODFILIAL = '1'
   AND PCPRODUT.CODPROD = ABC_F2_RETIRA.CODPROD
   AND ABC_F2_RETIRA.TIPO = 'R'
   AND ABC_F2_RETIRA.CODFILIAL = '2'
   AND PCPRODUT.CODPROD = ABC_F3_RETIRA.CODPROD
   AND ABC_F3_RETIRA.TIPO = 'R'
   AND ABC_F3_RETIRA.CODFILIAL = '3'
   AND PCPRODUT.CODPROD = ABC_F4_RETIRA.CODPROD
   AND ABC_F4_RETIRA.TIPO = 'R'
   AND ABC_F4_RETIRA.CODFILIAL = '4'
   AND PCPRODUT.CODPROD = ABC_F5_RETIRA.CODPROD
   AND ABC_F5_RETIRA.TIPO = 'R'
   AND ABC_F5_RETIRA.CODFILIAL = '5'
   AND PCPRODUT.CODPROD = ABC_F6_RETIRA.CODPROD
   AND ABC_F6_RETIRA.TIPO = 'R'
   AND ABC_F6_RETIRA.CODFILIAL = '6'
   AND PCPRODUT.CODPROD = ABC_F8_RETIRA.CODPROD
   AND ABC_F8_RETIRA.TIPO = 'R'
   AND ABC_F8_RETIRA.CODFILIAL = '8'
   AND PCPRODUT.CODPROD = ABC_F9_RETIRA.CODPROD
   AND ABC_F9_RETIRA.TIPO = 'R'
   AND ABC_F9_RETIRA.CODFILIAL = '9'

   AND PCPRODUT.CODPROD = ABC_F10_RETIRA.CODPROD
   AND ABC_F10_RETIRA.TIPO = 'R'
   AND ABC_F10_RETIRA.CODFILIAL = '10'

   AND PCPRODUT.CODPROD = ABC_F11_RETIRA.CODPROD
   AND ABC_F11_RETIRA.TIPO = 'R'
   AND ABC_F11_RETIRA.CODFILIAL = '11'

   AND PCPRODUT.CODPROD = ABC_F12_RETIRA.CODPROD
   AND ABC_F12_RETIRA.TIPO = 'R'
   AND ABC_F12_RETIRA.CODFILIAL = '12'

   AND PCPRODUT.CODPROD = ABC_F13_RETIRA.CODPROD
   AND ABC_F13_RETIRA.TIPO = 'R'
   AND ABC_F13_RETIRA.CODFILIAL = '13'

   AND PCPRODUT.CODPROD = GIRO_F1.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F2.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F3.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F4.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F5.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F6.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F8.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F9.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F10.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F11.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F12.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F13.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F49.CODPROD (+)
   AND PCPRODUT.CODPROD = GIRO_F99.CODPROD (+)

   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F1.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F2.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F3.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F4.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F5.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F6.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F8.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F9.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F10.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F11.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F12.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F13.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F49.CODPROD (+)
   AND PCPRODUT.CODPROD = BLOQ_MANUAL_F99.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F1.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F1.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F2.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F2.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F3.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F3.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F4.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F4.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F5.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F5.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F6.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F6.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F7.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F7.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F8.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F8.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F9.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F9.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F10.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F10.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F11.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F11.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F12.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F12.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F13.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F13.CODPROD (+)

   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F49.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F49.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOSLIBERADOS_F99.CODPROD (+)
   AND PCPRODUT.CODPROD = PEDIDOS_EM_TRANSITO_F99.CODPROD (+)
   AND PCPRODUT.CODPROD = VENDAMES_F1.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F2.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F3.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F4.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F5.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F6.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F7.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F8.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F9.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F10.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F11.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F12.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F13.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F49.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = VENDAMES_F99.CODPRODUTO (+)
   AND PCPRODUT.CODPROD = DDE_PRODUTO.CODPROD (+)
   AND PCPRODUT.CODSEC       = DDE_SECAO.CODSEC (+)
   AND PCPRODUT.CODSEC       = DDE_CATEGORIA.CODSEC (+)
   AND PCPRODUT.CODCATEGORIA = DDE_CATEGORIA.CODCATEGORIA (+)
   AND PCPRODUT.DESCRICAO NOT LIKE '%++%'

