![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Получить начало и конец дня [D2005, XP]
Уч © (2006-09-07 13:59:00)Получаю текущий день
var
TD: TDateTime;
TD := Now;
a как получить начало и конец этого дня?
evvcom (2006-09-07 15:41:00) [1]> [8] Уч (07.09.06 15:30)
> разница в значениях которое мне потом вернет DateTimeToStr
Ну и что оно тебе должно вернуть? И почему?
Так вам шашечки или ехать? (с)
SergP. (2006-09-07 15:40:00) [2]А для особо ленивых есть стандартные функции:
StartOfTheMonth()
EndOfTheMonth()
находятся в dateutils
Ega23 (2006-09-07 15:39:00) [3]
> разница в значениях которое мне потом вернет DateTimeToStr
Так тебе строковое представление конца месяца надо? Или истинное?
SergP. (2006-09-07 15:34:00) [4]> [8] Уч (07.09.06 15:30)
> нужен первый и последний день месяца от указанной даты
Первый день - это когда номер дня ставим 1.
Последний день это когда берем первый день следующего месяца и отнимаем 1
Уч (2006-09-07 15:30:00) [5]нужен первый и последний день месяца от указанной даты
> А какая тебе разница?
разница в значениях которое мне потом вернет DateTimeToStr
> Ну с началом вроде как все ясно, а с концом аналогично,
> как и с концом дня :)
а это не понял, до какого порядка округлять?
evvcom (2006-09-07 14:53:00) [6]> [2] Уч (07.09.06 14:29)
> Ceil(Now) - дает начало следующего дня, а не конец текущего
А какая тебе разница? Или ты будешь конец дня на равенство проверять? Все равно равенства не получишь, читай про сравнение чисел с плавающей запятой. Потому сравнивай строгос началом следующего дня. Аналогично и с месяцем.
> [6] Ega23 © (07.09.06 14:44)
> А что есть начало и конец месяца?
Ну с началом вроде как все ясно, а с концом аналогично, как и с концом дня :)
Ega23 (2006-09-07 14:44:00) [7]
> а есть варианты для начала и конца месяца?
А что есть начало и конец месяца?
Не, я не прикалываюсь, я серьёзно. Это именно то время (количество дней * 24 часа), которое прошло в месяце? Это первый и последний день месяца?
Не всё так просто.
Уч (2006-09-07 14:36:00) [8]первый вариант утроил бы
сделал так: trunc(Now) + 0.999999
Уч (2006-09-07 14:36:00) [9]а есть варианты для начала и конца месяца?
Ega23 (2006-09-07 14:31:00) [10]А что есть конец текущего?
23:59:59?
23:59:59.999?
23:59:59.99999999?
Уч (2006-09-07 14:29:00) [11]спасибо, начало работает
Ceil(Now) - дает начало следующего дня, а не конец текущего
stone (2006-09-07 14:03:00) [12]
> начало
Trunc(Now)
> конец
Ceil(Now)