Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   limitar los decimales en paradox (https://www.clubdelphi.com/foros/showthread.php?t=30939)

Perenquen 24-04-2006 14:58:23

limitar los decimales en paradox
 
Quisiera saber si hay alguna propiedad en los campos N de paradox para limitar el numero de decimales que se almacena.
Por ejemplo:

Tabla.fieldbyname('precio').value := 1.23456789*2.13;

Esto me almacenaría en la tabla el valor 2,6296296057, y me gustaría el valor de decimales a almacenar.

Se que podría formatear el valor antes de almacenarlo, pero lo que quisiera saber es si el campo tiene alguna propiedad que lo haga.

He probado con displayformat pero sólo sirve para visualizar el valor tal y como queremos, no sirve para almacenarlo.

Un saludo a todos.

casacham 15-04-2007 16:31:12

Limitando la precision
 
Hay una propiedad que tienen los TFloatField y los Currency en el inspector de objetos que se llama Presicion que normalmente es de 15 cuando agragas los campos. Lo que tenes que haces es seleccionarlos a todos tus campos y luego bajar la presicion a 5. Eso es todo, a menos que tu problemilla sea otra cosa que no estes detallando

DavidSG4 04-04-2011 16:53:09

mas de dos decimales
 
Cita:

Empezado por casacham (Mensaje 194999)
Hay una propiedad que tienen los TFloatField y los Currency en el inspector de objetos que se llama Presicion que normalmente es de 15 cuando agragas los campos. Lo que tenes que haces es seleccionarlos a todos tus campos y luego bajar la presicion a 5. Eso es todo, a menos que tu problemilla sea otra cosa que no estes detallando

muy buenas y gracias por anticipado(utilizo delphi 5 y paradox 7).

mi problema es que en vez de mostrar solo dos decimales quiero mostrar 3 y no encuentro la manera de hacerlo.

he cambiado la propiedad displayformat a #0,000
he cambiado la precision y nada siempre me guarda con dos decimales incluso en la bbdd que es paradox 7 intento meter mas de dos decimales y me redondea ella sola.

Saludos y gracias

ecfisa 04-04-2011 19:55:36

Hola DavidSG4.

En este hilo, está explicado con detalle el uso de las mascaras .

Para tu caso creo que bastaría con :
Código Delphi [-]
   DisplayFormat:= '0.000';

Un saludo.

Sr_leo 05-04-2011 03:19:35

Otra posibilidad seria usar algo asi
Ej
importe:= 1000,34555;
Edit1.text:=currtostrf(importe,ffnumber,3);
esto te mostraria en el edit 1000,346
sino
Edit1.text:=currtostrf(importe,ffnumber,10,3);
10 son los digitos
3 los decimales

creo que el el help esta explicado bastante bien. Espero que te sirva.

Saludos

Leo

DavidSG4 05-04-2011 09:28:04

Cita:

Empezado por ecfisa (Mensaje 395770)
Hola DavidSG4.

En este hilo, está explicado con detalle el uso de las mascaras .

Para tu caso creo que bastaría con :
Código Delphi [-] DisplayFormat:= '0.000';


Un saludo.

ok voy a probar muchas gracias y a mirarme un poco las mascaras del delphi

DavidSG4 05-04-2011 09:29:04

Cita:

Empezado por Sr_leo (Mensaje 395834)
Otra posibilidad seria usar algo asi
Ej
importe:= 1000,34555;
Edit1.text:=currtostrf(importe,ffnumber,3);
esto te mostraria en el edit 1000,346
sino
Edit1.text:=currtostrf(importe,ffnumber,10,3);
10 son los digitos
3 los decimales

creo que el el help esta explicado bastante bien. Espero que te sirva.

Saludos

Leo

me parece mas compliacado de lo que propone ecfisa pero lo estudiare gracias.


La franja horaria es GMT +2. Ahora son las 07:22:36.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi