Fórum Campo numerico mostrando letra #422175

22/08/2012

0

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

Responder

Posts

22/08/2012

William

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.
Responder

Gostei + 0

22/08/2012

Devjunior

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

Gostei + 0

22/08/2012

Devjunior

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

Gostei + 0

22/08/2012

Joel Rodrigues

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.
Responder

Gostei + 0

22/08/2012

William

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.
Responder

Gostei + 0

22/08/2012

Joel Rodrigues

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

Gostei + 0

22/08/2012

Deivison Melo

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
Responder

Gostei + 0

23/08/2012

Rad Informatica

Muito obrigado a todos que responderam, vou fazer os testes aqui.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar