В 1С 8 нет специальной встроенной функции для программного добавления дней к переменной типа Дата. Но есть несколько способов, которые помогут в 1с прибавить к дате день.
Программно в 1с прибавить к дате день. Способ 1
К дате можно прибавлять (и убавлять) секунды, при помощи оператора +.
В одном дне: 24*60*60 = 86400 секунд.
Таким образом для добавления дня к дате к ней необходимо прибавить 86400.
Пример. Пусть в переменной МояДата содержится искомая дата.
ДатаПлюсДень = МояДата + 86400;
В 1с добавить день к дате. Способ 2
Если вам необходимо получить начало следующего дня от заданной даты, то можно воспользоваться встроенной функцией КонецДня(<Дата>), после чего добавить к полученной дате одну секунду.
Пример 2:
НоваяДата = КонецДня(МояДата) + 1;
Таким образом мы прибавили к концу заданного дня одну секунду и получили начало следующего дня.
Отметим, что для добавления месяцев в 1С 8 существует отдельная встроенная функция ДобавитьМесяц(<Дата>, <ЧислоМесяцев>). Для того что бы отнять необходимое количество месяцев, нужно что бы параметр ЧислоМесяцев был отрицательным.
Способ 3
Также добавить день к искомой дате в 1С 8 можно при помощи запроса. В языке запросов есть специальная функция ДОБАВИТЬКДАТЕ(<Дата>, <Тип>, <Количество>) предназначенная для изменения дат. Параметр Тип может принимать значения: СЕКУНДА, МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ и т.д., что позволяет изменять даты на любые промежутки времени.
Пример 3.
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Дата", ТекущаяДата());
Запрос.Текст =
"ВЫБРАТЬ
| ДОБАВИТЬКДАТЕ(&Дата, ДЕНЬ, 1) КАК НоваяДата";
Результат = Запрос.Выполнить().Выбрать();
Результат.Следующий();
НоваяДата = Результат.НоваяДата;
Если вы не умеете писать запросы на встроенном языке 1с, то советую вам прочитать статью Язык запросов 1с — оператор Выбрать, в ней подробно описывается из каких блоков состоит запрос в 1С 8 и как его правильно использовать. После этой статьи прочтите следующую ее часть Запросы 1с 8 — Программная работа. Изучение языка запросов поможет вам стать более грамотным программистом. На этом все, теперь вы знаете три способа, как программно в 1с прибавить к дате день.
Добавить комментарий