Hola amigos:
Su pesadilla otra vez
Tengo el siguiente problema, estoy trabajando con Mysql 5.1 y Delphi Tokio.
Tengo un valor con decimales, pero solo cuando actualizo me da el siguiente error (ver imagen)
Código Delphi
[-]
Valor := SacaMiles(edt_uf.Text);
ModuloDatos.QTablas.SQL.Clear;
ModuloDatos.QTablas.SQL.Add(' Update remaux ');
ModuloDatos.QTablas.SQL.Add(' set valor = ''' + FloatToStr(Valor) + '''');
ModuloDatos.QTablas.SQL.Add(' Where Raiz = ''' + copy(edt_cuf.Text,1,1) + '''');
ModuloDatos.QTablas.SQL.Add(' and Codigo = ''' + Trim(copy(edt_cuf.Text,3,3)) + '''');
ModuloDatos.QTablas.Execute;
Ya revise el campo en la tablas Mysql y es de Double(15,4)
Estoy usando la siguiente funcion para validar el punto o coma, como separador de miles o decimales.
Código Delphi
[-]Function SacaMiles( cValor : String ): Extended ;
var
cRetorno, smiles, sdecimal : String ;
n : word ;
begin
smiles := SysUtils.FormatSettings.ThousandSeparator ;
sdecimal := SysUtils.FormatSettings.DecimalSeparator ;
cRetorno := '';
For n := 1 To Length( cValor ) do begin
If (cValor[ n ] <> '.') then
cRetorno := cRetorno + cValor[ n ] ;
end;
If cRetorno = '' then cRetorno := '0' ;
Result := StrToFloat( cRetorno ) ;
end ;