Problema com uma CASE
Olá galera tudo bem com vocês?
eu estou com o seguinte código:
O meu problema está aí. Quando o A.STATUSLF = ´C´ ou seja CANCELADO eu gostaria q não mostrasse nada no relatório somente a palavra CANCELADO e do jeito q está ele continua mostrando os dados do relatório.
Eu estou usando o SQL 2000 e o Delphi 7.
Desde de já eu agradeço
eu estou com o seguinte código:
select DATEPART(DD,DATAEMISSAO) DIA, A.DOCINI, CASE WHEN A.STATUSLF = ´C´ THEN ´CANCELADO´ WHEN A.STATUSLF <> ´C´ THEN ´´ END AS STATUSLF, B.BASETRB, B.ALIQTRB, B.VALORTRB, B.VLRISENTO, A.CODCOLIGADA CODCOLIGADA$ from DLAF A, DTRBLAF B WHERE A.IDLAF = B.IDLAF AND B.CODTRB = ´ISS´ AND A.CODCOLIGADA = :CODCOLIGADA AND A.CODFILIAL = :CODFILIAL AND B.CODCOLIGADA = :CODCOLIGADA AND A.TIPOLF = ´S´ AND A.DATAEMISSAO >= :DATAINICIAL AND A.DATAEMISSAO <= :DATAFINAL ORDER BY DIA ASC
O meu problema está aí. Quando o A.STATUSLF = ´C´ ou seja CANCELADO eu gostaria q não mostrasse nada no relatório somente a palavra CANCELADO e do jeito q está ele continua mostrando os dados do relatório.
Eu estou usando o SQL 2000 e o Delphi 7.
Desde de já eu agradeço
Prof. Baco
Curtidas 0
Respostas
Rjun
27/09/2005
Você esta usando QuickReport? Acho que você teria que fazer esse controle no código e não no SQL.
GOSTEI 0
Prof. Baco
27/09/2005
Pois é doutor mas eu vou precisar desta consulta em SQL mesmo.
Se tiver como
Se tiver como
GOSTEI 0
Prof. Baco
27/09/2005
Será que alguém pode me ajudar neste caso??
Por favor
Por favor
GOSTEI 0
Prof. Baco
27/09/2005
[b:adf233daff]Problema Resolvido[/b:adf233daff]
Estou reportando este problema caso alguém tenha o mesmo que eu e que não tenha conseguido resolver via SQL.
Espero ter ajudado.
As pessoas que tentaram me ajudar muito obrigado e está aí a solução do problema.
Estou reportando este problema caso alguém tenha o mesmo que eu e que não tenha conseguido resolver via SQL.
select DATEPART(DD,DATAEMISSAO) DIA, A.DOCINI, BASETRB = CASE WHEN A.STATUSLF <> ´C´ THEN B.BASETRB END, ALIQTRB = CASE WHEN A.STATUSLF <> ´C´ THEN B.ALIQTRB END, VALORTRB = CASE WHEN A.STATUSLF <> ´C´ THEN B.VALORTRB END, VLRISENTO = CASE WHEN A.STATUSLF <> ´C´ THEN B.VLRISENTO END, case WHEN A.STATUSLF = ´C´ THEN ´CANCELADO´ else ´´ end as STATUSLF, A.CODCOLIGADA CODCOLIGADA$ from DLAF A, DTRBLAF B WHERE A.IDLAF = B.IDLAF AND B.CODTRB = ´ISS´ AND A.CODCOLIGADA = :CODCOLIGADA AND A.CODFILIAL = :CODFILIAL AND B.CODCOLIGADA = :CODCOLIGADA AND A.TIPOLF = ´S´ AND A.DATAEMISSAO >= :DATAINICIAL AND A.DATAEMISSAO <= :DATAFINAL ORDER BY DIA ASC
Espero ter ajudado.
As pessoas que tentaram me ajudar muito obrigado e está aí a solução do problema.
GOSTEI 0