Hola Saludos a todos.
Queria saber si hay alguna forma de convertir los numero decimales con punto a numero decimales con comas.
4.3 transformalo a 4,3
Gracias por su tiempo.
| ||||
Respuesta: Decimales con punto a coma Hola Usa Replace Suerte
__________________ Los formularios se envían/validan con un botón Submit <input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" /> |
| ||||
Respuesta: Decimales con punto a coma Si yo tambien opte por esa opcion y ya lo habia echo.
Código ASP:
Ver original Mi base de datos es access y el campo que intento cambiar es numero, doble. Gracias por responder |
| ||||
Respuesta: Decimales con punto a coma Hola A ver si funciona esto Cita: Suerte nota_cambio=request.form("nota_cambio") reem = replace(nota_cambio, ".", ",") num_cambiado = CDbl(reem)
__________________ Los formularios se envían/validan con un botón Submit <input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" /> |
| ||||
Respuesta: Decimales con punto a coma Aun no sale sigue dando error.
Código ASP:
Ver original Gracias por responder igual. |
| ||||
Respuesta: Decimales con punto a coma Hola El error puede que esté aquí Cita: tratalo como una cadenaNota="&num_cambiado&" Cita: Suerte Nota='"&num_cambiado&"'
__________________ Los formularios se envían/validan con un botón Submit <input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" /> |
| ||||
Respuesta: Decimales con punto a coma ejem!, ejem! ¿no es mucho más sencillo simplemente cambiar el LCID a uno donde se utilice la coma como separador de decimales? O si el problema es con la base de datos se cambia el parámetro del collate referente al separador |
| ||||
Respuesta: Decimales con punto a coma Cita:
Iniciado por Myakire ejem!, ejem! ¿no es mucho más sencillo simplemente cambiar el LCID a uno donde se utilice la coma como separador de decimales? O si el problema es con la base de datos se cambia el parámetro del collate referente al separador Hola! Myakire, la solución que propones es válida y obviamente viable, pero en mi experiencia me han tocado clientes que cambiaron el servidor. Sea la versión del Sistema Operativo o el equipo completo. También sucedió que instalaran un producto de otro fabricante que necesitaba una configuración regional distinta a la mía y zas! Al cuerno con mis configuraciones regionales y arreglos en el código. Hasta donde yo se, para el problema aquí planteado, bastaría con un replace (para el caso que leyera una coma). Luego, al enviar a la db, si el formato del campo es numérico, puede ocurrir un overflow si intentan pasarle una cadena... No recuerdo quien puso que el error podía ser Nota="&variable&" y corregir a Nota='"&variable&"' Esta solución me ha dado muchos dolores de cabeza. Lo que si, no se por qué vuelven a convertir el número a un formato numérico (double). Creo que es ahí donde vuelve a cambiar el punto por la coma, y sigue enviando una coma a la db. Mi solución implicaría solo al replace y de ahí derecho a la db. Si da error nuevamente, estaría bueno que colocaras específicamente cuál es el error, copiando la línea de código donde se indica que falla. Como para que nos quede a todos más claro cuál es el proceso que está generando la falla. Saludos y espero haber sido util. |
| ||||
Respuesta: Decimales con punto a coma Cita: De acuerdo al 100% contigo, pero cierto es también que cualquier cambio en el servidor debe hacerse con la salvedad de hacer adecuaciones en los sistemas, normalmente las constantes de configuración están en un include o en propiedades de solo lectura, por lo que es rápido el actualizarlas.
Iniciado por verinchi Hola! Myakire, la solución que propones es válida y obviamente viable, pero en mi experiencia me han tocado clientes que cambiaron el servidor. Sea la versión del Sistema Operativo o el equipo completo. También sucedió que instalaran un producto de otro fabricante que necesitaba una configuración regional distinta a la mía y zas! Al cuerno con mis configuraciones regionales y arreglos en el código. Si se quiere hacer cambios "transparentes" para las aplicaciones se puede caer en lo que tu misma mencionas, que la aplicación mande un caracter como separador decimal (el que sea) y la BD's este esperando otro, igual no se salva uno de asegurar que los dos ambientes hablen el mismo "idioma". Aquí siempre teníamos problemas al actualizar la versión del sql server con la intercalación, así que ya le metí la definición de la intercalación directa en el join y ya me olvidó de cambiarla cada cambio de server. Saludos |
| ||||
Respuesta: Decimales con punto a coma Yo recordaba haber tenido algún problema con LCID y por eso lo de Replace. Con convertirlo en double pues no es necesario pero si que hay que enviarlo como string. A raíz de vuestros comentarios he hecho algunas pruebas y a ver si os ocurre lo mismo que a mí
Código ASP:
Ver original
__________________ Los formularios se envían/validan con un botón Submit <input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" /> |
| ||||
Respuesta: Decimales con punto a coma Perdonen por no contestar pero estaba un poco ocupado. Veran me pasa una cosa muy rara. En lo de Nota='"&num_cambiado&"' me da el problema de que el tipo de dato de los campos no son iguales. Y es cierto por que num_cambiado no recoge datos de ninguna otra pagina, por lo cual no los debe llevar. Pero me da el mismo error al ponerselo en Matricula="&nom&"" y este si recoge datos de otra pagina Cita: Lo segundo es que el codigo que me pusieron para cambiar de punto a coma no me funciono pero estuve probando mas cosas y en una de ellas por casualidad lo puse de esta manera:
Código ASP:
Ver original Cita: Aqui me pasa algo raro, al guardar un dato como 4.4 obviamente no lo cambia debido que lo cambio por otro punto... Pero en la base de datos si lo cambia por una coma. me podrian explicar que podria pasar por favor? No puse el CDbl debido a que me daba el mismo error de que no coincidean en el tipo de base de datos.
Código ASP:
Ver original Gracias por todo y saludos. |
| ||||
Respuesta: Decimales con punto a coma Cita:
Iniciado por Batan Perdonen por no contestar pero estaba un poco ocupado. Aqui me pasa algo raro, al guardar un dato como 4.4 obviamente no lo cambia debido que lo cambio por otro punto... Pero en la base de datos si lo cambia por una coma. me podrian explicar que podria pasar por favor? No puse el CDbl debido a que me daba el mismo error de que no coincidean en el tipo de base de datos. Gracias por todo y saludos. Lo que se me ocurre así por tirar una idea, es que si para la db el separador decimal es , cuando le pases el valor con punto lo va a transformar automáticamente. Tiene que ver con la configuración regional. Esto de cambiar las comas por punto es indicado porque al armar el string que debe ejecutar el SQL, en caso de encontrar una coma en un campo numérico (que no lleva literales como para interpretarlo como texto) considera que son dos valores distintos, y te va a decir que hay más valores que campos declarados en la consulta. Entonces, al cambiarlo por puntos, el valor pasa completo al campo que debe recibirlo y el SQL realiza la conversión sin problemas, de punto al separador decimal que tiene definido, en este caso, una coma. Si no querés que pase esto, o bien cambiás la configuración en la máquina que tiene el SQL para que el separador decimal sea un punto, o lo cambiás (no recuerdo la opción) directamente desde el sql server, o la que más me gusta a mi... realizas la conversión de coma a punto cada vez que muestres ese dato en pantalla y Voilà! Saludos! |
| ||||
Respuesta: Decimales con punto a coma aqui el por que de lo anterior http://www.w3api.com/wiki/ASP:Session.LCID |
| ||||
Respuesta: Decimales con punto a coma Cita: Buenísimo!
Iniciado por sjam7 aqui el por que de lo anterior http://www.w3api.com/wiki/ASP:Session.LCID |
Etiquetas: |