Вниз
Скачать: CL | DM;

Вычисление даты!   Найти похожие ветки 

 
h@1f-e1f ©   (2003-03-25 21:06) [0]

Извините за маленько ламерский вопрос, но как можно вычислить промежуток времени в месяцах и днях. Промежуток времени задан двумя датами: начало и конец промежутка...


 
Романов Р.В. ©   (2003-03-25 21:19) [1]

procedure CalcDateDelta(lDate, hDate: TDate; var dYear, dMonth, dDay: word);
var
yy1, yy2, mm1, mm2, dd1, dd2: word;
begin
if hDate > lDate then
begin
decodedate(lDate, yy1, mm1, dd1);
decodedate(hDate, yy2, mm2, dd2);
if (mm1>mm2) or ((mm1=mm2) and (dd1>dd2)) then
begin
dYear := yy2 - yy1 - 1;
dMonth := 12 - mm1 + mm2;
end
else
begin
dYear := yy2 - yy1;
dMonth := mm2 - mm1;
end;
if dd1>dd2 then
dec(dMonth);
dDay := trunc(hDate -
incmonth(lDate, dYear * 12 + dMonth));
end
else
begin
dYear := 0;
dMonth := 0;
dDay := 0;
end;
end;




 
h@1f-e1f ©   (2003-03-25 21:25) [2]

Спасибо! А проще никак? Причем тут тип данных word???


 
OxOTHuK   (2003-03-25 22:07) [3]

по-моему можно просто вычесть из одно даты другую, но постараться при этом не перепутать форматы даты исходной и выводимой...


 
Guerrillero ©   (2003-03-25 23:32) [4]

uses
DateUtils

DaysBetween
MonthsBetween

И еще смотри See also по справке



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
14-19859
alxx
2003-03-21 17:23
2003.04.07
:)


3-19506
OleGKu
2003-03-19 15:48
2003.04.07
MSSQL & Delphi


14-19807
бомонд
2003-03-19 09:03
2003.04.07
эссе


6-19739
Sr_pr
2003-02-16 02:00
2003.04.07
Receive bytes (Winsock)


1-19532
Nekto
2003-03-26 14:42
2003.04.07
Export from Word/Excel




   Наверх