Hola a todos.
Le he dado 100 vueltas y no me sale.
Tengo una base de datos en Access. La exporto a formato CSV el cual abro con Excel y adapto a mi tabla en Sqlite3 con los nombres de mis campos en la cabecera y demás.
Importo este desde SqliteManager de Mozilla Firefox y todo va bien.
Si miro esa tabla desde SqliteMan, Sqlite Data Browser o el propio SqliteManager, veo el campo impfac correctamente con su importe de factura en formato FLOAT 1742.98 por ejemplo.
Cuando voy a mi programa y leo el campo en cuestión desde Gambas3, sorpresa, lo que me aparece es 1E-323 por ejemplo y todos así o parecidos, excepto los que como no tienen decimales han sido capturados como enteros y entonces se ven correctamente.
Mi pregunta es que función usan SqliteManager y los otros para sacar el número correcto, porque yo usando VAL o CFLOAT me dice que verdes las han segado que espera un FLOAT y obtiene un String.
Supongo que habrá una función de conversión pero no se aplicar ni si es eso Dconv() ni Conv() por lo de que viene de windows.
La conexión me dice que el charset es utf8
Agradecería si alguien le ha ocurrido, como solucionarlo. Una vez que sepa que función se usa es sencillo hacer un rastreo de la tabla y cambiar ese dato para que se almacene correctamente.
Lo he hecho con SqliteManager porque a través de Firefox (vieniendo como viene de Access en Windows) no tengo que hacer nada para leerlo en Linux con el mismo programa. De hecho lo lee correctamente.
Por cierto que en Sqlite3 desde consola también se puede consultar y sale el numero en formato correcto. Sólo me falla en Gambas3
Socorro y gracias
Trabajo con los repositorios de gambas y estoy actualizado a la última versión y mi S.O es Linux Mint 17.3
Muchas gracias