Ver Mensaje Individual
  #8  
Antiguo 24-02-2017
tinlespaul tinlespaul is offline
Registrado
NULL
 
Registrado: sep 2014
Posts: 3
Reputación: 0
tinlespaul Va por buen camino
Cita:
Empezado por orodriguezca Ver Mensaje
Que tipo de datos tiene en la tabla la columna Conc_Importe?. Si el tipo de dato es float o double la propia base de datos puede tener tendencia a "redondear" o aproximar los datos. Este comportamiento me ha ocurrido en Firebird 2.5. El problema lo he corregido utilizando tipos de datos DECIMAL o NUMERIC en las columnas de las tablas.

Otro punto a tener en cuenta es que la función strtofloat es sensible a la configuración regional y puede estar omitiendo el texto posterior al "punto" o "coma" decimal al realizar la conversión, aún cuando se haya establecido correctamente la variable global DecimalSeparator a menos que también se use la instrucción Application.UpdateFormatSettings := False;.
Si, son muy acertadas tus recomendaciones.
El tipo del campo es DECIMAL (10,2).
Tengo en cuenta el DecimalSeparator y la configuración regional. Lo raro de esto, es que a veces se genera el problema y a veces no. Por eso es muy difícil descubrir que es lo que está pasando.
Quizás tengo algún error implícito con el ODBC y ni cuenta me estoy dando. Empece a usar Zeos y me funciona perfecto.
Debido a que es un sistema importante (en cuando a cantidad de módulos y operaciones) dudaba en utilizarlo, no se que confianza tenerle a Zeos...pero por el momento funciona.

Tengo un sólo problema con Zeos, que no tiene que ver con conversiones, sino que al ejecutar el paso a paso usando un BreackPoint me acusa el error "Source File not found ZAbstractRODataset.pas" en el primer intento de hacer un trace to next source line.
No se si a alguien le pasó algo así...
Responder Con Cita