Ir para conteúdo
Rods2018

Query retornando duas linhas que nao era para retornar

Recommended Posts

Boa Tarde estou tendo um problema com a seguinte query....

 

select p.A1_COD,p.A1_NOME,p.ULTCOMP_CLIENTE,p.B1_COD,p.B1_DESC,p.B2_QATU,p.B2_CM1,p.B2_VFIM1,p.B2_VATU1,p.D2_PRCVEN,p.D2_QUANT,p.ULTCOMP_PRODUTO_CLIENTE,p.TOTAL_MESES from SD2010,
    (select A1_COD,A1_NOME,A1_ULTCOM as ULTCOMP_CLIENTE,B1_COD,B1_DESC,B2_QATU,B2_CM1,B2_VFIM1,B2_VATU1,D2_PRCVEN,D2_QUANT,max(D2_EMISSAO) as ULTCOMP_PRODUTO_CLIENTE,datediff(mm,max(D2_EMISSAO),getdate()) as TOTAL_MESES from SB1010
    inner join SD2010  on D2_COD = B1_COD
    inner join SB2010 SB2 on B2_COD = B1_COD
    inner join SA1010 SA1 on A1_COD = D2_CLIENTE    
    where B2_QATU > 0 and SA1.D_E_L_E_T_ <> '*' and (SB2.D_E_L_E_T_ <> '*' and (B1_TIPO = 'ME' and B1_COD not in (
        select distinct D2_COD from SD2010        
        where D_E_L_E_T_ <> '*' and (D2_EMISSAO between dateadd(mm,-2,getdate()) and  getdate() and D2_TIPO = 'N'))))
    group by A1_COD,A1_NOME,A1_ULTCOM,B1_COD,B1_DESC,B2_QATU,B2_CM1,B2_VFIM1,B2_VATU1,D2_QUANT,D2_PRCVEN) as p
--where p.TOTAL_MESES >= 2
group by p.A1_COD,p.A1_NOME,p.ULTCOMP_CLIENTE,p.B1_COD,p.B1_DESC,p.B2_QATU,p.B2_CM1,p.B2_VFIM1,p.B2_VATU1,p.D2_PRCVEN,p.D2_QUANT,p.ULTCOMP_PRODUTO_CLIENTE,p.TOTAL_MESES
order by 12 desc;

 

esta query retornar os valores corretamente mas aparecem duas linhas que não eram para aparecer ao executarem verá as duas primeiras linhas, porem não to conseguindo encontrar o problema pois ja executei as querys separadas e ambas estão funcionando alguem teria alguma ideia do que poderia ser????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conhecendo Totvs chutaria delet ou filial , mas como você expos é muito difícil saber o que seriam as "duas linhas" ...

 

Cuidado também que campos data no Totvs são internamente CHAR YYYYMMDD cuidado com cálculos de data.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por GustavoJacob15
      Quando eu executo esse fonte, trás o resultado triplicado
       
       
       
      SELECT CN9_NUMERO AS 'CONTRATO', CONVERT(DATE, SUBSTRING(CN9_DTINIC, 1, 4) + '-' + SUBSTRING(CN9_DTINIC, 5, 2) + '-' + SUBSTRING(CN9_DTINIC, 7, 2)) AS 'DT INICIO', CONVERT(DATE, SUBSTRING(CN9_DTFIM, 1, 4) + '-' + SUBSTRING(CN9_DTFIM, 5, 2) + '-' + SUBSTRING(CN9_DTFIM, 7, 2)) AS 'DT FIM', CN9_NUMERO AS 'CENTRO DE CUSTO', CN9_ZZEMTI AS 'ART EMITIDA', CONVERT(DATE,CN9_ZZDTVA) AS 'VALIDADE DA ART', CN9_VLATU AS 'VALOR CONTRATO', CNC_CLIENT AS 'CLIENTE', CNC_LOJACL AS 'LOJA CLIENTE', A1_NOME AS 'NOME CLIENTE', CNE_PEDIDO AS 'PEDIDO', CNE_PERC AS 'PERCENTUAL', C6_NOTA AS 'NOTA FISCAL', E1_NUM AS 'NUMERO', CNE_REVISA, CONVERT(DATE,E1_BAIXA) AS 'DT BAIXA', CNF_VLPREV AS 'VALOR PREVISTO', CNF_PARCEL AS 'PARCELA', CONVERT(DATE,CNF_DTVENC) AS 'VENCIMENTO' FROM CN9010 CN9 INNER JOIN CNC010 CNC ON CNC.CNC_NUMERO = CN9.CN9_NUMERO AND CNC.D_E_L_E_T_ ='' INNER JOIN SA1010 A1 ON CNC.CNC_CLIENT = A1.A1_COD AND CNC.CNC_LOJACL = A1.A1_LOJA AND A1.D_E_L_E_T_ ='' INNER JOIN CNF010 CNF ON CNF.CNF_CONTRA = CN9.CN9_NUMERO AND CN9.D_E_L_E_T_='' INNER JOIN CNE010 CNE ON CNE.CNE_CONTRA = CNF.CNF_CONTRA AND CNE.D_E_L_E_T_='' INNER JOIN SC6010 C6 ON C6.C6_NUM = CNE.CNE_PEDIDO AND C6.D_E_L_E_T_ ='' INNER JOIN SE1010 E1 ON E1.E1_NUM = C6.C6_NOTA AND E1.D_E_L_E_T_ ='' AND E1.E1_TIPO ='NF' WHERE CN9.D_E_L_E_T_='' AND CN9_NUMERO = '201000272' AND CN9_REVISA = '002' AND CN9.D_E_L_E_T_='' AND CNF_CONTRA = '201000272' AND CNF_REVISA = '002' AND CNF.D_E_L_E_T_='' AND CNE_CONTRA = '201000272' AND CNE_REVISA = '002' AND CNE.D_E_L_E_T_='' AND E1_PREFIXO = 'SRV' AND CNC_NUMERO = '201000272' AND CNC_REVISA = '002' GROUP BY CN9_NUMERO,CN9_REVISA,CN9_DTINIC,CN9_DTFIM,CN9_NUMERO,CN9_ZZEMTI,CN9_ZZDTVA,CN9_VLATU,CNC_CLIENT,CNC_LOJACL, A1_NOME, CNE_PEDIDO, CNE_PERC, C6_NOTA, E1_NUM, CNE_REVISA, E1_BAIXA, CNF_VLPREV, CNF_PARCEL, CNF_DTVENC  
    • Por empirerock
      Pessoal, boa tarde.
      Estou com uma dúvida no qual nunca me deparei antes com php e mysql.
       
      Tenho a seguinte tabela exemplo no mysql:
       
      ITEM :   DEP  :    QTD
      ========================
       1       :  T01    :   1000
       2       :  T02    :   2000
       3       :  T03    :   3000
       4       :  T01    :   4000
       5       :  T03    :   5000
      ========================
       
       
      Tendo esta tabela no mysql, eu preciso exibir uma página com uma tabela HTML e PHP dessa maneira abaixo:
      TABELA HTML PARA EXIBIR
      ================================
      ITEM  :  T01   :  T02   :  T03 
       1        : 1000   :   0      :   0
       2        :  0         : 2000 :   0
       3        :  0         :   0      : 3000
       4        : 4000   :   0      :   0
       5        :  0         :   0      : 5000
      ================================
       
       
      Explicando:
      Preciso exibir uma query que me filtre em colunas a qtd de cada depósito.
      Pesquisei  e não sei como fazer isso. Tentei fazer um select para cada depósito e  while dentro de while e não consegui. Alguma forma de fazer isso?
      Segue abaixo meu script, só que não faço idéia de como fazer isso, quem tiver uma idéia de como fazer, ficarei muito grato.
       
       
      <? $sql = mysql_query ("SELECT item, dep, qtd FROM estoque "); ?> <table> <thead> <tr> <th>Item</th> <th>T01</th> <th>T02</th> <th>T03</th> </tr> </thead> <tbody> <? while($r = mysql_fetch_array($sql)){ ?> <tr> <td><? echo $r['item']; ?></td> <td></td> <td></td> </tr> <? } ?> </tbody> </table>  
    • Por nicolasbessa
      Galera,
      Uma ajuda, Por gentileza!
       
      Tenho a query abaixo para ser trabalhada a performance. A mesma é uma view, realiza consulta diversas vezes na mesma tabela para montar alguns campos.
      Gostaria de ideias para melhorar a mesma, desde já agradeço!
       

        CREATE OR REPLACE FORCE EDITIONABLE VIEW "LF"."VW_CTM_JNJ_ENTSAI_TABLEAU" ("TIPO_NF", "COD_HOLDING", "COD_MATRIZ", "COD_FILIAL", "ID_NF", "NUM_NF", "SERIE", "COD_MODELO", "COD_CFOP_LEGAL", "COD_CLIFOR", "DT_EMISSAO", "DT_LANCAMENTO", "DT_ENTRADA", "COD_STATUS", "COD_UF", "MUNICIPIO", "RAZAOSOCIAL", "CGC_CPF", "VLR_TOTAL_PRODUTOS", "TOTAL_ITEM", "ICMS_BASE_TOTAL", "ICMS_VALOR_TOTAL", "ICMS_ST_BASE_TOTAL", "ICMS_ST_VALOR_TOTAL", "VLR_FRETE", "VLR_SEGURO", "VLR_DESPESAS", "IPI_TRIBUTADO", "IPI_NAO_TRIBUTADO", "DOCNUM", "ID_ITEM", "COD_PRODUTO", "COD_UNID_MEDIDA", "COD_CLASSIF_FISCAL", "QUANTIDADE", "VLR_UNITARIO", "VLR_DESCONTO", "DESCRICAO_NOTA", "DIG_CFOP", "COD_GRP_PRODUTO", "COD_IVA", "COD_ORIGEM_PROD", "CTA_CTB_MATERIAL", "LANCTO_CONTABIL", "CHAVE_NF_E", "NUMERO_DI", "COD_TRIBUT_ICMS", "COD_SIT_TRIB_IPI", "COD_IMPOSTO", "BASE_CALCULO_1", "BASE_CALCULO_2", "BASE_CALCULO_3", "VLR_IMPOSTO_ICMS_1", "VLR_IMPOSTO_ICMS_2", "ALIQUOTA_ICMS_1", "ALIQUOTA_ICMS_2", "COD_TRIBUT_IPI", "BASE_CALCULO_IPI_1", "BASE_CALCULO_IPI_2", "BASE_CALCULO_IPI_3", "ALIQUOTA_IPI", "VLR_IMPOSTO_IPI", "BASE_CALCULO_ST_1", "BASE_CALCULO_ST_2", "BASE_CALCULO_ST_3", "ALIQUOTA_ST", "VLR_IMPOSTO_ST", "BASE_CALCULO_DIFAL", "ALIQUOTA_DIFAL", "VLR_IMPOSTO_DIFAL", "BASE_CALCULO_J6", "VLR_IMPOSTO_J6", "BASE_CALCULO_J7", "VLR_IMPOSTO_J7", "BASE_CALCULO_J8", "VLR_IMPOSTO_J8", "BASE_CALCULO_PIS_1", "BASE_CALCULO_PIS_2", "BASE_CALCULO_PIS_3", "ALIQUOTA_PIS", "VLR_IMPOSTO_PIS", "COD_SIT_TRIB_PIS", "BASE_CALCULO_COFINS_1", "BASE_CALCULO_COFINS_2", "BASE_CALCULO_COFINS_3", "ALIQUOTA_COFINS", "VLR_IMPOSTO_COFINS", "COD_SIT_TRIB_COF") AS 
        select distinct
                    'E'                  TIPO_NF,
                     a.COD_HOLDING,
                     a.COD_MATRIZ,
                     a.COD_FILIAL,
                     a.ID_NF_ENTRADA     ID_NF,
                     A.NUM_NF,
                     A.SERIE,
                     A.COD_MODELO,
                     a.COD_CFOP_LEGAL,
                     a.COD_CLIFOR,
                     A.DT_EMISSAO,
                     a.DT_LANCAMENTO,
                     a.DT_ENTRADA,
                     a.COD_STATUS,
                     a.COD_UF,
                     A.MUNICIPIO,
                     A.RAZAOSOCIAL,
                     A.CGC_CPF,
                     A.VLR_TOTAL_PRODUTOS,
                     B.VLR_BRUTO           TOTAL_ITEM,
                     A.ICMS_BASE_TOTAL,
                     A.ICMS_VALOR_TOTAL,
                     A.ICMS_ST_BASE_TOTAL,
                     A.ICMS_ST_VL_TOTAL    ICMS_ST_VALOR_TOTAL,
                     A.VLR_FRETE,
                     A.VLR_SEGURO,
                     A.VLR_DESPESAS,
                     A.IPI_TRIBUTADO,
                     a.IPI_NAO_TRIBUTADO,
                     a.DOCNUM,
                     b.id_item,
                     b.COD_PRODUTO,
                     b.COD_UNID_MEDIDA,
                     b.COD_CLASSIF_FISCAL,
                     b.QUANTIDADE,
                     b.VLR_UNITARIO,
                     b.VLR_DESCONTO,
                     b.DESCRICAO_NOTA,
                     b.dig_cfop,
                     b.cod_grp_produto, 
                     b.cod_iva,
                     C.COD_ORIGEM_PROD,
                     B.CTA_CTB_MATERIAL,
                     A.LANCTO_CONTABIL,
                     A.CHAVE_NF_E,
                     A.NUMERO_DI,
                     c.COD_TRIBUT_ICMS,
                     c.COD_SIT_TRIB_IPI,  
                     -- DADOS DO IMPOSTO 01
                     c.COD_IMPOSTO,
                    (SELECT NVL(base_calculo,0)
                     FROM   LF_NF_entrada_IMPOSTO
                     WHERE  cod_holding   = b.cod_holding
                     and    cod_matriz    = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    id_nf_entrada   = b.id_nf_entrada
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '01'
                     and    cod_tp_lanc_imp = '1'             
                     AND    ROWNUM          = 1)  base_calculo_1,
                     --
                    (SELECT NVL(base_calculo,0)
                     FROM   LF_NF_entrada_IMPOSTO
                     WHERE  cod_holding   = b.cod_holding
                     and    cod_matriz    = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    id_nf_entrada   = b.id_nf_entrada
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '01'
                     and    cod_tp_lanc_imp = '2'             
                     AND    ROWNUM          = 1)  base_calculo_2,
                     --
                    (SELECT NVL(base_calculo,0)
                     FROM   LF_NF_entrada_IMPOSTO
                     WHERE  cod_holding   = b.cod_holding
                     and    cod_matriz    = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    id_nf_entrada   = b.id_nf_entrada
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '01'
                     and    cod_tp_lanc_imp = '3'             
                     AND    ROWNUM          = 1)  base_calculo_3,
                     --   
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '01'
                   and    cod_tp_lanc_imp = '1'
                   AND    ROWNUM        = 1)  vlr_imposto_icms_1,
                   --
                   (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '01'
                   and    cod_tp_lanc_imp = '2'
                   AND    ROWNUM        = 1)  vlr_imposto_icms_2,
                   --
                   -- Recupera a Aliquota do imposto IPI
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '01'
                   and    cod_tp_lanc_imp = '1'
                   AND    ROWNUM        = 1)  aliquota_ICMS_1,  
                   --
                   (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '01'
                   and    cod_tp_lanc_imp = '2'
                   AND    ROWNUM        = 1)  aliquota_ICMS_2,
                   --
                   --Recuperar o Valor do CST IPI
                  (SELECT cod_tribut_ipi
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding     = b.cod_holding
                   and    cod_matriz      = b.cod_matriz
                   and    cod_filial      = b.cod_filial
                   and    id_nf_entrada   = b.id_nf_entrada
                   AND    id_item         = b.id_item
                   AND    COD_TP_LANC_IMP = '1'
                   AND    COD_IMPOSTO     = '02'
                   AND    ROWNUM          = 1)  cod_tribut_ipi,
                   -- Recupera o Valor da Base de Calculo do imposto IPI
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '02'
                   AND    COD_TP_LANC_IMP = '1'
                   AND    ROWNUM        = 1)  base_calculo_ipi_1,
                  -- Recupera o Valor da Base de Calculo do imposto IPI
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '02'
                   AND    COD_TP_LANC_IMP = '2'
                   AND    ROWNUM        = 1)  base_calculo_ipi_2,
                  -- Recupera o Valor da Base de Calculo do imposto IPI
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '02'
                   AND    COD_TP_LANC_IMP = '3'
                   AND    ROWNUM        = 1)  base_calculo_ipi_3,             --
                   -- Recupera a Aliquota do imposto IPI
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '02'
                   AND    ROWNUM        = 1)  aliquota_ipi,
                   -- Recupera o Valor do imposto IPI
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '02'
                   AND    ROWNUM        = 1)  vlr_imposto_ipi,
                   --
                   -- Recuperar Valores do Imposto 03
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 03
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '03'
                   AND    COD_TP_LANC_IMP = '1'
                   AND    ROWNUM        = 1)  base_calculo_st_1,
                    -- Recupera o Valor da Base de Calculo do imposto 03
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '03'
                   AND    COD_TP_LANC_IMP = '2'
                   AND    ROWNUM        = 1)  base_calculo_st_2, 
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 03
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '03'
                   AND    COD_TP_LANC_IMP = '3'
                   AND    ROWNUM        = 1)  base_calculo_st_3,
                   -- Recupera o Tipo de lancamento do imposto 03 - Substituicao Tributaria
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '03'
                   AND    ROWNUM        = 1)  aliquota_st,
                   -- Recupera o Valor do imposto 03 - Substituicao Tributaria
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '03'
                   AND    ROWNUM        = 1)  vlr_imposto_st,
                   --
                   -- Recuperar valores do Imposto 04
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 04 - DIFAL
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '04'
                   AND    ROWNUM        = 1)  base_calculo_difal,
                   --
                   -- Recupera a Aliquota do imposto 04 - DIFAL
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '04'
                   AND    ROWNUM        = 1)  aliquota_difal,
                   -- Recupera o Valor do imposto 04 - DIFAL
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '04'
                   AND    ROWNUM        = 1)  vlr_imposto_difal,
                   --
                   -- Recuperar valores do Imposto J6
                   --
                   -- Recupera o Valor da Base de Calculo do imposto J6 - DIFAL
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J6'
                   AND    ROWNUM        = 1)  base_calculo_J6,
                   --
                   -- Recupera o Valor do imposto J6
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J6'
                   AND    ROWNUM        = 1)  vlr_imposto_J6,
                   --
                   -- Recuperar valores do Imposto J7
                   --
                   -- Recupera o Valor da Base de Calculo do imposto J7
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J7'
                   AND    ROWNUM        = 1)  base_calculo_J7,
                   --
                   -- Recupera o Valor do imposto J7
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J7'
                   AND    ROWNUM        = 1)  vlr_imposto_J7,
                   --
                   -- Recuperar valores do Imposto J8
                   --
                   -- Recupera o Valor da Base de Calculo do imposto J8
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J8'
                   AND    ROWNUM        = 1)  base_calculo_J8,
                   --
                   -- Recupera o Valor do imposto J8
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = 'J8'
                   AND    ROWNUM        = 1)  vlr_imposto_J8,
                   --
                   -- Recuperar Valores do Imposto 09 - PIS
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 09
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    COD_TP_LANC_IMP = '1'
                   AND    ROWNUM        = 1)  base_calculo_pis_1,
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 09
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    COD_TP_LANC_IMP = '2'
                   AND    ROWNUM        = 1)  base_calculo_pis_2,
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 09
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    COD_TP_LANC_IMP = '3'
                   AND    ROWNUM        = 1)  base_calculo_pis_3,
                   --
                   -- Recupera a Aliquota do imposto 09 - PIS
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    ROWNUM        = 1)  aliquota_pis,
                   -- Recupera o Valor do imposto 09 - PIS
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    ROWNUM        = 1)  vlr_imposto_pis,
                   -- Recupera o Codigo da situacao tributaria do imposto 09 - PIS
                  (SELECT cod_sit_trib_PIS
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '09'
                   AND    ROWNUM        = 1)  cod_sit_trib_pis,
                   --
                   -- Recuperar Valores do Imposto 10 - COFINS
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 10
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    COD_TP_LANC_IMP = '1'
                   AND    ROWNUM        = 1)  base_calculo_cofins_1,
                   -- Recupera o Valor da Base de Calculo do imposto 10
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    COD_TP_LANC_IMP = '2'
                   AND    ROWNUM        = 1)  base_calculo_cofins_2,
                   --
                   -- Recupera o Valor da Base de Calculo do imposto 10
                  (SELECT NVL(base_calculo,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    COD_TP_LANC_IMP = '3'
                   AND    ROWNUM        = 1)  base_calculo_cofins_3,
                   --
                   -- Recupera a Aliquota do imposto 10 - COFINS
                  (SELECT nvl(aliquota,0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    ROWNUM        = 1)  aliquota_cofins,
                   -- Recupera o Valor do imposto 10 - COFINS
                  (SELECT nvl(vlr_imposto, 0)
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    ROWNUM        = 1)  vlr_imposto_cofins,
                   -- Recupera o Codigo da situacao tributaria do imposto 10 - COFINS
                  (SELECT cod_sit_trib_cof
                   FROM   LF_NF_entrada_IMPOSTO
                   WHERE  cod_holding   = b.cod_holding
                   and    cod_matriz    = b.cod_matriz
                   and    cod_filial    = b.cod_filial
                   and    id_nf_entrada = b.id_nf_entrada
                   AND    id_item       = b.id_item
                   AND    COD_IMPOSTO   = '10'
                   AND    ROWNUM        = 1)  cod_sit_trib_cof
              from   lf_nf_entrada          a,
                     lf_nf_entrada_item     b,
                     lf_nf_entrada_imposto  c
              where  a.cod_holding   = 'JNJ BR'
              and    a.dt_entrada >= to_date('01/01/2013','dd/mm/yyyy')
              and    a.cod_status  = '01'
              and    b.cod_holding  = a.cod_holding
              and    b.cod_matriz   = a.cod_matriz
              and    b.cod_filial   = a.cod_filial
              and    b.id_nf_entrada = a.id_nf_entrada
              and    c.cod_holding   = b.cod_holding
              and    c.cod_matriz    = b.cod_matriz
              and    c.cod_filial    = b.cod_filial
              and    c.id_nf_entrada = b.id_nf_entrada
              and    c.id_item       = b.id_item
              and    c.cod_imposto   = '01'
             --
             UNION ALL
             --   
             select distinct 
                    'S'                   TIPO_NF,
                    a.COD_HOLDING,
                    a.COD_MATRIZ,
                    a.COD_FILIAL, 
                    NULL                  ID_NF,
                    a.NUM_NF,
                    A.SERIE,
                    A.COD_MODELO,
                    a.COD_CFOP_LEGAL,
                    a.COD_CLIFOR,
                    a.DT_EMISSAO,
                    NULL                  DT_LANCAMENTO,
                    a.dt_emissao          DT_ENTRADA,
                    A.COD_STATUS,
                    A.COD_UF,
                    A.MUNICIPIO,
                    A.RAZAOSOCIAL,
                    A.CGC_CPF,
                    a.VLR_TOTAL_PRODUTOS,
                    b.VLR_BRUTO           TOTAL_ITEM,
                    a.ICMS_BASE_TOTAL,
                    a.ICMS_VALOR_TOTAL,
                    a.ICMS_ST_BASE_TOTAL,
                    a.ICMS_ST_VALOR_TOTAL,
                    a.VLR_FRETE,
                    a.VLR_SEGURO,
                    a.VLR_DESPESAS,
                    a.IPI_TRIBUTADO,
                    a.IPI_NAO_TRIBUTADO,
                    A.DOCNUM,
                    b.id_item,
                    b.COD_PRODUTO,
                    b.COD_UNID_MEDIDA,
                    b.COD_CLASSIF_FISCAL,
                    b.QUANTIDADE,
                    b.VLR_UNITARIO,
                    b.VLR_DESCONTO,
                    b.DESCRICAO_NOTA,
                    b.dig_cfop,
                    b.cod_grp_produto,
                    b.cod_iva,
                    C.COD_ORIGEM_PROD,
                    B.CTA_CTB_MATERIAL,
                    A.LANCTO_CONTABIL,
                    A.CHAVE_NF_E,
                    NULL                NUMERO_DI,
                    c.COD_TRIBUT_ICMS,
                    c.COD_SIT_TRIB_IPI,  
                    c.COD_IMPOSTO,
                    --
                    (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '01'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM          = 1 )  base_calculo_1,
                     --
                    (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '01'
                    and    cod_tp_lanc_imp = '2'             
                    AND    ROWNUM          = 1)  base_calculo_2,
                     --
                    (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '01'
                    and    cod_tp_lanc_imp = '3'             
                    AND    ROWNUM          = 1)  base_calculo_3,
                     --   
                  (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '01'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM        = 1)  vlr_imposto_icms_1,
                    --
                    (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '01'
                    and    cod_tp_lanc_imp = '2'
                    AND    ROWNUM        = 1)  vlr_imposto_icms_2,
                   --
                   -- Recupera a Aliquota do imposto IPI
                  (SELECT nvl(aliquota,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '01'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM          = 1)  aliquota_ICMS_1, 
                    --
                    (SELECT nvl(aliquota,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '01'
                    and    cod_tp_lanc_imp = '2'
                    AND    ROWNUM          = 1)  aliquota_ICMS_2,
                    --
                    --Recuperar o Valor do CST IPI
                   (SELECT cod_tribut_ipi
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '02'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM          = 1)  cod_tribut_ipi,
                    --
                    -- Recupera o Valor da Base de Calculo do imposto IPI
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '02'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM        = 1)  base_calculo_ipi_1,
                    --
                    -- Recupera o Valor da Base de Calculo do imposto IPI
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '02'
                    and    cod_tp_lanc_imp = '2'
                    AND    ROWNUM        = 1)  base_calculo_ipi_2,
                    --
                    -- Recupera o Valor da Base de Calculo do imposto IPI
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '02'
                    and    cod_tp_lanc_imp = '3'
                    AND    ROWNUM        = 1)  base_calculo_ipi_3,
                    -- Recupera o Tipo de lancamento do imposto IPI
                    -- Recupera a Aliquota do imposto IPI
                   (SELECT nvl(aliquota,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '02'
                    AND    ROWNUM          = 1)  aliquota_ipi,
                    -- Recupera o Valor do imposto IPI
                   (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '02'
                    AND    ROWNUM        = 1)  vlr_imposto_ipi,
                    --
                    -- Recuperar Valores do Imposto 03
                    --
                    -- Recupera o Valor da Base de Calculo do imposto 03
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '03'
                    and    cod_tp_lanc_imp = '1'
                    AND    ROWNUM          = 1)  base_calculo_st_1,
                    --
                    -- Recupera o Valor da Base de Calculo do imposto 03
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '03'
                    and    cod_tp_lanc_imp = '2'
                    AND    ROWNUM          = 1)  base_calculo_st_2,
                    --
                    -- Recupera o Valor da Base de Calculo do imposto 03
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_municipio   = b.cod_municipio
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '03'
                    and    cod_tp_lanc_imp = '3'
                    AND    ROWNUM          = 1)  base_calculo_st_3,
                    --
                    -- Recupera o Tipo de lancamento do imposto 03 - Substituicao Tributaria
                    -- Recupera a Aliquota do imposto Substituicao Tributaria
                   (SELECT nvl(aliquota,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '03'
                    AND    ROWNUM        = 1)  aliquota_st,
                    -- Recupera o Valor do imposto 03 - Substituicao Tributaria
                   (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '03'
                    AND    ROWNUM        = 1)  vlr_imposto_st,
                    --
                    -- Recuperar valores do Imposto 04
                    --
                    -- Recupera o Valor da Base de Calculo do imposto 04 - DIFAL
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = a.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '04'
                    AND    ROWNUM        = 1)  base_calculo_difal,
                    --
                    -- Recupera a Aliquota do imposto 04 - DIFAL
                   (SELECT nvl(aliquota,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO     = '04'
                    AND    ROWNUM          = 1)  aliquota_difal,
                    -- Recupera o Valor do imposto 04 - DIFAL
                   (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = '04'
                    AND    ROWNUM        = 1)  vlr_imposto_difal,
                    --
                    -- Recuperar valores do Imposto J6
                    --
                    -- Recupera o Valor da Base de Calculo do imposto J6 - DIFAL
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = 'J6'
                    AND    ROWNUM        = 1)  base_calculo_J6,
                    --
                    -- Recupera o Valor do imposto J6
                   (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = 'J6'
                    AND    ROWNUM        = 1)  vlr_imposto_J6,
                    --
                    -- Recuperar valores do Imposto J7
                    --
                    -- Recupera o Valor da Base de Calculo do imposto J7
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = 'J7'
                    AND    ROWNUM        = 1)  base_calculo_J7,
                    --
                    -- Recupera o Valor do imposto J7
                   (SELECT nvl(vlr_imposto, 0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = 'J7'
                    AND    ROWNUM        = 1)  vlr_imposto_J7,
                    --
                    -- Recuperar valores do Imposto J8
                    --
                    -- Recupera o Valor da Base de Calculo do imposto J8
                   (SELECT NVL(base_calculo,0)
                    FROM   lf_nf_saida_imposto
                    WHERE  cod_holding     = b.cod_holding
                    and    cod_matriz      = b.cod_matriz
                    and    cod_filial      = b.cod_filial
                    and    num_nf          = b.num_nf
                    and    serie           = b.serie
                    and    subserie        = b.subserie
                    and    dt_emissao      = b.dt_emissao
                    and    cod_cfop_legal  = b.cod_cfop_legal
                    and    cod_municipio   = b.cod_municipio
                    AND    id_item         = b.id_item
                    AND    COD_IMPOSTO   = 'J8'
                    AND    ROWNUM        = 1)  base_calculo_J8,
                    --
                    -- Recupera o Valor do imposto J8
                    (SELECT nvl(vlr_imposto, 0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = 'J8'
                     AND    ROWNUM        = 1)  vlr_imposto_J8,
                     --
                     -- Recuperar Valores do Imposto 09 - PIS
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 09
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '09'
                     and    cod_tp_lanc_imp = '1'
                     AND    ROWNUM        = 1)  base_calculo_pis_1,
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 09
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '09'
                     and    cod_tp_lanc_imp = '2'
                     AND    ROWNUM        = 1)  base_calculo_pis_2,
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 09
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '09'
                     and    cod_tp_lanc_imp = '3'
                     AND    ROWNUM        = 1)  base_calculo_pis_3,
                     --
                     -- Recupera o Tipo de lancamento do imposto 09 - PIS
                      -- Recupera a Aliquota do imposto 09 - PIS
                    (SELECT nvl(aliquota,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '09'
                     AND    ROWNUM        = 1)  aliquota_pis,
                     -- Recupera o Valor do imposto 09 - PIS
                    (SELECT nvl(vlr_imposto, 0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '09'
                     AND    ROWNUM        = 1)  vlr_imposto_pis,
                     -- Recupera o Codigo da situacao tributaria do imposto 09 - PIS
                    (SELECT cod_sit_trib_PIS
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '09'
                     AND    ROWNUM        = 1)  cod_sit_trib_pis,
                     --
                     -- Recuperar Valores do Imposto 10 - COFINS
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 10
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '10'
                     and    cod_tp_lanc_imp = '1'
                     AND    ROWNUM        = 1)  base_calculo_cofins_1,
                     --
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 10
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '10'
                     and    cod_tp_lanc_imp = '2'
                     AND    ROWNUM        = 1)  base_calculo_cofins_2,
                     --
                     --
                     -- Recupera o Valor da Base de Calculo do imposto 10
                    (SELECT NVL(base_calculo,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO     = '10'
                     and    cod_tp_lanc_imp = '3'
                     AND    ROWNUM        = 1)  base_calculo_cofins_3,
                     -- Recupera a Aliquota do imposto 10 - COFINS
                    (SELECT nvl(aliquota,0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '10'
                     AND    ROWNUM        = 1)  aliquota_cofins,
                     -- Recupera o Valor do imposto 10 - COFINS
                    (SELECT nvl(vlr_imposto, 0)
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '10'
                     AND    ROWNUM        = 1)  vlr_imposto_cofins,
                     -- Recupera o Codigo da situacao tributaria do imposto 10 - COFINS
                    (SELECT cod_sit_trib_cof
                     FROM   lf_nf_saida_imposto
                     WHERE  cod_holding     = b.cod_holding
                     and    cod_matriz      = b.cod_matriz
                     and    cod_filial      = b.cod_filial
                     and    num_nf          = b.num_nf
                     and    serie           = b.serie
                     and    subserie        = b.subserie
                     and    dt_emissao      = b.dt_emissao
                     and    cod_cfop_legal  = b.cod_cfop_legal
                     and    cod_municipio   = b.cod_municipio
                     AND    id_item         = b.id_item
                     AND    COD_IMPOSTO   = '10'
                     AND    ROWNUM        = 1)  cod_sit_trib_cof
             from   lf_nf_saida         a,
                    lf_nf_saida_item    b,
                    lf_nf_saida_imposto c
             where  a.cod_holding   = 'JNJ BR'
             and    a.dt_emissao    >= to_date('01/01/2013','dd/mm/yyyy')
             and    a.cod_status     = '01'
             and    b.cod_holding    = a.cod_holding
             AND    b.cod_matriz     = a.cod_matriz
             AND    b.cod_filial     = a.cod_filial
             AND    b.num_nf         = a.num_nf
             AND    b.serie          = a.serie
             AND    b.subserie       = a.subserie
             AND    b.dt_emissao     = a.dt_emissao
             AND    b.cod_cfop_legal = a.cod_cfop_legal
             AND    b.cod_municipio  = a.cod_municipio
             AND    c.cod_holding    = b.cod_holding
             AND    c.cod_matriz     = b.cod_matriz
             AND    c.cod_filial     = b.cod_filial
             AND    c.num_nf         = b.num_nf
             AND    c.serie          = b.serie
             AND    c.subserie       = b.subserie
             AND    c.dt_emissao     = b.dt_emissao
             AND    c.cod_cfop_legal = b.cod_cfop_legal
             AND    c.cod_municipio  = b.cod_municipio
             AND    c.id_item        = b.id_item
             and    c.cod_imposto    ='01';
    • Por nicolasbessa
      Boa tarde!
       
      Como aplicar a regra abaixo em um select?

      Regra Join
      Quando o campo substr(x, 1,1)  ='1'
      montar a chave de pesquisa:
      y = '8' AND y1 =  'L'||lpad( x1, 2)) 

      Quando o campo substrt(x, 1,1) for igual ='A'
      montar a chave de pesquisa:
      y = '8' AND y1 =  'M'||lpad( x1, 2)) 
       
      obrigado!
    • Por Omar~
      É o seguinte tenho duas tabelas aqui estão elas
       
      Então eu tenho uma tabela para setores e outra tabela para páginas.
      As páginas são separadas de acordo com os setores existentes, uso para identificar o setor que a página pertence pela coluna page_sector
      Que sempre é igual a coluna sector_hash da tabela de setores.
       
      Agora ao problema, como eu faria a leitura da tabela de pages, separando as páginas com sua relação ao setor (Agrupando as páginas em seu setor). Certo, mas isso é só usar um ORDER BY, mas preciso regatar o título do setor, que logo está em outra tabela.
      Mas então simples não é, é só fazer um select nas duas tabelas.....
      Entra a dificuldade aqui pois estou com dificuldade de renderizar o HTML, a não ser que eu faça algumas gabiarras veja:
      <?php $selectA = new Select(); $selectA->setQuery('SELECT * FROM sectors'); $selectB = clone $selectA; $selectB->setQuery('SELECT * FROM pages'); foreach ($selectA->result() as $sector) { echo '<br>-Setor : ' . $sector->sector_title . '<br>'; foreach ($selectB->result() as $pages) { if ($pages->page_sector == $sector->sector_hash) { echo '<br>..... Página :' . $pages->page_title . '<br>'; } } echo '<br>- Fim do setor '. $sector->sector_title .'<br>----------------<br>'; }  
      O que no momento com os registros de testes imprime isso:
       
      Seria assim mesmo a renderização final, setor por setor e páginas dentro de cada setor correspondente.
      Mas aí que entra a X da questão.
      - Precisei acessar 2 vezes o banco // Teria como fazer através de 1 select só?
      foreach dentro de foreach  // Isso é muito esquisito ao meu ver
       
      Alguma sugestão de como dar para fazer diferente?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.