Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   DBGrid, trabajar con fechas (https://www.clubdelphi.com/foros/showthread.php?t=24813)

BlueSteel 02-09-2005 20:28:30

DBGrid, trabajar con fechas
 
Hola Amigos..

Estoy utilizando un DBGrid, en donde despliego datos de una tabla. Un campo es de tipo date (Interbase 6 - Delphi 7), llamado Fec_Nacimiento.

Ahora bien, lo que quiero es realizar un calculo (en el mismo DBGrid), para que en vez de la columna Fec_Nacimiento me aparesca la Edad (tanto en Años como en Meses, calculada a la fecha actual ).

Es decir, en vez de que aparezca 03-12-1976 aparesca 28 Años, 9 Meses

:p :confused:

delphi.com.ar 02-09-2005 20:30:24

Yo me tiraría a crear un campo calculado. Busca en el foro que hay información de sobra al respecto.

Saludos!

BlueSteel 02-09-2005 20:31:06

en este hilo http://www.clubdelphi.com/foros/show...=calcular+edadencontre la función para calcular la edad con años y meses...

Mi otra consulta... se puede hacer en el DBGrid, que en vez de que salga el campo Fecha_Nacimiento aparezca la edad ? o tendría que hacerlo en una columna nueva ? :D

jmariano 02-09-2005 20:40:08

Tal y como te dijo Federico, primero creas el campo calculado (para cálcular el valor del campo utilizarías la función que encontraste) y después editas el DBGrid para quitar el campo "Fecha_Nacimiento" (a través de la propiedad "Columns") y añadir el campo calculado, eso eso todo!

Saludos!

BlueSteel 02-09-2005 21:30:20

Realice un proceso más corto.. .para poder calcular la edad en Años y Meses

Código:

label7.Caption :=Concat(IntToStr(Trunc(Date - nacimiento.Date) div 365),' Años ',IntToStr((Trunc(Date - nacimiento.Date) - (Trunc(Date - nacimiento.Date) div 365) * 365) div 30),' Meses');
Explicación:

Con
Código:

(Trunc(Date - nacimiento.Date) div 365)
el codigo anterio me calculo la cantidad de años...


Código:

( Trunc(Date - nacimiento.Date) - (Trunc(Date - nacimiento.Date) div 365) * 365) div 30
el codigo anterior me calcula los meses

Se supone que nacimeinto.date es un dato en formato de fecha que contiene la fecha_nacimiento y date muestra la fecha_actual... todo esto lo despliego en un label.

Espero que sirva..


La franja horaria es GMT +2. Ahora son las 18:21:55.

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