Как добавить год в 1с 8

от admin

Как добавить к дате год?

Программисту 1С на практике часто приходится сталкиваться с приращением дат. В частности, бывают задачи, когда нужно получить тот же день месяца в следующем году или в предыдущем. Зная, что в сутках 86400 секунд (3600 * 24), а в году 365 дней, можно быстренько написать такую нехитрую формулу:

Однако, рано или поздно, обязательно обнаружатся проблемы с такой математикой: формула не учитывает високосные года. Чтобы не озадачивать себя вычислением количества дней в году, была придумана функция ДобавитьМесяц(). С ее помощью добавить или отнять год от даты не составит труда:

Как в 1С 8.3 прибавить месяц, день, неделю и т.д.

Рассмотрим разные способы добавления различных периодов дат в 1С 8.3 — от месяца, до секунды.

Простой и «топорный» метод

Метод хорошо отрабатывает при добавлении дня. Что касается месяца, в таком способе нам придётся контролировать количество дней в прибавляемом месяце, учитывая количество дней в следующем, ещё високосный год. Получается совсем сложно и громоздко.

Таким образом для операций с месяцами во встроенном языке 1С, как стандарт, существует две функции это ДобавитьМесяц() и в языке запросов ДОБАВИТЬКДАТЕ(). Рассмотрим подробно работу с каждой из них.

Функция ДобавитьМесяц()

ДобавитьМесяц(<Дата>, <ЧислоМесяцев>)

Где параметр <Дата> это «наша дата», <ЧислоМесяцев> количество добавляемых месяцев (цифра).

Если следует отнимать месяцы, то количество месяцев необходимо указывать со знаком минус.

Функция ДОБАВИТЬКДАТЕ() — в запросах 1С

Получите понятные самоучители по 1С бесплатно:

ДОБАВИТЬКДАТЕ(<Дата>, <Тип>, <Количество>)

Где параметры <Дата> это «наша дата», <Тип> это единица измерения временного интервала (ГОД, ПОЛУГОДИЕ, КВАРТАЛ, МЕСЯЦ, НЕДЕЛЯ, ДЕКАДА, ДЕНЬ, ЧАС, МИНУТА, СЕКУНДА), а в параметре <Количество> указывается число прибавляемых временных интервалов.

Если необходимо отнять временной интервал параметр <Количество> необходимо задавать со знаком минус.

Примечание — возможны ошибки

Если стоит задача отнять или прибавить к дате несколько месяцев. Используя данные функции, не стоит отнимать или прибавлять месяца последовательно, так как это приведёт к неверному результату. Допустим необходимо к дате 31 января 2020г. прибавить 2 месяца.

Прибавить к дате или вычесть из даты секунду, минуту, час, день, год

Для работы с датами в 1С Предприятии существуют специальные методы встроенного языка. При работе с датами может потребоваться прибавить к дате или вычесть из даты секунду, минуту, час, день, год. Это можно сделать как в запросе, так и в программном коде, средствами встроенного языка.

В программном коде

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

В запросе

Для решения данной задачи, в языке запросов есть специальная функция ДОБАВИТЬКДАТЕ(<Дата>, <Тип>, <Количество>). Параметр "Тип" указывает вид увеличения и может принимать значения: СЕКУНДА, МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ.

Комментарии (0)

Для того чтобы добавить сообщение, необходимо Войти или Зарегистрироваться

Тип дата 1с. Примеры кода.

Тип дата в 1с относится к примитивным типам данных. Он используется постоянно, например как реквизит даты Документа.

Читать:
Чем отличается сеть и гиперсеть

Другими словами типа дата в 1с содержит точную (с точностью до 0,1 миллисекунды) дату григорианского календаря.

Типовой порядок частей даты принятый в 1С — год, месяц, день, час, минута, секунда.

Самый простой способ задания даты представлен ниже:

Дата приравнивается к переменной строки цифр в одинарных кавычках.

В данной записи вида ‘ГГГГММДДччммсс’ где:

  • ГГГГ — четыре цифры года (включая тысячелетие и век);
  • ММ — две цифры месяца;
  • ДД — две цифры даты;
  • чч — две цифры часа (в 24-х часовом формате);
  • мм — две цифры минут;
  • сс — две цифры секунд.

Часы, минуты и секунды можно не указывать, при этом они приравниваются к нулю.

тип дата 1с

Функции типа Дата в 1с

Также перечень всех функций работы с датами можно посмотреть в синтакс-помощнике:

функции типа дата 1с

Функции типа Дата в 1с

Увеличение даты на 1 день

Значение типа данных дата определено с точностью до секунды. При прибавлении к дате числа 1 увеличивается время на 1 секунду. Поэтому увеличить дату на 1 день можно так:

пустая дата в 1с

Для того чтобы проверить дату на “пустое” значение, нужно сравнить имеющееся значение со значением типа “Дата” по умолчанию. Например:

Функция ДеньНедели()

Пример подсчета рабочих и выходных дней

Функция ДобавитьМесяц ()

Функция добавляет указанное количество месяцев к заданной дате. Синтаксис:

Добавляет (или вычитает) к указанной дате заданное число месяцев.

ТекущаяУниверсальнаяДатаВМиллисекундах

Функция ТекущаяУниверсальнаяДатаВМиллисекундах() позволяет узнать дату в миллисекундах. Она доступна начиная с версии платформы 8.2.17.

Функция Дата() служит для создания значения типа “Дата”. Использовать ее можно двумя способами:

  • Дата(x) — где параметр “x” это строка вида “ГГГГММДДччммсс”, часы, минуты и секунды можно опустить, т.е. преобразуем строку в дату;
  • Дата(x, y, z, w, v, c) — в этом случае параметры “x”, “y”, “z”, “w”, “v” и “c” являются числами и означают год, месяц, день, час, минуту и секунду соответственно. Как и в предыдущем случае час, минуту и секунду можно опустить.

МоментВремени

МоментВремени это объект который является совокупностью даты и ссылки на какой-либо объект информационной базы. Он используется в качестве значения свойств или параметров методов других объектов, имеющих тип МоментВремени. Применяться этот объект может при программном создании документов. Разные документы создаются в разные моменты времени. МоментВремени необходим для того, чтобы различать моменты времени для объектов имеющих одинаковую дату создания.

Количество дней в месяце в 1с: Предприятие

Пример нахождения Количество дней в месяце в 1с: Предприятие

Функция 1с Получить Дату из Строки

Получение Даты из строки популярная операция в программировании на 1с. Пример такой функции представлен ниже. При написании функции использовались только стандартные функции работы со строками и с Датой.

тип дата 1с

Код преобразования

Функция перевода данных типа даты при экспорте из файла электронной таблицы Excel.

Похожие статьи