No me funciona un VALID con decimales.

Post Reply
Fernando Morales
Posts: 17
Joined: Mon Oct 31, 2005 6:16 pm

No me funciona un VALID con decimales.

Post by Fernando Morales »

Hola a todos.

Estoy teniendo problemas al validar un get en el cual capturo un valor numerico con decimales (@E 999,999.99). En dicho get, despues de capturar el valor lo comparo con el valor del campo almacenado en la base de datos (que tiene exactamente la misma cantidad de enteros y decimales que el campo que capturo). Por ejemplo, si le doy 48,21 y el campo de la base de datos contiene también 48,21 me da falso. ¿Es que tengo acaso que formatear el dato de alguna manera para poder compararlo? Es de lo más extraño.

Gracias por adelantado y un saludo.
Fernando Morales del Rosario
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Nuncamente mi estimado Fer.

Acuerdate que en todos los lenguajes que manejen procesador de punto flotante la comparacion numerica nunca es exacta.

Solucion: convierte a cadenas de caracteres AMBOS valores y luego realiza la comparacion

STR(valor,2) == STR(campo,2)
Saludos
R.F.
Fernando Morales
Posts: 17
Joined: Mon Oct 31, 2005 6:16 pm

Solucionado.

Post by Fernando Morales »

Ha funcionado perfectamente, aunque de la manera str( nValor, 9, 2 ).

Gracias y un saludo.
Fernando Morales del Rosario
Post Reply