Главная страница
    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.008 c
14-19844
cyborg
2003-03-20 22:40
2003.04.07
Хакнули


4-19917
Cosmic
2003-02-07 18:56
2003.04.07
Ловушка на создание окна


4-19931
Donatas
2003-02-07 11:39
2003.04.07
mesages


4-19935
Sliski Slimak
2003-01-24 18:15
2003.04.07
Подсказки в стиле WinXP


3-19494
V-A-V
2003-03-19 09:03
2003.04.07
Глюк в клиентской DataSet или я, что не понимаю





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский