GARANTIR DESCONTO

Fórum Virgula por Ponto para gravar no Banco de Dados #343032

27/06/2007

0

Pessoal,
Estou precisando converter um valor que esta assim em um edit:

255,55

para string:

255.55


para que eu possa gravar este valor em um banco Firebird .. tenho que trocar a virgula pelo ponto. tentei assim mas nao funcionou:

ShowMessage( FormatFloat(´0.00´,v) );


Mmoreira

Mmoreira

Responder

Posts

27/06/2007

Vitor Alcantara

Tenta uma função simples;
Function VirgPorPonto(d:Double):String;
var
  x:integer;
  s:String;
  Aux:String;
begin
  aux := ´´;
  s := FloatToStrf(d,ffFixed,10,2);
  For x := 1 To Length(s) do
  if s[x] = ´,´ then
  Aux := Aux + ´.´
  else
  Aux := Aux + s[x];
  Result := Aux;
end;


e Para utilizar faz assim:
  ShowMessage(VirgPorPonto(v));



Responder

Gostei + 0

27/06/2007

Adriano Santos

Pessoal, Estou precisando converter um valor que esta assim em um edit: 255,55 para string: 255.55 para que eu possa gravar este valor em um banco Firebird .. tenho que trocar a virgula pelo ponto. tentei assim mas nao funcionou: ShowMessage( FormatFloat(´0.00´,v) );

O negócio é loko, deveria funcionar. Se não conseguir de jeito nenhum, dá uma forçada. Cria uma function que faça isso pra você. Dá uma olhada:

function TrocaVirgulaPorPonto(AString: string): String;
var
  I : Integer;
  S : string;
begin
  S := ´´;
  for I := 1 to Length(AString) do
    if  AString[I] = ´,´ then
      S := S + ´.´
    else
      S := S + AString[I];
  Result := S;
end;



Responder

Gostei + 0

27/06/2007

Mmoreira

É isso ai pessoal pelo visto isso vai ter de ser feito no braço mesmo .. tem esta funcao tambem:

function AlteraSubstring( pString, pVelho, pNovo : string ) : string;
begin
  Result := StringReplace( pString, pVelho, pNovo, [rfReplaceAll] );
end;


Esta ai tambem solucinou o problema.

Obrigado a todos pela atenção.


Responder

Gostei + 0

28/06/2007

Nightshade

usa essa função antes de uma conversao, se tu usar ela antes de gravar no banco, ele converterá para o formato nacional com virgula o separador decimal..
utilizo muito ela

DecimalSeparator := ´,´;


Responder

Gostei + 0

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

Aceitar