Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.07.25;
Скачать: CL | DM;

Вниз

Разность между датами   Найти похожие ветки 

 
Vlad Schekunov   (2002-07-14 06:05) [0]

Здравствуйте все!
Проблема такая: есть две даты (дата поступления - дата увольнения). Нужно получить разность между ними в формате: кол-во_лет, кол-во_месяцев, кол-во_дней. Может кто-нибудь подскажет алгоритм? Заранее благодарен.


 
MBo ©   (2002-07-14 10:44) [1]

Вопрос задается через день. Стоит поискать по форуму


 
TTCustomDelphiMaster ©   (2002-07-14 11:46) [2]

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;



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

Текущий архив: 2002.07.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.01 c
1-81242
Arco
2002-07-14 18:17
2002.07.25
Формы, формы, формы ...


8-81389
Vvedensk
2002-03-15 14:23
2002.07.25
Как увеличить изображения с малой потерью качества подобно таму как это делает PhotoShop


3-81187
Nebula
2002-07-04 14:53
2002.07.25
IB


1-81311
Loco
2002-07-12 13:26
2002.07.25
Снова исключения. = (


1-81335
Crypto
2002-07-12 21:42
2002.07.25
как передать через ShellExecute много(!) E-mail адресов?