gifts2017

Правильный расчет лет, месяцев, дней между датами

Опубликовал Павел С (pavel_pss) в раздел Программирование - Практика программирования

Форма имеет поля дата, между которыми рассчитывается количество лет, месяцев, дней.
Также можно, имея дату начала и указав количество лет, месяцев, дней, узнать дату окончания.

Расчет происходит не средствами 1С, т.к. у 1С алгоритм не правильный.

Код открыт

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
РасчетПериодаМеждуДатами
.epf 9,08Kb
05.03.10
209
.epf 9,08Kb 209 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Андрей Ильин (ailin) 05.03.10 16:34
Между 01.02.2010 - 28.02.2010 обработка выдает 27 дней
Между 01.01.2010 - 31.01.2010 - 30 дней
Должно быть 28 и 31 соответственно
raevsky@e1.ru; +1 Ответить 2
2. HEKPOH (wguki@yandex.ru) 05.03.10 17:14
3. apalon_pss (pavel_pss) 05.03.10 18:03
4. Андрей Ильин (ailin) 05.03.10 18:04
5. HEKPOH (wguki@yandex.ru) 05.03.10 22:25
(4) А вот здесь http://www.rvsn2.narod.ru/soft30.htm,
здесь http://help1c.com/faq/view/64.html
и здесь http://pers.narod.ru/jscript/datecalc.html считают, что между 1 и 28 февраля 27 дней. Эксель тоже так думает :)
6. Алексей Башта (bashta.aleksey) 06.03.10 00:12
Правильно или не правильно - зависит только от ситуации/задачи.
Если считаем между 1 и 28 февраля то да = 27 дней, а если считать количество дней (для нач.зарплаты) = 28 :)
7. Армен Арабханян (Arabo_xv) 09.03.10 12:03
Можно пример когда разность дат в 1С работает не корректно ?
raevsky@e1.ru; +1 Ответить
8. Galytskyy Volodymyr (arithmometr) 10.03.10 16:13
28.02.2010 - 31.01.2010 = 27 дн (должно быть 1 мес.)
31.01.2010 + 27 дн = 27.02.2010 (правильно)
31.01.2010 + 1 мес. = 28.02.2010 (правильно)
Эту задачу не так просто решить.
9. apalon_pss (pavel_pss) 10.03.10 16:14
Если мне память не изменяет то при получении разности дат (это типовая функция), она не правильно считает количество дней за год. (Могу ошибаться надо проверить) тоесть помоему за период 01.01.09 по 31.12.09 и 01.01.09 по 01.01.10 дает одинаковые данные. (вроде так). Как будет время проверю. :!:
10. Galytskyy Volodymyr (arithmometr) 10.03.10 16:59
Несколько лет назад я писал эту функцию для версии 7.7
http://infostart.ru/public/66955/
11. serg85 (serg85) 13.10.11 18:30
Спасибо за обработку, тема актуальна...
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа