Campo numerico mostrando letra

Delphi

22/08/2012

Olá, estou iniciando na programação delphi, e gostaria da ajuda de voces com um problema que encontrei aqui.
A aplicação esta mostrando em alguns casos a quantidade de estoque dessa forma, Ex: 4,44089209850062e-16
E não sei por que isso acontece, e como resolver.
Devjunior

Devjunior

Curtidas 0

Respostas

William

William

22/08/2012

Colega vc está usando TEdits ou TDBEdtis para exibir os valores?

No banco está sendo exibido corretamente?

Qual o tipo desse campos?

Em situações normais o componente só exibi o conteúdo atual do campo, há não ser que exista alguma função q trabalhe com esses valores antes deles serem carregados no componente.
GOSTEI 0
Devjunior

Devjunior

22/08/2012

Os valores são mostrados em Edits, mas essa quantidade esta assim no banco de dados.
No banco o tipo de dado é Float.
GOSTEI 0
Devjunior

Devjunior

22/08/2012

Os valores são mostrados em Edits, mas essa quantidade esta assim no banco de dados.
No banco o tipo de dado é Float.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

22/08/2012

Valores desse tipo geralmente são tidos como ´´lixo´´, ou seja, resultantes de operações matemáticas não exatas. Esse valor nada mais é do que um número muito pequeno exibido em notação científica. Por algum motivo ele foi salvo no banco. Verifique se o campo tem DEFAULT 0, se não tiver, sugiro que coloque. Verifique ainda as operações que gravam dados nesse campo, alguma delas pode ter dado esse valor que, na prática, de veria ser ZERO.

Boa sorte.
GOSTEI 0
William

William

22/08/2012

Em última hipótese vc pode usar a função FormatFloat('##.##0.00', <Valor_Float>), que recebe 2 parâmetros e retorna uma string formatada.
GOSTEI 0
Joel Rodrigues

Joel Rodrigues

22/08/2012

Ou, dependendo da forma como está trazendo esses dados, alterar o DisplayFormat do campo para "#,##0.00".
GOSTEI 0
Deivison Melo

Deivison Melo

22/08/2012

Vc deverá formatar os valores para que sejam apresentados corretamente!

Recomendo a formatação já via sql caso esteja usando banco de dados, caso contrário, fazer a formatação dos valores dentro do próprio delphi.

http://www.hardware.com.br/comunidade/sc6010-duvida/1242110/

http://www.arquivodecodigos.net/dicas/delphi-como-usar-a-funcao-formatfloat-para-formatar-valores-de-ponto-flutuante-em-delphi-2737.html
GOSTEI 0
Rad Informatica

Rad Informatica

22/08/2012

Muito obrigado a todos que responderam, vou fazer os testes aqui.
GOSTEI 0
POSTAR