ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Problemas de formatação - Urgente

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
valnei
Novato
Novato


Registrado: Terça-Feira, 21 de Setembro de 2004
Mensagens: 14

MensagemEnviada: Qua Jul 16, 2008 10:09 am    Assunto: Problemas de formatação - Urgente Responder com Citação

Bom dia caros colegas.

Estou com um problema que não achei no fórum, apesar de ficar procurando quase a manhã inteira.
É o seguinte.

Tenho um componente Edit1 que receberá o valor total do produto, então
se entro com a informação em uma variável para calcular chamada Valor_Total, obtenho inclusive pela calculadora convencional:

- Meia duzia de ovos brancos a R$ 2.19 a dúzia, então faço o seguinte calculo.

0.50 X 2,19 da um total de 1.095, este valor total se eu colocar para mostrar no campo Edit1 através do seguinte comando:

Edit1.Text := FormatFloat('###,##0.00', Valor_Total);

Dá o valor 1.09, isto esta correto,

Agora vem o problema

0.50 x 2,39 da um total de 1,195, se eu mostrar no campo edit1, utilizando o mesmo comando acima da R$ 1,20, ta errado pq ele aproximou, da um centavo de diferença, e o cliente que estiver fazendo esta compra pode reclamar por causa de 1 centavo.

O engraçado é que no exemplo de 1.095 ele não arredonda, e no valor 1.195 ele arredonda.

Isto esta quebrando minha cabeça. Alguém poderia me ajudar com isto.
Sei que pode ser o tipo de formatação. Lembrando que tem que aparecer certinho o valor como se fosse em moeda, pois isto é um programa de venda (Frente de Caixa) e agora que percebemos este pequeno detalhe de um centavo.

Grato a todos

Valnei.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ws_junior
Membro Junior
Membro Junior


Registrado: Sábado, 26 de Mai de 2007
Mensagens: 311
Localização: Goiânia - Goiás

MensagemEnviada: Sex Jul 18, 2008 8:48 am    Assunto: Responder com Citação

Citação:
procedure TForm1.Button1Click(Sender: TObject);
var qnt, pr, total: Currency;
begin
qnt:= StrToCurr(quantidade.Text);
pr:= StrToCurr(preco.Text);
total:= qnt * pr;
totalEdit.Caption:= CurrToStr(total);
end;


Testando assim retorna o valor certo, porem com 3 casas. No entanto retorna o valor de 1,195, coisa que vc tera que arredondar na hora de somar o total.
_________________
**Coloque [RESOLVIDO], sempre!**

Silva Junior
SistemFact Sistemas Informáticos
http://www.sistemfact.com
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB