Power Builder - Decimales?????????

 
Vista:

Decimales?????????

Publicado por david (10 intervenciones) el 10/09/2002 12:56:28
Tenemos un problema con los campos numericos que tienen decimales. Al crear una DataWindow, al guardar un numero en ese campo desde el propio diseño de la DataWindow nos sale "numero incorrecto..."El campo numerico con decimales esta definido en Oracle8 como number(38,8)
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:Decimales?????????

Publicado por Ricardo (1957 intervenciones) el 10/09/2002 17:35:12
Hola que tal:

No sé si el campo anteriormente tenia otra longitud de decimales o desde un principio fue asi (38,8), ya que tuve un problema parecido, aparentemente todo estaba bien, tabla, mascara y nada. Lo que hice fue rehacer el DW. Ya que borraba el campo y lo volvía a agregar, lo quitaba del SQL y nada, hasta que lo hice, que fue, en mi caso: tenia un campo de 6,2 y lo necesitaba de 6,4 con solo este cambio me fallo.

Espero te sirva, si alguien tiene otra idea o anecdota...

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:Decimales?????????

Publicado por Milson Cardona (613 intervenciones) el 10/09/2002 17:37:44
Buenos dias desde la hermosa COLOMBIA

porque no revizas la máscara que tiene este campo en el DW, reviza que sea del tipo ##########################.######## es decir 30(#) enteros y 8(#) decimales.......

si esto no te funciona, reviza en el paitner de diseño del DW, por el menú ROWS / COLUMN SPECIFICATIONS, en la columna TYPE para este campo que tiene problemas debe decir DECIMAL(8), si esto no es verdad, entonces debes refrescar el DW, puesto que modificaste el campo en la tabla despues de estar creado el DW. esto se hace simplemente eligiendo la opción SQL, borrar el campo y volver al DW, luego repites el proceso para volver a adicionarlo

espero que esto te sirva de ayuda, sino hazmelo saber para serguir para seguir sugiriendote.
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:Decimales?????????

Publicado por david (10 intervenciones) el 16/09/2002 17:07:44
Hemos probado todo lo que nos habeis puesto y no nos a funcionado, si teneis otras ideas por favor acednoslo saber.Gracias
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:Decimales?????????

Publicado por Milson Cardona (613 intervenciones) el 16/09/2002 23:00:50
SI estas trabajando con ORACLE, reviza que el SET de caracteres de el cliente en el q
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:Decimales?????????

Publicado por Milson Cardona (613 intervenciones) el 16/09/2002 23:20:45
SI estas trabajando con ORACLE, reviza que el SET de caracteres de el cliente en el que estas trabajando, sea igual al de la DB, te puedes dar cuenta con la siguientes consultas:

select *
from nls_database_parameters;

select *
from nls_session_parameters;

la primera consulta, es para ver los parametros del lenguaje en que fue instalada la DB, y la segunda es para ver los parametros con que esta instalado el cliente(session)
en las consultas verifica que las columnas NLS_NUMERIC_CHARACTERS y NLS_LANGUAGE esten iguales en ambas consultas, si hay alguna diferencia hazmelo saber para decirte como puedes corregir el problema...

ahh reviza también la configuración regional de tu sistema operativo, en la pestaña de números(si es windows o nt), reviza que el separador de MILES y el separador DECIMAL concuerden con los parámetros de tu DB.

espero tu respuesta para saber si te puedo seguir ayudando

UN SALUDO ESPECIAL DESDE LA HERMOSA COLOMBIA
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:Decimales?????????

Publicado por David (10 intervenciones) el 17/09/2002 12:06:48
He comprobado lo de las 2 consultas y tanto una cosa como la otra es distinta. NLS_NUMERIC_CHARACTERS es igual a ,. (coma punto) en la consulta de nls_session_parameters y en nls_database_parameters es igual a ., (punto coma). Y en cuanto a NLS_LANGUAGE en nls_database_parameters es igual a AMERICAN y en nls_session_parameters es iugal a SPANISH. Por cierto, estamos trabajando con PowerBuilder 7.
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:Decimales?????????

Publicado por Milson Cardona (613 intervenciones) el 17/09/2002 15:38:21
creo que es al contrario en la DB (,.) y en el cliente (.,)

En este caso, la versión de PB en que trabajes, es indiferente, el problema, es la incopatibilidad en el SET de caracteres del ORACLE entre el cliente y la DB, ya que un número que en la DB este como 12.3 para el cliente este número será invalido, porque si te fijas bien el separador de miles es el (.) punto para el cliente.

bueno, para superar el problema, debes ir al REGEDIT y verificar en la entrada:
HKEY_LOCAL_MACHINE - SOFTWARE - ORACLE - HOME0, y cambiar la clave NLS_LANG = SPANISH_SPAIN.WE8ISO8859P1.......dicha clave debe quedar NLS_LANG = AMERICAN_AMERICA.WE8ISO8859P1.. estoy casí seguro que así superaras el problema

NOTA: la carpeta HOME0, también puede ser HOME1 o HOME2, dependiendo el sistema operativo o la versión del ORACLE que tengas instalado..

me cuentas la evolución de tu problema......

un saludo especial desde la hermosa republica de COLOMBIA
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:Decimales?????????

Publicado por David (10 intervenciones) el 17/09/2002 17:52:41
Gracias por tu colaboración, nos a sido de mucha ayuda y ya nos funciona con tus indicaciones, pero ahora tenemos un pequeño problemilla que seguro ke tu lo resuelves en un plis plas.
Ahora queremos que al entrar el valor con los decimales no nos presente los ceros y al hacerlo con la mascara no nos acaba de funcionar ya que nos presenta todos los ceros de los decimales.
Y con esto se terminan nuestras dudas, muchas 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:Decimales?????????

Publicado por Milson Cardona (613 intervenciones) el 17/09/2002 19:34:09
bueno, creo que eso es porque esta utilizando la mascara #####.00, para hacer lo que deseas, cambia la mascara por la siguiente #####.##, es decir cambias los ceros decimales en la máscara que tienes.

un saludo desde COLOMBIA
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