Количество Дней.

Antigo

Active Member
16.02.2012
40
0
#1
Всем привет!
суть вопроса такова:
при открытии документа мне нужно выводить окошко, в котором бы выводилось число дней, которые остались до закрытия документа. Это количество вычисляется так: от текущей даты отнимаем дату создания документа, и если разница меньше 10 дней, например 9, то при открытии выводить окошко "Внимание, до закрытия документа осталось 9 дней", если 8 дней, то окошко с 8 днями. Как тут можно попроще реализовать это? кроме как через TimeDifference, вычисляя разницу в секундах есть еще какие-то варианты?
Спасибо
 

savl

Well-Known Member
Lotus team
28.10.2011
2 126
163
#2
разница всегда в секундах.

Что-то мне подсказывает, что вот это неверно: от текущей даты отнимаем дату создания документа
Первые 9-10 дней фраза будет постоянно появляться.

Можно сделать ход конем:
1. Берем нужную дату из документа
2. Увеличиваем/уменьшаем её на нужное количество дней
3. Сравниваем с текущей.
4. ?????
5. PROFIT!!!

или наоборот:
1. Берем сегодняшнюю дату
2. Увеличиваем/уменьшаем её на нужное количество дней
3. Сравниваем с датой из документа.
4. ?????
5. PROFIT!!!
 

Omh

Well-Known Member
Lotus team
04.07.2007
2 210
1
#3
Можно оперировать не разницей в секундах.

То, что тебе надо, проще всего сделать так:
Код:
Days = Fix(Now - doc.Created)
Получишь кол-во дней.
Инфа 100%

Вообще, каждая дата это Double, в котором целая часть - оффсет от начала времён (день номер 1 это 31.12.1899)
А дробная часть - оффсет от начала дня.

Итого:
Дата 2,5 - это ничто иное, как 01.01.1900 12:00:00
Дата 500,125 - это ничто иное, как 14.05.1901 3:00:00
А сегодня, а момент написания поста - 41781,5455671296

Так что с датами можно спокойно оперировать как с числами.
PROFIT!!!