Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];

Вниз

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

 
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 вся ветка

Форум: "Основная";
Текущий архив: 2003.04.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.44 MB
Время: 0.007 c
1-19677
Levova
2003-03-26 10:28
2003.04.07
string -> char


8-19698
Andry
2003-01-01 15:22
2003.04.07
Быстрый вывод изображения


1-19634
val_123
2003-03-25 16:14
2003.04.07
Несбрасываемый счётчик


4-19928
Roughneck
2003-02-10 11:01
2003.04.07
Menu


4-19920
xZero
2003-02-09 00:15
2003.04.07
PE





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский