Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Calcular edad (https://www.clubdelphi.com/foros/showthread.php?t=14075)

picapiedra 08-09-2004 22:51:22

Calcular edad
 
Favor ayudarme con el procedimiento que calcule la edad entre la fecha del sistema y el campo fecha de nacimiento almacenado en la tabla, y el resultado
colocarlo en edit en el formulario

Gracias:D

roman 08-09-2004 22:56:47

Puedes hacerlo con SQL aunque las funciones que se usan para calcular deiferencias de fechas pueden variar de una base de datos a otra así que tendrías que indicarnos con que base trabajas.

También puedes hacerlo con código Delphi usando la función YearsBetween de la unidad DateUtils que te da el número de años entre dos fechas (en este caso la que tienes en la base y la que te devuelve la función Date).

Si tu versión de Delphi no tiene dicha función puedes entonces usar DecodeDate para extraer los años da cada fecha y simplemente restar ambos resultados.

// Saludos

picapiedra 09-09-2004 00:31:47

la tabla esta en paradox y la version delphi es la 5

roman 09-09-2004 00:52:38

En Paradox me parece que hay poco que hacer pues si bien tiene la función EXTRACT para extraer campos individuales de una fecha, carece de una función que determine la fecha actual del sistema.

Pero como te dije anteriormente, puedes usar DecodeDate de la unidad SysUtils:

Código Delphi [-]
var
  Nacimiento: TDate;
  Hoy: TDate;

  ANacimiento: Word;
  AHoy: Word;

  Mes, Dia: Word;

begin
  Nacimiento := Table1.FieldByName('nacimiento').AsDateTime;
  Hoy := Date();

  DecodeDate(Nacimiento, ANacimiento, Mes, Dia);
  DecodeDate(Hoy, AHoy, Mes, Dia);

  Edit1.Text := IntToStr(AHoy - ANacimiento);
end;

Usando lo mismo puedes incluso agregar un campo calculado a la tabla.

// Saludos

marti 20-12-2004 23:27:29

no es una respuesta..es una pregunta..Ayuda!!
 
Hola!
Me podrían colaborar con esta información?

Trabajo con bases de datos FireBird
Deseo hacer una consulta que me arroje a que clientes les vendí el mes pasado pero, sin enviar un parametro fecha, sino utilizando la fecha del sistema..

Auxilio:confused:

De antemano, Muchas gracias por la atención prestada:D


La franja horaria es GMT +2. Ahora son las 12:44:01.

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