Ir para conteúdo


Foto

(Resolvido) Problema ao mostrar valores monetários em edits...


9 respostas neste tópico

#1 robinhocne

robinhocne

    O que sabemos é uma gota, o que ignoramos é um Oceano!

  • Membros
  • 774 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 20 December 2007 - 19:28 PM

Bom vamos para mais um probleminha.

No meu formulário do caixa onde faço os lancamentos de entradas e saidas de valores teria que ajustar umas coisas que não estou conseguindo!

1º>Primeiramente, nesse Tópico que foi resolvido eu fiz uma lançamento de por exemplo: 250,50 e na hora que eu abro o formulário do caixa como eu assim que abro ele me mostra os lancamento do dia e somando os valores nos edits abaixo, mas ele dá esse erro:

QUOTE
'250,50' is not a valid integer value


Esse é um procedimento que eu fiz o AtualizaCaixa para me atualizar e mostrar no DbGrid (DbgCaixa)
Ligado em um DataSource (DtsCaixa) e IbQuery (QryCaixa):

CODE
procedure Tfrmcai.AtualizaCaixa;
begin
   With QryCaixa do
      Begin
         QryCaixa.Close;
         QryCaixa.Sql.Text := 'Select * from lancamento  where Pagamento = Current_date';
         QryCaixa.Open;
      end;
      
   //Soma o saldo do Dia
With QryTotais do
      Begin
         QryTotais.Close;
         QryTotais.Sql.Text := 'Select sum(Valor)as "+" From Lancamento where tipo =  1 and pagamento = Current_date';
         QryTotais.Open;
      end;
With QryTotais2 do
      Begin
         QryTotais2.Close;
         QryTotais2.Sql.Text := 'Select sum(valor) as "-" From Lancamento where tipo = 0 and pagamento = Current_date';
         QryTotais2.Open;
      End;
     TxtTlDia.text := ((FloatToStr((QryTotais.FieldByName('+').AsFloat) - (QryTotais2.FieldByName('-').AsFloat)) ));

     // Saldo Total
With QrySaldo do
      Begin
         QrySaldo.Close;
         QrySaldo.Sql.Text := 'Select sum(Valor)as "+" From Lancamento where tipo = 1 and pagamento is not null';
         QrySaldo.Open;
      end;
With QrySaldo2 do
      Begin
         QrySaldo2.Close;
         QrySaldo2.Sql.Text := 'Select sum(Valor)as "-" From Lancamento where tipo = 0 and pagamento is not null';
         QrySaldo2.Open;
      End;
     TxtSoma.text := ( (FloatToStr((QrySaldo.FieldByName('+').AsFloat) - (QrySaldo2.FieldByName('-').AsFloat)) ));

     // Saldo Anterior
With QryAnterior do
      Begin
         QryAnterior.Close;
         QryAnterior.Sql.Text := 'select sum(valor) from lancamento where Tipo = 1' +
         ' and extract(year from pagamento) = extract(year from current_date)' +
         ' and extract(month from pagamento) = extract(month from current_date) -1';
         QryAnterior.Open;
      end;
With QryAnterior2 do
      Begin
         QryAnterior2.Close;
         QryAnterior2.Sql.Text := 'select sum(valor) from lancamento where Tipo = 0 and ' +
         'extract(year from pagamento) = extract(year from current_date)' +
         'and extract(month from pagamento) = extract(month from current_date) -1';
         QryAnterior2.Open;
      End;
     TxtAnterior.text := ( (FloatToStr((QryAnterior.FieldByName('sum').AsFloat) - (QryAnterior2.FieldByName('sum').AsFloat)) ));


    // Saldo Total do Mês
With QryMes do
      Begin
         QryMes.Close;
         QryMes.Sql.Text := 'select sum(valor) from lancamento where Tipo = 1' +
         ' and extract(year from pagamento) = extract(year from current_date)' +
         ' and extract(month from pagamento) = extract(month from current_date)';
         QryMes.Open;
      end;
With QryMes2 do
      Begin
         QryMes2.Close;
         QryMes2.Sql.Text := 'select sum(valor) from lancamento where Tipo = 0 and ' +
         'extract(year from pagamento) = extract(year from current_date)' +
         'and extract(month from pagamento) = extract(month from current_date)';
         QryMes2.Open;
      End;
     TxtMes.text := ( (FloatToStr((QryMes.FieldByName('sum').AsFloat) - (QryMes2.FieldByName('sum').AsFloat)) ));


     // Para quando for negativo mostrar em vermelho o saldo do dia
     If StrToInt(TxtTlDia.text) < 0 Then
        TxtTlDia.font.color := ClRed
     Else
        TxtTlDia.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total
     If StrToInt(TxtSoma.text) < 0 Then
        TxtSoma.font.color := ClRed
     Else
        TxtSoma.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo Anterior
          If StrToInt(TxtAnterior.text) < 0 Then
        TxtAnterior.font.color := ClRed
     Else
        TxtAnterior.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total do mes
     If StrToInt(TxtMes.text) < 0 Then
        TxtMes.font.color := ClRed
     Else
        TxtMes.font.color := clBlack;  

    //TxtTlCaixa.text := (TxtTlDia.text + TxtSaldo.text);   mostrar os resultados de dois em um

end;

-----------------------
Sempre informe que foi resolvido o seu tópico!


E se acontecesse oque não aconteceu o que iria acontecer?
Se Hoje seria Ontem então Hoje seria Amanhã!

#2 Micheus

Micheus

    ¨°°º0(Delphi Lover)0º°°¨

  • Veteranos
  • 3207 posts
  • Gender:Male
  • Location:Blumenau - SC

Postado 20 December 2007 - 22:15 PM

Robinhocne, alterei o título para que mostrasse adequadamente sua dúvida. Do jeito que estava, achei que você queria formatar os edits para mostrar no formato monetário (tipo, "R$ 250,00")

Bom o erro é bem óbvio: '250,50' is not a valid integer value
que sugere que em algum momento você está querendo converter para inteiro algo que não o é.
A pista fica por conta da mensagem, então em algum ponto você tinha uma chamada a função que converte para integer. Localizamos elas em seguimentos como este do seu código:
CODE
...
     If StrToInt(TxtTlDia.text) < 0 Then    < ========== AQUI
        TxtTlDia.font.color := ClRed
     Else
        TxtTlDia.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total
     If StrToInt(TxtSoma.text) < 0 Then    < ========== AQUI
...

Primeiro, o número formatado como está, já não corresponde a um float - lembra a história do "." e da ","?
Então, para converter um texto numerico, a casa decimal deverá ser o "."!!!

Para a aplicação que você pretende, acho que seria mais produtivo você simplesmente verificar a existência do sinal "-" no texto do número, como segue:
CODE
...
     If Pos('-', TxtTlDia.text) > 0 Then
        TxtTlDia.font.color := ClRed
     Else
        TxtTlDia.font.color := clBlack;


em caso que fosse necessário algum tipo de operação, seria mais interessante, então, que você utilizasse variáveis para armazenar os valores e quando necessário, os convertesse para string e mostrasse nos edits.

Abraços
"Há sempre, pelo menos, dois modos de fazer uma mesma coisa.
Mesmo que sejam: certo e errado."
(Micheus)

¨°°º0) micheus.4Shared.com - Alguns exemplos em Delphi (0º°°¨

#3 robinhocne

robinhocne

    O que sabemos é uma gota, o que ignoramos é um Oceano!

  • Membros
  • 774 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 21 December 2007 - 07:58 AM

É Micheus realmente é também para formatar os Edits são duas coisas que eu não consiguo fazer.

1º Queria ver como eu faço para formatar no Edit e salvar, utilizei daquele jeito que foi feito no Tópico, mas não deu certo ele está dando esse erro.
Foi dessa maneira que eu fiz:

CODE
Add (AnsiReplaceStr(Format('%.2f',[TxtVal.Text]), ',', '.'));


Erro
QUOTE
Format '%.2f' invalid or incompatible with argument


Ai...

2º Quando eu abro ele me dá esse erro,'250,50' is not a valid integer value mas pelo que eu vi o erro é onde eu faço as instruções para mostrar nos Edits, mas esse procedimento não estou entendendo mudei algumas coisas do "+" e "-", mas nada como eu prosiguo, dá uma pista para eu tentar desvendar!

Então o Problema seria aqui:

CODE
TxtTlDia.text := ((FloatToStr((QryTotais.FieldByName('+').AsFloat) - (QryTotais2.FieldByName('-').AsFloat)) ));

Editado por robinhocne, 21 December 2007 - 08:03 AM.

-----------------------
Sempre informe que foi resolvido o seu tópico!


E se acontecesse oque não aconteceu o que iria acontecer?
Se Hoje seria Ontem então Hoje seria Amanhã!

#4 Micheus

Micheus

    ¨°°º0(Delphi Lover)0º°°¨

  • Veteranos
  • 3207 posts
  • Gender:Male
  • Location:Blumenau - SC

Postado 21 December 2007 - 09:37 AM

robinhocne, neste caso, talvez a solução de quase todos os seus problemas seja pelo uso do componente TCurrencyEdit do pacote RxLib (paleta RX Controls).

- Veja que com ele, você poderá obter a formatação monetária: DisplayFormat por padrão é definida como "R$ ,0.00;-R$ ,0.00";
- Voce atribui um valor numérico (extended) diretamente a ele e automaticamente ele irá formatar o texto a ser mostrado;
- A edição fica fácil, porque ele aceita a vírgula numa boa;

Quando você precisar trabalhar com o valor numérico, utiliza a propriedade Value: CurrencyEdit1.Value := 250.5;
Quando precisar do texto formatado, utiliza a propriedade DisplayText: Label1.Caption := CurrencyEdit1.DisplayText;

Por acaso você o tem instalado? Se não veja este post
"Há sempre, pelo menos, dois modos de fazer uma mesma coisa.
Mesmo que sejam: certo e errado."
(Micheus)

¨°°º0) micheus.4Shared.com - Alguns exemplos em Delphi (0º°°¨

#5 Micheus

Micheus

    ¨°°º0(Delphi Lover)0º°°¨

  • Veteranos
  • 3207 posts
  • Gender:Male
  • Location:Blumenau - SC

Postado 21 December 2007 - 12:24 PM


Mas complementando...
sobre o erro: Format '%.2f' invalid or incompatible with argument

robinhocne, se você der uma olhada no help sobre format, vai saber que quando você utilizar o %f, significa que no array de valores que você passa a função, o valor correspondente a este "parâmetro" tem que ser um número!
E você está passando o quê....? Um string. blink.gif
"Há sempre, pelo menos, dois modos de fazer uma mesma coisa.
Mesmo que sejam: certo e errado."
(Micheus)

¨°°º0) micheus.4Shared.com - Alguns exemplos em Delphi (0º°°¨

#6 robinhocne

robinhocne

    O que sabemos é uma gota, o que ignoramos é um Oceano!

  • Membros
  • 774 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 23 December 2007 - 21:08 PM

Bom, Resolvido este erro

CODE
is not a valid integer value


Este erro estava dando por eu estar tentado converter um texto numerico (String) para um Float (numero real) nesses códigos:

CODE
// Para quando for negativo mostrar em vermelho o saldo do dia
     If StrToInt(TxtTlDia.text) < 0 Then
        TxtTlDia.font.color := ClRed
     Else
        TxtTlDia.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total
     If StrToInt(TxtSoma.text) < 0 Then
        TxtSoma.font.color := ClRed
     Else
        TxtSoma.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo Anterior
          If StrToInt(TxtAnterior.text) < 0 Then
        TxtAnterior.font.color := ClRed
     Else
        TxtAnterior.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total do mes
     If StrToInt(TxtMes.text) < 0 Then
        TxtMes.font.color := ClRed
     Else
        TxtMes.font.color := clBlack;  

end;


Eu Estava usando edits para retornar os dados que queria que mostrasse neles, ai foi mudado para o TCurrencyEdit um componente do pacote do RxLib, onde ele tem uma propriedade chamada Value que já me retorna os dados em real!, pois então não precisaria fazer uma conversão FloatToStr (no caso um ponto flutuante para String), pois sendo que não precisaria checar nada, então os dados ficaria assim:

CODE
// Para quando for negativo mostrar em vermelho o saldo do dia
     If TxtTlDia.Value < 0 Then
        TxtTlDia.font.color := ClRed
     Else
        TxtTlDia.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total
     If TxtSoma.Value < 0 Then
        TxtSoma.font.color := ClRed
     Else
        TxtSoma.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo Anterior
     If TxtAnterior.Value < 0 Then
        TxtAnterior.font.color := ClRed
     Else
        TxtAnterior.font.color := clBlack;

     // Para quando for negativo mostrar em vermelho o saldo do Total do mes
     If TxtMes.Value < 0 Then
        TxtMes.font.color := ClRed
     Else
        TxtMes.font.color := clBlack;


E os codigos que eram para fazer as buscas dos dados e mostrar nos edits:

CODE
With QryCaixa do
      Begin
         QryCaixa.Close;
         QryCaixa.Sql.Text := 'Select * from lancamento  where Pagamento = Current_date';
         QryCaixa.Open;
      end;
      
   //Soma o saldo do Dia
With QryTotais do
      Begin
         QryTotais.Close;
         QryTotais.Sql.Text := 'Select sum(Valor)as "+" From Lancamento where tipo =  1 and pagamento = Current_date';
         QryTotais.Open;
      end;
With QryTotais2 do
      Begin
         QryTotais2.Close;
         QryTotais2.Sql.Text := 'Select sum(valor) as "-" From Lancamento where tipo = 0 and pagamento = Current_date';
         QryTotais2.Open;
      End;
     //TxtTlDia.text := ((FloatToStr((QryTotais.FieldByName('+').AsFloat) - (QryTotais2.FieldByName('-').AsFloat)) ));
         TxtTlDia.Value := QryTotais.FieldByName('+').AsFloat - QryTotais2.FieldByName('-').AsFloat;
     // Saldo Total
With QrySaldo do
      Begin
         QrySaldo.Close;
         QrySaldo.Sql.Text := 'Select sum(Valor)as "+" From Lancamento where tipo = 1 and pagamento is not null';
         QrySaldo.Open;
      end;
With QrySaldo2 do
      Begin
         QrySaldo2.Close;
         QrySaldo2.Sql.Text := 'Select sum(Valor)as "-" From Lancamento where tipo = 0 and pagamento is not null';
         QrySaldo2.Open;
      End;
   //  TxtSoma.text := ( (FloatToStr((QrySaldo.FieldByName('+').AsFloat) - (QrySaldo2.FieldByName('-').AsFloat)) ));
     TxtSoma.Value := QrySaldo.FieldByName('+').AsFloat - QrySaldo2.FieldByName('-').AsFloat;

     // Saldo Anterior
With QryAnterior do
      Begin
         QryAnterior.Close;
         QryAnterior.Sql.Text := 'select sum(valor)as "+" from lancamento where Tipo = 1' +
         ' and extract(year from pagamento) = extract(year from current_date)' +
         ' and extract(month from pagamento) = extract(month from current_date) -1';
         QryAnterior.Open;
      end;
With QryAnterior2 do
      Begin
         QryAnterior2.Close;
         QryAnterior2.Sql.Text := 'select sum(valor)as "-" from lancamento where Tipo = 0 and ' +
         'extract(year from pagamento) = extract(year from current_date)' +
         'and extract(month from pagamento) = extract(month from current_date) -1';
         QryAnterior2.Open;
      End;
     //TxtAnterior.text := ( (FloatToStr((QryAnterior.FieldByName('sum').AsFloat) - (QryAnterior2.FieldByName('sum').AsFloat)) ));
        TxtAnterior.Value := QryAnterior.FieldByName('+').AsFloat - QryAnterior2.FieldByName('-').AsFloat;

    // Saldo Total do Mês
With QryMes do
      Begin
         QryMes.Close;
         QryMes.Sql.Text := 'select sum(valor)as "+" from lancamento where Tipo = 1' +
         ' and extract(year from pagamento) = extract(year from current_date)' +
         ' and extract(month from pagamento) = extract(month from current_date)';
         QryMes.Open;
      end;
With QryMes2 do
      Begin
         QryMes2.Close;
         QryMes2.Sql.Text := 'select sum(valor)as "-" from lancamento where Tipo = 0 and ' +
         'extract(year from pagamento) = extract(year from current_date)' +
         'and extract(month from pagamento) = extract(month from current_date)';
         QryMes2.Open;
      End;
     //TxtMes.text := ( (FloatToStr((QryMes.FieldByName('sum').AsFloat) - (QryMes2.FieldByName('sum').AsFloat)) ));
     TxtMes.Value := QryMes.FieldByName('+').AsFloat - QryMes2.FieldByName('-').AsFloat;




Bom a segunda parte esta resolvida mas falta a primeira parte desse Post

Pois aqui eu queria salvar e já convertendo para float, mas fazendo o programa ler em vez de "," eu lê ".", fiz dessa maneira:

CODE
Add (AnsiReplaceStr(Format('%.2f',[TxtVal.Text]), ',', '.'));


Mas ai dá esse erro:

QUOTE
Format '%.2f' invalid or incompatible with argument


E agora?
-----------------------
Sempre informe que foi resolvido o seu tópico!


E se acontecesse oque não aconteceu o que iria acontecer?
Se Hoje seria Ontem então Hoje seria Amanhã!

#7 Micheus

Micheus

    ¨°°º0(Delphi Lover)0º°°¨

  • Veteranos
  • 3207 posts
  • Gender:Male
  • Location:Blumenau - SC

Postado 25 December 2007 - 10:29 AM

QUOTE(robinhocne @ 23/12/2007 - 21:08) Visualizar Post
Bom a segunda parte esta resolvida mas falta a primeira parte desse Post

Pois aqui eu queria salvar e já convertendo para float, mas fazendo o programa ler em vez de "," eu lê ".", fiz dessa maneira:

CODE
Add (AnsiReplaceStr(Format('%.2f',[TxtVal.Text]), ',', '.'));

Mas ai dá esse erro:
QUOTE
Format '%.2f' invalid or incompatible with argument

E agora?

robinhocne, você leu o que eu postei no post#5 ?
Bom, eu vou colocar aqui denovo:
QUOTE(Micheus @ 21/12/2007 - 12:24) Visualizar Post
Mas complementando...
sobre o erro: Format '%.2f' invalid or incompatible with argument

robinhocne, se você der uma olhada no help sobre format, vai saber que quando você utilizar o %f, significa que no array de valores que você passa a função, o valor correspondente a este "parâmetro" tem que ser um número!
E você está passando o quê....? Um string. blink.gif

Sendo mais claro: Você está passando um texto como parâmetro (TxtVal.Text), sendo que a função Format, utilizando o formato "%.2f" (onde f refere-se a float) requer que o parâmetro seja um número!

Assim sendo, se este seu TxtVal é um componente TCurrencyEdit também (e eu acho que sim), então você deveria utilizar a propriedade Value.

Abraços
"Há sempre, pelo menos, dois modos de fazer uma mesma coisa.
Mesmo que sejam: certo e errado."
(Micheus)

¨°°º0) micheus.4Shared.com - Alguns exemplos em Delphi (0º°°¨

#8 robinhocne

robinhocne

    O que sabemos é uma gota, o que ignoramos é um Oceano!

  • Membros
  • 774 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 25 December 2007 - 21:54 PM

QUOTE(Micheus @ 25/12/2007 - 11:29) Visualizar Post
QUOTE(robinhocne @ 23/12/2007 - 21:08) Visualizar Post
Bom a segunda parte esta resolvida mas falta a primeira parte desse Post

Pois aqui eu queria salvar e já convertendo para float, mas fazendo o programa ler em vez de "," eu lê ".", fiz dessa maneira:

CODE
Add (AnsiReplaceStr(Format('%.2f',[TxtVal.Text]), ',', '.'));

Mas ai dá esse erro:
QUOTE
Format '%.2f' invalid or incompatible with argument

E agora?

robinhocne, você leu o que eu postei no post#5 ?
Bom, eu vou colocar aqui denovo:
QUOTE(Micheus @ 21/12/2007 - 12:24) Visualizar Post
Mas complementando...
sobre o erro: Format '%.2f' invalid or incompatible with argument

robinhocne, se você der uma olhada no help sobre format, vai saber que quando você utilizar o %f, significa que no array de valores que você passa a função, o valor correspondente a este "parâmetro" tem que ser um número!
E você está passando o quê....? Um string. blink.gif

Sendo mais claro: Você está passando um texto como parâmetro (TxtVal.Text), sendo que a função Format, utilizando o formato "%.2f" (onde f refere-se a float) requer que o parâmetro seja um número!

Assim sendo, se este seu TxtVal é um componente TCurrencyEdit também (e eu acho que sim), então você deveria utilizar a propriedade Value.

Abraços


Ok, eu não estava usando o TCurrencyEdit, mas ai mudei para eles, e então no Vvlr mudei de Text para Value, então ficou dessa maneira:

CODE
add (Txtval.Value);


Mas ai dá esse erro:

QUOTE
Imcopatible types: 'String' and 'Extended'


-----------------------
Sempre informe que foi resolvido o seu tópico!


E se acontecesse oque não aconteceu o que iria acontecer?
Se Hoje seria Ontem então Hoje seria Amanhã!

#9 Micheus

Micheus

    ¨°°º0(Delphi Lover)0º°°¨

  • Veteranos
  • 3207 posts
  • Gender:Male
  • Location:Blumenau - SC

Postado 26 December 2007 - 07:57 AM

QUOTE(robinhocne @ 25/12/2007 - 21:54) Visualizar Post
Ok, eu não estava usando o TCurrencyEdit, mas ai mudei para eles, e então no Vvlr mudei de Text para Value, então ficou dessa maneira:

CODE
add (Txtval.Value);


Mas ai dá esse erro:

QUOTE
Imcopatible types: 'String' and 'Extended'
Oh my god! ohmy.gif

Vou ter que parodiar o nosso colega Jhonas...
Traduzindo a mensagem de erro: Tipos incompatíveis: string e extended (texto e número, para simplificar mais ainda)

você não tem que adicionar um string no seu TStringList Vvlr? Para quê que você vai mudar justo esta linha?
Esta você não tinha que mexer nada nela!!! dry.gif
Deveria continuar exatamente como estava: um texto numérico, com a vírgula que você substituia por um ponto utilizando a função StrReplace! Era o que já tínhamos corrigido nos outros post's.

Abraços
"Há sempre, pelo menos, dois modos de fazer uma mesma coisa.
Mesmo que sejam: certo e errado."
(Micheus)

¨°°º0) micheus.4Shared.com - Alguns exemplos em Delphi (0º°°¨

#10 robinhocne

robinhocne

    O que sabemos é uma gota, o que ignoramos é um Oceano!

  • Membros
  • 774 posts
  • Gender:Male
  • Location:Rio de Janeiro

Postado 26 December 2007 - 15:34 PM

QUOTE(Micheus @ 26/12/2007 - 08:57) Visualizar Post
QUOTE(robinhocne @ 25/12/2007 - 21:54) Visualizar Post
Ok, eu não estava usando o TCurrencyEdit, mas ai mudei para eles, e então no Vvlr mudei de Text para Value, então ficou dessa maneira:

CODE
add (Txtval.Value);


Mas ai dá esse erro:

QUOTE
Imcopatible types: 'String' and 'Extended'
Oh my god! ohmy.gif

Vou ter que parodiar o nosso colega Jhonas...
Traduzindo a mensagem de erro: Tipos incompatíveis: string e extended (texto e número, para simplificar mais ainda)

você não tem que adicionar um string no seu TStringList Vvlr? Para quê que você vai mudar justo esta linha?
Esta você não tinha que mexer nada nela!!! dry.gif
Deveria continuar exatamente como estava: um texto numérico, com a vírgula que você substituia por um ponto utilizando a função StrReplace! Era o que já tínhamos corrigido nos outros post's.

Abraços



Ops, foi a resaca de ontem, mas desculpas, fiz errado mesmo, para salvar no vvlr ficou dessa maneira:

CODE
Add (AnsiReplaceStr(Format('%.2f',[TxtVal.Value]), ',', '.'));


Ok, Resolvido mais uma duvida!
-----------------------
Sempre informe que foi resolvido o seu tópico!


E se acontecesse oque não aconteceu o que iria acontecer?
Se Hoje seria Ontem então Hoje seria Amanhã!



Responder



  


0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos