Spanish conversión de datos

Ecoleo

Member
Licensed User
Longtime User
Es una pregunta de principiante ( que es lo que soy yo ..) ,que me está volviendo loco

Quiero leer de una tabla un valor que está definido en la tabla como Double, y lo hago asi:
B4X:
dim Importe as double
Importe=cursor.GetDouble2(4)
y resulta que el valor que tengo en la tabla es 2,5 y cuando quiero usar la variable importe, me da el valor 2
tambien he probado así:
B4X:
dim importe as double
Importe= cursor.GetDouble("Pventa1")
y me pasa lo mismo.
Un poquito de ayuda , please..:sign0163:
 

joseluis

Active Member
Licensed User
Longtime User
¿Estás seguro que en la tabla tienes el valor 2.5? El código que has puesto parece correcto.

¿Puedes compartir un ejemplo mínimo?
 

joseluis

Active Member
Licensed User
Longtime User
El ejemplo mínimo de este post, te puede servir de base, pero vamos, que el funcionamiento es en teoría como tú lo has hecho, al menos para sacar el dato. Yo miraría el código donde lo estás guardando.
 

Ecoleo

Member
Licensed User
Longtime User
¿Estás seguro que en la tabla tienes el valor 2.5? El código que has puesto parece correcto.

¿Puedes compartir un ejemplo mínimo?

podría ser que en la tabla el valor es "2,5" y me da la espina que los valores double en basic4android son así--> "2.5" , con punto en vez de coma; será esto el problema ?
 

Ecoleo

Member
Licensed User
Longtime User
y como lo soluciono, porque se me ocurrió probar con Replace(",",".") y lógicamente no funciona, porque el replace es para valores String y yo tengo valores Double; en Vbasic 6 hacia un Cdouble() de lo que fuera y listo, pero aquí , no se como hacerlo.
 

joseluis

Active Member
Licensed User
Longtime User
Vamos a ver, he estado buscando por el foro y esto es que he encontrado:

Uno al que le pasa algo parecido a ti, para B4PPC (windows mobile), sin respuesta: decimal-separator

Un hilo interesante donde hay una larga discusión de los intríngulis al respecto, pero relacionado con Windows Mobile y su relación con el locale y si es culpa de sqllite o de B4PPC, con posible solución usando una librería de locale.

No he encontrado nada para B4A :(
Supongo que hay que guardarlo bien y leerlo bien, usando la información de locale para manejar el separador correcto, pero la verdad es que yo aún no me he metido con bbdd aquí así que te hablo de oídas.

EDIT: Si compartes un ejemplo mínimo funcional que muestre el problema, te podría ayudar con el tema.
 
Last edited:

Ecoleo

Member
Licensed User
Longtime User
Gracias por tu interés y sobre todo por compartir tu tiempo y tus conocimientos, VES como te tengo que nombrar "DIRECTOR de...".:icon_clap:
Bueno por seguir un poco con la broma del otro post, ya sabes.
Me voy a leer estos dos post que tú me indicas con tranquilidad, a ver si a lo largo de esta noche doy con la solución.
Tengo varios "frentes abiertos.."
 

psdos

Active Member
Licensed User
Longtime User
Y digo yo una cosa, por que no tratas el valor como un string y luego con "Val(valor)" lo pasas a numerico?
 

Ecoleo

Member
Licensed User
Longtime User
Gracias Psdos, pero sigo con el mismo problema. Tengo que buscar en el foro , aunque sea en inglés, algún ejemplo de como se lee de una bd sqlite un campo con un valor double y como se opera con él; porque tiene que haber algún truquito que se me escapa.
Saludos
 

joseluis

Active Member
Licensed User
Longtime User
Te recomiendo que pongas la pregunta en el foro inglés, que seguro que ahí te ayudan, y luego actualizas este hilo.
 

Ecoleo

Member
Licensed User
Longtime User
Solucionado ..

He probado a correr la app. en mi smartphone (samsung Galaxy S) y Oh milagro, todo funciona bien, los campos double no dan problemas , los leo, los utilizo, los enseño, los guardo otra vez, etc...
Hasta ahora estaba trabajando sobre el emulador , porque realmente la app quiero utilizarla sobre tablets a pesar de que no tengo, y se me ocurrió probar en el móvil y acerté.
Supongo que toda esta problemática ha surgido por algunas diferencias en las versiones del android entre el emulador y el smartphone ó la versión de la sqlite ó yo que sé ?..
Sigo adelante con mi proyecto pero tengo que pensar en comprar una tablet, ¿ alguna recomendación? , que sea barata .
Un saludo a todos:)
 
Top