Power Builder - PROBLEMA CON EL PUNTO DECIMAL

 
Vista:

PROBLEMA CON EL PUNTO DECIMAL

Publicado por Alvaro (24 intervenciones) el 11/07/2001 11:13:57
Hola amigos del foro. En mi aplicación he de convertir una cantidad con decimales a tipo string. El problema es que si la configuración regional en el Panel de Control del PC en el que se ejecuta la aplicacion tiene como separador de dicimales el punto me surgen problemas a la hora de analizar esa cantidad puesta como string. Yo necesito la coma como separador decimal y el punto como separador de miles.

MI PREGUNTA ES: ¿puedo conseguir que mi aplicacion funcione con comas como separadores decimales independientemente de lo que haya en la configuracion regional del panel de control?

, es decir ¿Cómo conseguir hacer a mi aplicacion robusta en este sentido? (que no esté supeditada a una determinada configuracion regional de punto o coma decimal).

No se si planteo el problema con claridad. Si teneis alguna duda con respecto a mi pregunta formuladla aqui mismo y respondo enseguida. Un saludo a todos!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:PROBLEMA CON EL PUNTO DECIMAL

Publicado por Ricardo (1957 intervenciones) el 11/07/2001 16:06:19
Existen otras formas de hacerlo mejor, pero se me ocurre que puedes hacer lo siguiente:

dec {2} ld_importe
String ls_importe

// Importe x
ld_importe = 155.23

// Importante la mascara '000.00'
ls_pagos = STRING(ld_importe,'000.00')

// El reemplazo en funcion de la mascara para ubicar el punto.
ls_pagos = Replace(ls_pagos, 4, 1, ",")

Messagebox("IMPORTE", ls_pagos)

Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROBLEMA CON EL PUNTO DECIMAL

Publicado por Alvaro (24 intervenciones) el 11/07/2001 17:07:41
Entiendo lo que pretendes, sustituir el punto decimal por una coma en mi string. Pero esto me sirve puntualmente en ese caso, pero no de forma general. Me explico: imagina que tengo dos PC´s ejecutando mi aplicacion. Uno con la configuracion regional española y otro con la mexicana. Mi problema hasta ahora es que el que tiene la configuración española funciona y el que tiene la mexicana no.

Con tu solución solvento esto para este caso (si encuentro un punto en el string lo sustituyo con una coma y funciona!!) pero ... y si tuviera que convertir 10 ó 100 ó 1000 veces a lo largo del código una variable decimal en string ¿Tendria que hacer esto mil veces? Si ya, función global y listo pero... Y si esto está en un bucle que se repite 100000 veces ¿tiene que ejecutar esta función global 100.000 veces con el retardo que ello implica?

Creo que no es la mejor solución. Yo me refería algo asi como \\\"¿de que forma se puede forzar a mi aplicación a utilizar la coma como separador decimal aunque en el panel de control se establezca que el separador es el punto?\"

Gracias por tu ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROBLEMA CON EL PUNTO DECIMAL

Publicado por Ricardo (1957 intervenciones) el 11/07/2001 17:36:19
Si bien pudiste observar sólo cambio el dato que se encuentra en la posición, sin importar si es punto, coma o lo que sea, por el caracter que quiera.

Bueno, esa no era, prueba esta, o investiga!:

SQLCA.dbParm = "DecimalSeparator = ','"

Un saludo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:PROBLEMA CON EL PUNTO DECIMAL

Publicado por adilene (1 intervención) el 06/03/2009 02:51:40
esta mui bien esta pagina por ke todo esta bien ordenado..!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar