[firebase-br] Tipo de campo numérico, float, Conversão FB 3 + IbObjects [RESOLVIDO]

Gustavo Novaes gutonovaes19 em gmail.com
Sex Out 25 16:06:06 -03 2019


Obrigado mais uma vez Gladiston.
Abraço.

*Gustavo Novaes *

Em sex, 25 de out de 2019 às 14:20, Gladiston Santana <gladiston em vidy.com.br>
escreveu:

> Os tipos BCD tiveram uma padronização recente no novo Delphi e por isso os
> TFields da nova versão são incompativeis com os TFields anteriores do tipo
> BCD.
> Suas opções são remover os TFields e incluí-los novamente ou então usar um
> recurso do TFDConnection para mapear os tipos, há um video da embarcadero
> no youtube (em portugues) que mostra como fazer isso, tem até um exempl
> usando o BDE.
>
> Quando ao que usar como tipo, bem não existe currency no Firebird, então
> você pode usar float mesmo ou numeric(18,2).
> Um problema ao usar numeros são as precisões quando você junta um conjunto
> de dados e os soma no delphi e os soma também no firebird e notará que
> haverá diferenças.
> O delphi pode trabalhar com corrency ou float (double) então se vier a usar
> numeric(18,2) e tiver que jogar seu valor numa variavel currency ou double
> no delphi  você perderá a precisão que havia e notará resultados diferentes
> de soma. Eu tentei procurar na documentação do delphi a muito tempo atrás
> em como criar um tipo numerico que represente (18,2) nativamente, mas não
> encontrei como, mas achei um monte de explicação do porque não fazer isso.
> Assim, se desejar precisão absoluta é melhor usar float no banco (double no
> delphi) e se preocupar apenas em mascarar os resultados com 2 casas.
>
> []´s e sucesso.
>
> Em sex, 25 de out de 2019 às 11:30, Gustavo Novaes <gutonovaes19 em gmail.com
> >
> escreveu:
>
> > Bom dia.
> >
> > Estive lendo um documento no site sobre o assunto.
> > Estou convertendo o banco de dados paradox para Firebird 3.
> >
> > Tenho campos numéricos com seguintes propositos.
> > - valores monetários - No paradox, ftcurrency e Float.
> > - índices de conversão de moeda - float
> > - expressão de medidas (metros, centimetros, área) - float
> >
> > Quais tipos de dado devo usar no banco de dados firebird ?
> >
> > Após converter as units delphi, campos float foram configurados como Bcd.
> > Está causando erro "type mismatch for field xxxx, expecting float atual:
> > BCD-Edatabaseerror.
> >
> > Esse erro deve-se ao tipo de campo usado no banco ou preciso fazer algum
> > ajuste no IboOjects?
> >
> > PS: Cantu, não vi que errei o endereço de destinatário e acabei enviado
> > errado. Desculpe-me.
> > Obrigado.
> >
> > *Gustavo Novaes *
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas:
> > http://www.firebase.com.br/pesquisa_lista.html
> >
>
>
> --
> A Vidy possui um Sistema de Gestão da Qualidade estruturado e com
> Certificação ISO 9001 há mais de 10 anos, mantendo seu foco na Qualidade e
> na Melhoria Continua.
>
> Em março de2018 migramos com sucesso para a nova versão da ISO 9001.
>
> Somos a única Empresa Brasileira de Engenharia de Laboratórios com
> certificação com o Escopo Completo; desde Projetos, Engenharia, Construção,
> Fabricação e Instalação de Laboratórios.
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas:
> http://www.firebase.com.br/pesquisa_lista.html
>



Mais detalhes sobre a lista de discussão lista