Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Problemas con Calculo entre Fechas (https://www.clubdelphi.com/foros/showthread.php?t=29928)

CamiloU 03-02-2006 23:51:16

Problemas con Calculo entre Fechas
 
Buenas. tardes. Le pido coplaboracion con el siguiente problema. Al tratar de calcular el tiempo de servicio de una persona, se me pierden 26 dias. Este problema se presenta cuando la fecha inicial es anterior al año 2000 y la fecha de control es posterior al año 2000. Me podrian dar alguna idea de como solucionar ese problema.

Anexo el codigo que estoy utilizando:

DecodeDate(FecIngreso.Date, an, mn, dn);
DecodeDate(Now, ahoy, mhoy, dhoy);

if (dn > dhoy) then
begin
rd1 := 30 + dhoy - dn;
rm1 := rm1 - 1
end
else rd1 := dhoy - dn;
mhoy := mhoy + rm1;
if (mn > mhoy) then
begin
rm1 := 12 + mhoy - mn;
ra1 := ra1 - 1;
end
else rm1 := mhoy - mn;
ra1 := ra1 + ahoy - an;

jhonny 04-02-2006 01:43:26

Bueno, si lo que quieres es saber cuantos dias hay entre una fecha inicial y una fecha final, seguramente te servira la función DaysBetween de la unidad DateUtils, explicada mas a fondo en la siguiente dirección: http://www.delphibasics.co.uk/RTL.asp?Name=DaysBetween

scooterjgm 03-04-2006 23:48:51

Pq no restas las fechas directamente??

Código:

var hoy: TDateTime;
//****************************//
Hoy:=Date():
DiasDiferencia:= Hoy - FecIngreso.Date;

Con esto tienes los dias que han pasado de una fecha a otra.


La franja horaria es GMT +2. Ahora son las 21:04:27.

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