Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как вычесть две даты и получить разницу в днях [D7, XP, 2003]


Aibolit ©   (2007-04-25 23:45:00) 

мне важны только разница в днях если две переменные в TDATE
например NOW - MY_DATE(типа TDATE), и получить либо строчно либо в формате целом разницу.


MsGuns   (2007-04-26 08:16:00) [1]

>Anatoly Podgoretsky ©   (26.04.07 01:07) [12]
>Нет ничего проще чем время и как много людей его не понимают.

Однако гипербола


Германн   (2007-04-26 01:22:00) [2]


> Anatoly Podgoretsky ©   (26.04.07 01:02) [11]
>
> > Германн  (26.04.2007 00:59:10)  [10]
>
> Ну тогда я уже ответил, за два дня. И в этом бизнесе нельзя
> работать с целыми
>
> --
>

Хм. А я почему-то думаю, что за три дня. 26-го в 12:00 будет раз. 27-го в 12:00 будет два. А 27-го в 14:00 будет три! Или я не прав?


> Anatoly Podgoretsky ©   (26.04.07 01:07) [12]
>
> > Anatoly Podgoretsky  (26.04.2007 01:02:11)  [11]
>
> Я вообще тебе одну умную вещь скажу
>
> Нет ничего проще чем время и как много людей его не понимают.
>
>

Не перевирай К.Саймака.
"Что может быть проще времени" (Time Is The Simplest Thing ) © 1961 by Clifford D. Simak


Anatoly Podgoretsky   (2007-04-26 01:07:00) [3]

> Anatoly Podgoretsky  (26.04.2007 01:02:11)  [11]

Я вообще тебе одну умную вещь скажу

Нет ничего проще чем время и как много людей его не понимают.


Anatoly Podgoretsky   (2007-04-26 01:02:00) [4]

> Германн  (26.04.2007 00:59:10)  [10]

Ну тогда я уже ответил, за два дня. И в этом бизнесе нельзя работать с целыми

--


Германн   (2007-04-26 00:59:00) [5]


> Anatoly Podgoretsky ©   (26.04.07 00:58) [9]
>
> > Германн  (26.04.2007 00:53:08)  [8]
>
> А ты скажи расчетное время.
>
> --
>

Ну есс-но 12:00


Anatoly Podgoretsky   (2007-04-26 00:58:00) [6]

> Германн  (26.04.2007 00:53:08)  [8]

А ты скажи расчетное время.

--


Германн   (2007-04-26 00:53:00) [7]


> Anatoly Podgoretsky ©   (26.04.07 00:48) [5]
>
> > Германн  (26.04.2007 00:44:04)  [4]
>
> За два, если стандартные условия по расчетному времени в
> 12:00
>

О. Анатолий оказывается тут! Я то как раз вспомнил ваши, Анатолий, многочисленные высказывания о разницах дат.
Давайте уточним. Заселение было 25.04.07 в 16:00, а выселение будет 27.04.07 в 14:00. За сколько дней придётся платить?


McSimm   (2007-04-26 00:51:00) [8]

1 день.
Тип TDate не подразумевает хранение дробной части (времени).


McSimm   (2007-04-26 00:51:00) [9]

да, два дня, невнимательно прочитал


Anatoly Podgoretsky   (2007-04-26 00:48:00) [10]

> Германн  (26.04.2007 00:44:04)  [4]

За два, если стандартные условия по расчетному времени в 12:00

--


Германн   (2007-04-26 00:44:00) [11]


> McSimm ©   (26.04.07 00:39) [3]
>
>
> > Германн ©   (26.04.07 00:36) [2]
>
>
>
> > has no decimal part
>

Ну и что?
Предположим ты заселился в гостиницу вчера в 16:00, а выселишься завтра в 14:00. Вопрос - сколько дней ты прожил в гостинице? То бишь за сколько дней ты заплатишь :)


McSimm   (2007-04-26 00:39:00) [12]


> Германн ©   (26.04.07 00:36) [2]



> has no decimal part


Германн   (2007-04-26 00:36:00) [13]


> McSimm ©   (25.04.07 23:59) [1]

Ну это смотря кто считает разницу.
В гостинничном бизнесе тебя уволят за такие расчёты :)


McSimm   (2007-04-25 23:59:00) [14]

из справки (F1)

> TDate represents a special type of TDateTime value that
> has no decimal part. A TDate value represents the number
> of daysthat have elapsed since 12/30/1899.


Поэтому

> NOW - MY_DATE

даст разницу между датами в днях.
---
Trunc() позволяет преобразовать к целому.


Наверх

Титульная страница Поиск, карта сайта Написать письмо