Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Guardar en Campo Money.. (https://www.clubdelphi.com/foros/showthread.php?t=64999)

joelphi 14-11-2009 07:23:15

Guardar en Campo Money..
 
Hola a todos:

Antes de todo debo agradecer a las personas que donan tiempo en contestar soluciones a problemas..

Como siempre necesito su ayuda, Resulta que trabajo en una aplicacion en Delphi 2007 y Sql server 2000. Tengo una tabla con los siguientes campos.


Tabla : Pagos

Campos:
Id_Pago Numeric Autoincrementable
Monto_Pago Money

mi problema es que cuando mando un query de insercion al manejador me manda un error, el query esta mas o menos de la siguiente manera

Metodo
var Monto_Pago:Currency
begin
BasedeDatos.Actualizar('Insert Into Pagos(Monto_Pago)'
+' Values('+QuotedStr(CurrToStr(Monto_Pago))+')';
Fin_Metodo

---------------------------------------------------
resultado en String

'Insert into Pagos(Monto_Pago) Values(22,22) '

y me genera un error en donde me dice que no se puede convertir a money un tipo char..

Observé que solo me guarda cuando introduzco en vez de coma punto. pero no se como hacerlo desde delphi, alguien conoce una manera?


Agradecere Infinitamente a quien me ayude..

javier7ar 16-11-2009 03:40:27

El error es por el separador de decimales, debe ser un punto en lugar de una coma.
Te recomiendo que uses parametros, que te salvan de todos esos problemas de configuracion regional
Código Delphi [-]
  qInserta.SQL.Add('Insert Into Pagos (Monto_Pago)');
  qInserta.SQL.Add('Values (:Monto_Pago)');

  qInserta.ParamByName('Monto_Pago').Value:=Monto_Pago;
  qInserta.ExecSQL;

Esa me parece que es la mejor solucion. Si no te convence y preferis seguir usando tu funcion lo que podes hacer es usar la funcion StringReplace para convertir la coma a un punto despues de hacer la conversion a string.
Saludos


La franja horaria es GMT +2. Ahora son las 06:35:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi