Cursor con valores decimales

16/07/2004 - 13:19 por Keyhelp | Informe spam
Hola a todos:
Tenemos un cursor que recupera valores decimales de una tabla, el campo lo
tenemos definido del tipo numeric(17,5) pues usa 5 decimales.
El problema está en que cuando grabamos los datos, en la tabla están todos
los decimales, ejm: 0,12345, pero si hacemos un cursor para recuperar esta
información solo nos devuelve 4 decimales, 0,1234

ya he probado con cast y convert pero nada de nada, a lo mejor hay algún
parámetro que no hemos tenido en cuenta en nuestro server.

La versíón que usamos es 8 con todos los SP.

¿alguien sabe como lo puedo solucionar y que me devuelva todos los
decimales?


Francisco López
Dpt. Desarrollo
Keyhelp, S.L.
http://www.keyhelp.net

Preguntas similare

Leer las respuestas

#1 Maxi
16/07/2004 - 14:18 | Informe spam
Hola, es extraño, quizas si nos pasas el codigo seria mas simple!! pero
saliendo un poco de la pregunta:

Porque usas cursores? no son para nada recomendados

Suerte


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Keyhelp" escribió en el mensaje
news:
Hola a todos:
Tenemos un cursor que recupera valores decimales de una tabla, el campo lo
tenemos definido del tipo numeric(17,5) pues usa 5 decimales.
El problema está en que cuando grabamos los datos, en la tabla están todos
los decimales, ejm: 0,12345, pero si hacemos un cursor para recuperar esta
información solo nos devuelve 4 decimales, 0,1234

ya he probado con cast y convert pero nada de nada, a lo mejor hay algún
parámetro que no hemos tenido en cuenta en nuestro server.

La versíón que usamos es 8 con todos los SP.

¿alguien sabe como lo puedo solucionar y que me devuelva todos los
decimales?


Francisco López
Dpt. Desarrollo
Keyhelp, S.L.
http://www.keyhelp.net







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.714 / Virus Database: 470 - Release Date: 02/07/2004
Respuesta Responder a este mensaje
#2 Keyhelp
16/07/2004 - 15:03 | Informe spam
Gracias por contestar, ya lo hemos resuelto.
El problema es que usamos PowerBuilder 6.5 y para unas cosas muy específicas
usamos el cursor, pero esto sucede por un bug que tiene la conexión nativa.
Lo hemos solucionado a traves del CAST

"Maxi" escribió en el mensaje
news:
Hola, es extraño, quizas si nos pasas el codigo seria mas simple!! pero
saliendo un poco de la pregunta:

Porque usas cursores? no son para nada recomendados

Suerte


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Keyhelp" escribió en el mensaje
news:
> Hola a todos:
> Tenemos un cursor que recupera valores decimales de una tabla, el campo


lo
> tenemos definido del tipo numeric(17,5) pues usa 5 decimales.
> El problema está en que cuando grabamos los datos, en la tabla están


todos
> los decimales, ejm: 0,12345, pero si hacemos un cursor para recuperar


esta
> información solo nos devuelve 4 decimales, 0,1234
>
> ya he probado con cast y convert pero nada de nada, a lo mejor hay algún
> parámetro que no hemos tenido en cuenta en nuestro server.
>
> La versíón que usamos es 8 con todos los SP.
>
> ¿alguien sabe como lo puedo solucionar y que me devuelva todos los
> decimales?
>
>
> Francisco López
> Dpt. Desarrollo
> Keyhelp, S.L.
> http://www.keyhelp.net
>
>



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.714 / Virus Database: 470 - Release Date: 02/07/2004


Respuesta Responder a este mensaje
#3 Maxi
16/07/2004 - 15:06 | Informe spam
ok, me alegro mucho :-)


Salu2
Maxi
Buenos Aires - Argentina
Desarrollador Microsoft 3 Estrellas .NET
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Keyhelp" escribió en el mensaje
news:
Gracias por contestar, ya lo hemos resuelto.
El problema es que usamos PowerBuilder 6.5 y para unas cosas muy


específicas
usamos el cursor, pero esto sucede por un bug que tiene la conexión


nativa.
Lo hemos solucionado a traves del CAST

"Maxi" escribió en el mensaje
news:
> Hola, es extraño, quizas si nos pasas el codigo seria mas simple!! pero
> saliendo un poco de la pregunta:
>
> Porque usas cursores? no son para nada recomendados
>
> Suerte
>
>
> Salu2
> Maxi
> Buenos Aires - Argentina
> Desarrollador Microsoft 3 Estrellas .NET
> Nunca consideres el estudio como una obligación sino como
> una oportunidad para penetrar en el bello y maravillosos
> mundo del saber.
> - Albert Einstein
>
>
>
> "Keyhelp" escribió en el mensaje
> news:
> > Hola a todos:
> > Tenemos un cursor que recupera valores decimales de una tabla, el


campo
lo
> > tenemos definido del tipo numeric(17,5) pues usa 5 decimales.
> > El problema está en que cuando grabamos los datos, en la tabla están
todos
> > los decimales, ejm: 0,12345, pero si hacemos un cursor para recuperar
esta
> > información solo nos devuelve 4 decimales, 0,1234
> >
> > ya he probado con cast y convert pero nada de nada, a lo mejor hay


algún
> > parámetro que no hemos tenido en cuenta en nuestro server.
> >
> > La versíón que usamos es 8 con todos los SP.
> >
> > ¿alguien sabe como lo puedo solucionar y que me devuelva todos los
> > decimales?
> >
> >
> > Francisco López
> > Dpt. Desarrollo
> > Keyhelp, S.L.
> > http://www.keyhelp.net
> >
> >
>
>
>
> Outgoing mail is certified Virus Free.
> Checked by AVG anti-virus system (http://www.grisoft.com).
> Version: 6.0.714 / Virus Database: 470 - Release Date: 02/07/2004
>
>







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.714 / Virus Database: 470 - Release Date: 02/07/2004
Respuesta Responder a este mensaje
#4 Isaías
16/07/2004 - 16:45 | Informe spam
Ademas Maxi, yo preguntaria, ¿porque NUMERIC, si podria
ser DECIMAL?.

Saludos
Respuesta Responder a este mensaje
#5 Keyhelp
20/07/2004 - 08:59 | Informe spam
Gracias por tu interes, pero el problema es por un "Bug" que tiene el
PowerBuilder en la versión 6.5
ya he estado investigando y al parecer mucha gente lo ha resuelto de la
misma forma que yo, osea convirtiendo el campo en string y luego dividir por
el número de decimales.

String ls_porcentaje
Decimal ldec_porcentaje

DECLARE CURSOR1 CURSOR FOR
SELECT CAST(TABLA.PORCENTAJE AS VARCHAR)
FROM TABLA;

OPEN CURSOR1;

FETCH CURSOR1 INTO :ls_porcentaje;

ldec_porcentaje = Dec(ls_porcentaje) / 100000 /* dividir el número por
10^n siendo n el número de decimales que queremos */



"Isaías" escribió en el mensaje
news:2ebb101c46b43$80bb0ea0$
Ademas Maxi, yo preguntaria, ¿porque NUMERIC, si podria
ser DECIMAL?.

Saludos
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida