Ver Mensaje Individual
  #3  
Antiguo 22-04-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Reputación: 17
rgstuamigo Va por buen camino
Lightbulb

Cita:
Empezado por lucho1981 Ver Mensaje
Buenas amigos. Mi consulta consiste en que cuando quiero guardar un valor tipo float (2,5) tengo error en mysql, porq admite el valor 2.5 y no la coma.
Lo que estoy haciendo es tomar un valor de la base de datos (valor con coma) y sumarle o restarle algo (según corresponda), ese valor lo guardo en una variable tipo double y le sumo o resto el contenido de un edit pasado a float. El problema es que en delphi el tipo de dato FLOAT admite un valor con comas y no con punto.
No se si este haciendo lo mas óptimo pero deberia funcionar a mi modo de ver.
Desde ya muchas gracias
Código Delphi [-]
Código Delphi [-]
procedure TFcajainout.CajaEntrada();
var 
hoy:Tdatetime; ya, new:double;      
begin       
hoy:=now;           
       With DM.QCajainout do             
           begin              
             ParamByName ('fecha').Value:=Formatdatetime('yyyymmdd',hoy);
             ParamByName ('lega').Value:=Principal.Lega.Caption;
             ParamByName ('ptipo').Value:='1';
             ParamByName ('monto').Value:=monto.Text;
             ParamByName ('concepto').Value:=concepto.Text;
             ExecSQL;
            end;
            Dm.Tcaja.locate('id','1',[]);
            ya:=DM.tcaja.FieldByName('actual').asfloat;
            new:=ya+strtofloat(monto.text);
          With dm.Qcajaactual do             
             begin               
                 ParamByname ('nuevo').asfloat:=new;//creo que aqui era el problema                    

                  ExecSQL;
             end;
    end;
Pruebalo.....
Edito: Cuando obtengas o asignes valores a(de) los campos(Field) siempre trata de asignarselo haciendo uso de sus propiedades tales como:
.AsInteger para los integer,.AsFloat para los Float,.AsString para los string,etc. Trata en lo posible no usar la propiedad .Value pues es de tipo variant y creo que por ahi puede ocurrir algunos errores de tipos de datos.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7

Última edición por rgstuamigo fecha: 22-04-2009 a las 23:57:54.
Responder Con Cita