Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Tablas planas (https://www.clubdelphi.com/foros/forumdisplay.php?f=20)
-   -   Campos autocalculados en una tabla (https://www.clubdelphi.com/foros/showthread.php?t=18000)

JCarlos 28-01-2005 15:30:48

Campos autocalculados en una tabla
 
Hola a todos,

Tengo una preguntica, estoy trabajando en un proyecto en delphi 7 con base de datos paradox, en el proyecto tengo una tabla con los siguientes campos: Descripcion, valor, Fecha de adquisicion y depreciacion. Ademas 3 campos auto calculados, para que cuando muestre la tabla en el dbgrid en esos campos me muestre:
1. Depreciacion anual, esta la calculo con la siguiente formula Da=valor*dep/100
2. Depreciacion mensual, Dm=Da/12
3. Depreciacion acumulada Dac=(Da/365)*(Fecha actual - Fecha de Aquisicion)
estos campos los cree en la tabla, dando doble click, new field en la ventanita que muestra, tipo de campo autocalculado, tipo de campo Float..

Y en el evento oncalcfields de la tabla el siguiente codigo:
procedure TDataModule5.Table3CalcFields(DataSet: TDataSet);
begin
if not table3valor.IsNull and (table3valor.Value <>0) then
begin
table3danual.Value:=table3valor.Value * table3dep.Value/100;
table3dmes.Value:= table3danual.Value/12;
table3dacum.Value:= table3danual.value/365 * date-(table3fadq.value);
end ;

Esto compila bien, pero el resultado me lo muestra completo, es decir 3333.348459505 y los que el resultado es de 0.70, nada mas me muetra el .7.

Que es lo que estoy haciendo mal, trate de ponerle una maascara el campo autocalculado pero a lo mejor no la puse bien, pues me sigue haciendo lo mismo...

Agradeceria cualquier ayuda que me pudieran brindar... Gracias por adelantado.

Carlosguiland 28-01-2005 18:58:50

Hola, Das doble click sobre el componente Ttable, y le das, click derecho sobre la ventanita, te aparecera add fields, agregas todos lo campos que necesites

colocas el la propiedad displayformat ,0.##
los numerales te indican cuantos decimales quieres mostrar o puedes colocar
,0.00 y siempre te muestra 1200,00
Saludos...

JCarlos 28-01-2005 19:24:04

Hola Carlos.
Eso ya lo habia probado, pero no se por que no me funciona, si el resultado es 7, no me le agraga el .00 y en caso que despues del . tenga mas de 2 decimales, me los incliye todos, es decir 0.348697706847
Tendre otra cosa mal???? El campo cuando lo cree en la tabla asi como me dices con el click derecho en la ventanita escogi de tipo float.. Eso esta bien????
Gracias..

Carlosguiland 31-01-2005 02:12:56

Puedes utilizar,la funciòn format a la propiedad text, del edit o dbedit, aunque si estas utilizando el dbedit deberia hacerlo automatico, de lo contrario utiliza format
Saludos

marcoszorrilla 31-01-2005 07:17:24

DisplayFormat:=,0.00;

Un Saludo.

JCarlos 31-01-2005 13:08:34

Gracias a todos,
Ya el problema quedo resuelto. en la propiedad
DisplayFormat:=,0.##; como dijo Carlos
gracias nuevamente.


La franja horaria es GMT +2. Ahora son las 00:53:15.

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