[firebase-br] TRUNC em SQL - Alternativas

Eduardo Jedliczka eduardo em gerasoftinfo.com.br
Qui Dez 16 17:22:29 -03 2004


Daniel, no FB 3.0 terá funções internas específicas para isto, como Round,
Trunc e Floor.

Algumas pessoas cogitavam a disponibilidade destas funções na versão 2, mas
acho que são minoria.

A princípio acho que a solução para o seu problema é utilizar uma UDF
mesmo...

[s]

=====================
Eduardo Jedliczka
GeraSoft Informática
Apucarana - PR
=====================
----- Original Message ----- 
From: "Daniel / Tecnobyte" <temp em tecnobyte.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, December 16, 2004 4:58 PM
Subject: [firebase-br] TRUNC em SQL - Alternativas


> Atualmente eu conheço duas formas de truncar um valor em Firebird:
>
> 1. UDF
> 2. CAST(CAST(Valor AS VARCHAR(30)) AS INTEGER)
>
> A primeira forma depende de biblioteca externa e por isto evito usá-la
para
> não criar dependências. A segunda forma requer uma codificação muito
> desajeitada e por isto também não vejo como uma forma muito boa.
>
> Até onde sei o Firebird não dispõe de uma função interna para isto. Será
que
> em versões futuras isto vai existir? O Ansi SQL não prevê uma forma padrão
> para truncar valores numéricos?
>
> NOTA!
>
> Até o atual momento minhas aplicações sempre trabalham com arredondamento
e
> fazer isto no Firebird é moleza. No entanto a legislação do ECF mudou e
> agora obriga o uso de truncamento nos cálculos. Arredondamento não é mais
> permitido, especialmente em equipamentos novos.
>
> Então para atender à legislação devo alterar meus sistemas para trabalhar
> também com truncamento. Será uma tarefa árdua, pois uso bastantes campos
> calculados no DB, envolvendo multiplicações, etc. O problema principal
agora
> é a falta de uma função interna no Firebird para fazer o truncamento. Será
> que a melhor alternativa é UDF mesmo?
>
> Atenciosamente.
>
> Daniel P. Guimarães
> Tecnobyte Informática
> www.tecnobyte.com.br
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>





Mais detalhes sobre a lista de discussão lista