none
SCRIPT SQL SERVER RRS feed

  • Pergunta

  • Bom dia. 

    Estou desenvolvendo um relatório com o seguinte script:

    SELECT DISTINCT 
    ped.filial,
    ped.numped,
    cr.EMISSAO,
    ped.filial + '/' + CAST(ped.numped AS varchar(7)) AS contrato,
    ped.razaocli, 
    ped.cgccli,
    ped.telecli,
    case when DATEPART(MONTH, cr.vencimento) = (select MONTH(getdate())+1) then SUM(cr.valornamoeda1) else 0 end as teste

    FROM 
    dbo.PEDICLICAD AS ped
    JOIN dbo.VENDASSCAD AS v ON ped.numped = v.numped
    JOIN dbo.CONTAARECEBER_R AS cr ON cr.RDOCDEORIGEM = v.oiddocdeorigem 

    WHERE

    (ped.rdocplano IN (73146881, 22988083))
    and ped.numped in (3372862,3373019)

    GROUP BY 
    ped.filial,
    ped.numped,
    cr.EMISSAO, 
    ped.razaocli,
    ped.cgccli, 
    ped.telecli,
    v.oiddocdeorigem,
    cr.VENCIMENTO

    O resultado desse script é esse:

    Minha dúvida: Como eu faço para retornar somente o valores que vencerão no próximo mês? eu sei que está retornando o zero porque utilizei o 'Else 0', mas se eu não utilizar isso, retorna NULL, porque o cliente tem parcelas a vencer em vários meses.

    Obrigado!


    quarta-feira, 3 de abril de 2013 11:52

Respostas

  • Cézar,

    Se o valor da coluna da tabela CONTAARECEBER_R da coluna vencimento retorna como NULL, você pode utilizar mais um campo de filtragem na sua cláusula where,  para não trazer os valores NULL

    WHERE cr.vencimento is not null and
    
    (ped.rdocplano IN (73146881, 22988083))
    and ped.numped in (3372862,3373019)


    []'s

    • Sugerido como Resposta fernando silva 1 quinta-feira, 4 de abril de 2013 12:29
    • Marcado como Resposta César Felix sexta-feira, 12 de abril de 2013 11:45
    quarta-feira, 3 de abril de 2013 12:29
  • Cézar,

    Para não mostrar os valores nullos é só adicioanar a restrição como sugerido pelo Fernando, outra coisa que observei no seu script é a utilização do DISTINCT, talvez não seja necessário uma vez que você está agrupando o resultado.

    Espero ter ajudado


    David Silva | MCT | MCITP| MCTS | MCP | ITILF | Blog: http://tilive.wordpress.com

    • Sugerido como Resposta fernando silva 1 quinta-feira, 4 de abril de 2013 12:29
    • Marcado como Resposta César Felix sexta-feira, 12 de abril de 2013 11:45
    quarta-feira, 3 de abril de 2013 18:30

Todas as Respostas

  • Cézar,

    Se o valor da coluna da tabela CONTAARECEBER_R da coluna vencimento retorna como NULL, você pode utilizar mais um campo de filtragem na sua cláusula where,  para não trazer os valores NULL

    WHERE cr.vencimento is not null and
    
    (ped.rdocplano IN (73146881, 22988083))
    and ped.numped in (3372862,3373019)


    []'s

    • Sugerido como Resposta fernando silva 1 quinta-feira, 4 de abril de 2013 12:29
    • Marcado como Resposta César Felix sexta-feira, 12 de abril de 2013 11:45
    quarta-feira, 3 de abril de 2013 12:29
  • Cézar,

    Para não mostrar os valores nullos é só adicioanar a restrição como sugerido pelo Fernando, outra coisa que observei no seu script é a utilização do DISTINCT, talvez não seja necessário uma vez que você está agrupando o resultado.

    Espero ter ajudado


    David Silva | MCT | MCITP| MCTS | MCP | ITILF | Blog: http://tilive.wordpress.com

    • Sugerido como Resposta fernando silva 1 quinta-feira, 4 de abril de 2013 12:29
    • Marcado como Resposta César Felix sexta-feira, 12 de abril de 2013 11:45
    quarta-feira, 3 de abril de 2013 18:30