[firebase-br] Iif e case
Murilo Bento
murilo em cprinformatica.com.br
Ter Set 5 16:35:31 -03 2006
problema resolvido =D
select case
when vl_valor < 0 then (vl_valor * -1)
when vl_valor >= 0 then vl_valor
end as valor_positivo
from....
"Murilo Bento" <murilo em cprinformatica.com.br>
escreveu na mensagem news:edkj63$9qd$1 em sea.gmane.org...
> No Firebird 2.0 foi inserida a função Iif, eu naõ cheguei a testar, mas
> tenho 2 dúvidas..
>
> 1ª - Eu poderia usar-lo exatamente como no delphi, por exemplo, assim :
>
> select Iif(vl_valor < 0, vl_valor, (vl_valor * -1)) from ........
>
>
> ??????????
>
> 2ª - No Firebird 1.5?? Nõa há o Iif, sei que tem o case,que muito dizem
> que é a mesma idéia, como eu faria o select acima no Firebird 1.5, é claro
> possivelmente usando o case, pois acontece que o valor tem sempre que vir
> positivo, estou usando a função abs de uma UDF, mas no dbExpress está
> dando o seguinte erro:
>
> dbExpress Error: Invalid Precision.
>
> Não sei o motivo, mas sei que é o abs, por isso gostaria de não precisar o
> usar a função, e sim um comando mais "simples", que me da a garantia de
> que não vai ocorrer este erro.
>
>
> E é calro se alguém souber como resolver o erro do abs com o dbExpress
> isso seria muito bem vindo, por que já que ela já está sendo usada no
> sistema, não haveria problema.
>
>
> Obrigado.
>
>
>
>
--------------------------------------------------------------------------------
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista