Redondeo de Decimales

630 views
Skip to first unread message

Carlos MauricioTorres Suárez

unread,
May 15, 2013, 2:23:06 PM5/15/13
to publice...@googlegroups.com
Porqué en un formulario al tomar un valor con cinco decimales, el VFP9 SP2 lo redondea e 2 decimales

Gracias,

Saludos

Ricardo Pina

unread,
May 15, 2013, 2:27:46 PM5/15/13
to Grupo VFP
Hola Carlos
 
Sin más datos puede ser el origen de datos, alguna máscara o el set decimal, tendrías que decirnos en que situación se da ese redondeo.
 
Saludos
--
            

                   Ricardo Pina

Desarrollo y Servicios Informáticos

                  Profesionales
               www.dsip.com.ar

 

 

Martin Peveri

unread,
May 15, 2013, 2:28:48 PM5/15/13
to publice...@googlegroups.com
Hola no se como estarás haciendo, pero lo puedes manejar con la función ROUND.

Saludos

Fernando D. Bozzo

unread,
May 15, 2013, 2:33:05 PM5/15/13
to publice...@googlegroups.com
Porque por defecto el SET DECIMALS es 2. Para usar más decimales tenés que cambiarlo.
Es importante saber que FoxPro hace los cálculos con todos los decimales, y que esta configuración solo es visual y afecta a cómo se muestran los valores.

Saludos.-

Luis Maria Guayan

unread,
May 15, 2013, 2:52:57 PM5/15/13
to publice...@googlegroups.com
Deberías ser mas específico con tu pregunta.

¿Tienes configurado el SET DECIMAL TO 5? Esto solo es válido para la visualización, que por defecto es dos decimales.
¿El formulario que indicas tiene sesion privada de datos? Hay muchos comandos SETs que solo tienen alcance en la sesión actual de datos.

Luis María Guayán
Tucumán, Argentina
_________________________
http://www.PortalFox.com
Nada corre como un zorro
_________________________

Jairo Miranda

unread,
May 15, 2013, 3:08:13 PM5/15/13
to publice...@googlegroups.com

Un poco de ayuda con : el foxhelp

 

ROUND( ) (Función)

Vea también

INT( ) | SET DECIMALS | SET FIXED (Comando)

Devuelve una expresión numérica redondeada a un número especificado de cifras decimales.

ROUND(nExpression, nDecimalPlaces)

Valores devueltos

Numeric

Parámetros

nExpression

Especifica la expresión numérica cuyo valor desea redondear.

nDecimalPlaces

Especifica el número de cifras decimales a los que se redondea nExpression.

Si nDecimalPlaces es negativo, ROUND( ) devuelve un número entero que contiene nDecimalPlaces ceros a la izquierda del separador decimal. Por ejemplo, si nDecimalPlaces es –2, la primera y la segunda cifra a la izquierda del separador decimal del valor serán cero.

Observaciones

El valor devuelto por ROUND( ) tiene el mismo número de lugares decimales que nDecimalPlaces. ROUND( ) pasa por alto el número de cifras decimales especificado por SET DECIMALS.

Ejemplo

SET DECIMALS TO 4

SET FIXED ON     && Fix decimal display

CLEAR

 

? ROUND(1234.1962, 3) && Displays 1234.1960

? ROUND(1234.1962, 2) && Displays 1234.2000

? ROUND(1234.1962, 0) && Displays 1234.0000

? ROUND(1234.1962, -1)  && Displays 1230.0000

? ROUND(1234.1962, -2)  && Displays 1200.0000

? ROUND(1234.1962, -3)  && Displays 1000.0000

 

SET FIXED OFF  && Restore start up defaults

SET DECIMALS TO 2

Vea también

INT( ) | SET DECIMALS | SET FIXED (Comando)

JM

Reply all
Reply to author
Forward
0 new messages