1с как получить следующий рабочий день

Обновлено: 04.07.2024

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

Одной из первых моих статей в этой рубрике была небольшая шпаргалка по работе с датами, но о датах в запросах там было написано очень мало. В запросах 1С с датами приходится работать довольно часто, особенно когда запрос строится к объектам метаданных в которых содержится периодическая информация. Как правило это регистры (сведений, накопления, расчета, бухгалтерии).

Функция Год

Функция Квартал

Возвращает номер квартала даты (целочисленное значение от 1 до 4)

Предположим, в ЗаказПокупателя передаем заказ №100 от 12.03.2016, в этом случае наш запрос вернет НомерКвартала = 1

Функция Месяц

Принимает параметр типа ДАТА. Возвращает номер месяца даты (целочисленное значение от 1 до 12).

Запрос вернет – 6

Функция ДеньГода

Принимает параметр типа ДАТА. Возвращает номер дня в году (целочисленное значение от 1 до 366).

Функция День

Принимает параметр типа ДАТА. Возвращает номер дня в месяце (целочисленное значение от 1 до 31).

Функция Неделя

Принимает параметр типа ДАТА. Возвращает номер недели в году.

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

Принимает параметр типа ДАТА. Возвращает номер дня недели (целочисленной значение от 1 (понедельник) до 7 (воскресенье)).

Функция Час

Принимает параметр типа ДАТА. Возвращает час суток (целочисленное значение от 0 до 23).

Функция Минута

Принимает параметр типа ДАТА. Возвращает минуты часа (целочисленное значение от 0 до 59).

Функция Секунда

Принимает параметр типа ДАТА. Возвращает секунды минуты (целочисленное значение от 0 до 59).

Функция НачалоПериода

Функция возвращает для указанной даты начало периода в который она входит. Период может принимать следующие значения: МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ

Запрос вернет – 01.06.2016

Функция КонецПериода

Функция возвращает для указанной даты конец периода в который она входит. Период может принимать следующие значения: МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ

Запрос вернет – 30.06.2016

Функция ДобавитьКДате

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

Получаем дату 15.10.2016 0:00:00 Очень удобно, что не приходится задумываться о количестве дней в месяцах.
Количество может быть и отрицательным. Тогда отсчет интервала производится в обратную сторону.

Функция РазностьДат

Функция рассчитывает календарную разницу между двумя датами и ее нельзя использовать в местах, где необходимо рассчитать банковских или рабочих дней. Тип может принимать следующие значения: МИНУТА, ЧАС, ДЕНЬ, НЕДЕЛЯ, МЕСЯЦ, КВАРТАЛ, ГОД, ДЕКАДА, ПОЛУГОДИЕ

В прошлой статье мы узнали, что такое дата и как с неё работать. В этой статье изучим основные функции работы с датами в 1С 8.3.

Текущая дата в 1С

В 1С имеется возможность получить текущую дату, ту дату, которая выставлена в данный момент в операционной системе компьютера. Делается это при помощи метода ТекущаяДата.

Этот метод является функцией, не имеет параметров и с его помощью можно получить текущую дату в 1С 8.3.

Посмотрим, что возвращает этот код

Текущая дата в 1С

Как вы могли заметить, текущая дата получена в полном формате (год, месяц, день, час, минута и секунда), т.е. текущая дата у нас возвращается с точностью до секунды.

Определить год, месяц, день, час, минуту и секунду даты в 1С

В платформе 1С имеются методы, которые возвращают числовое представление года, месяца, дня, часа, минут и секунды определенной даты. Данные методы так и называются

Год(<Дата>) – возвращает год даты

Месяц(<Дата>) – возвращает месяц даты

День(<Дата>) – возвращает день даты

Час(<Дата>) – возвращает час даты

Минута(<Дата>) – возвращает минут даты

Секунда(<Дата>) – возвращает секунду даты

Рассмотрим пример, в котором возьмем текущую дату и вернем год, месяц, час, минуту и секунду этой даты.

И результат работы этого кода.

Методы 1С год, месяц, день, число, минута, секунда

Дата начала и дата конца периода в 1С

В платформе 1С 8.3. имеется возможность определить начало и конец периода даты, которому она принадлежит.

Возьмем, например, дату 10.09.2017 – начала месяца этой даты будет 01.09.2017, а начало года – 01.01.2017. И противоположное, у этой даты конец месяца – 30.09.2017, а конец года -31.12.2017.

Делается это при помощи следующих методов:

И противоположные методы:

Данные методы являются функциями, которые имеют один параметр с типом дата и возвращают соответствующую дату.

Рассмотрим пример, в котором будем получать начало и конец квартала текущей даты, начало и конец недели текущей даты, и начало и конец часа текущей даты. В этом примере будет шесть методов: НачалоКвартала, НачалоНедели, НачалоЧаса, КонецКвартала, КонецНедели, КонецЧаса. Остальные методы определения начала и конца периода работают аналогично.

И результат работы этих методов.

Дата начала и дата конца периода

Неделя года, день года и день недели

Рассмотрим похожие функции, которые возвращают порядковый номер соответствующего периода, которому принадлежит дата.

НеделяГода(<Дата>) – возвращает порядковый номер недели в году, на которую приходится дата.

ДеньГода(<Дата>) – возвращает порядковый номер дня года указанной даты.

ДеньНедели(<Дата>) – возвращает порядковый номер дня недели указанной даты.

Сделаем пример, в котором у текущей даты определим какой день недели (понедельник, вторник и т.д.), какой день года, и какая неделя в году.

Неделя года, день года и день недели

Добавить месяц к дате в 1С

В предыдущей статье мы научились добавлять к дате секунды (или вычитать из даты секунды). Делается это прибавлением к дате любого целого числового значения. Например, так:

В этом примере мы прибавили к дате 1 час. Но если нужно к какой-то дате прибавить месяц, то данный метод не всегда подойдет: в разных месяцах разное количество дней.

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

Этот метод является функцией, возвращает переменную с типом дата и имеет следующий синтаксис:

Этот метод добавляет или вычитает из даты в первом параметре количество месяцев из второго параметра.

Рассмотрим пример: добавим к текущей дате месяц и год, а также вычтем из текущей даты месяц и год.

И результат этого кода:

Добавить месяц к дате

Другие статьи о примитивных типах:

Программировать в 1С за 11 шагов

  1. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  2. Научитесь понимать архитектуру 1С;
  3. Станете писать код на языке 1С;
  4. Освоите основные приемы программирования;
  5. Закрепите полученные знания при помощи задачника.

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

Основы разработки в 1С такси

  1. Очень доступный и понятный язык изложения
  2. Книга посылается на электронную почту в формате PDF. Можно открыть на любом устройстве!
  3. Поймете идеологию управляемого приложения 1С
  4. Узнаете, как разрабатывать управляемое приложение;
  5. Научитесь разрабатывать управляемые формы 1С;
  6. Сможете работать с основными и нужными элементами управляемых форм
  7. Программирование под управляемым приложением станет понятным

Эти книги, плюс книга по программированию оперативного учета имеются в едином комплекте: комплект книг по разработке в 1С.
Только для читателей моего блога,
промо-код на скидку в 300 рублей на весь комплект: blog


Если Вам понравился этот урок, был полезен или помог решить какую-нибудь проблему, то Вы можете поддержать мой проект, перечислив любую сумму
.

можно оплатить вручную:

personal photo

Графики работы, которые устанавливаются организациям штатным единицам в штатном расписании, назначаются сотрудникам при приеме на работу, кадровом перемещении или при переводе сотрудника из одной организации, входящей в состав предприятия, в другую, учет по которой также ведется в программе, описываются в справочнике Графики работы сотрудников (Настройка - Графики работы сотрудников).

В комплект поставки включен график с наименованием Пятидневка. Данный график описывает рабочее время для пятидневной 40-часовой рабочей недели с двумя выходными днями: в субботу и воскресенье. Продолжительность каждого рабочего дня составляет 8 часов без перерыва на обед. При заполнении графика учитываются праздничные дни.

Если график работы, установленный в организации, соответствует графику Пятидневка, то дополнительных настроек (изменения параметров графика) не требуется. Достаточно раз в год производить его заполнение на очередной календарный год. Однако предварительно необходимо проверять заполнение регламентированного производственного календаря, связанного с графиком работы.

Заполнение графика на последующие периоды (на следующий год) производится по мере необходимости, но обязательно до проведения расчетов начислений, приходящихся на следующий календарный год.

Чтобы составить график рабочего времени на очередной год, необходимо после заполнения производственного календаря в форме графика указать рабочий год в поле Год, за который отображается график работы и нажать на кнопку Заполнить.

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

Настройка производственного календаря

При добавлении нового графика в справочник Графики работы сотрудников по кнопке Создать необходимо :

  • указать наименование графика
  • выбрать рабочий год, на который первоначально будут заполняться данные
  • настроить свойства нового графика работы. Для этого по ссылке Изменить свойства графика. вызывается форма Настройка графика работы.

Настройка производственного календаря

Настройка свойств графика работы в форме Настройка графика работы состоит из нескольких этапов.

Выбор производственного календаря

Становится доступным, если на предприятии предусмотрено несколько производственных календарей. Это может понадобиться для организаций, обособленные подразделения или филиалы которых расположены в регионах, имеющих собственные праздничные дни (для таких регионов норма дней не совпадает с общероссийским производственным календарем). Список производственных календарей хранится в справочнике «Производственные календари» (Настройка - Производственные календари). По умолчанию для всех графиков работы установлен производственный календарь с наименованием «Российская Федерация».

Настройка производственного календаря

Указание способа заполнения графика

  • По дням недели (пятидневка, шестидневка и т.п.). Если выбран данный способ, то по умолчанию свойства графика заполнятся автоматически, и они будут соответствовать графику Пятидневка, который описывает рабочее время для пятидневной 40-часовой рабочей недели с двумя выходными днями: в субботу и воскресенье. При заполнении графика учитываются праздничные дни. Продолжительность каждого рабочего дня составляет 8 часов без перерыва на обед. Данный способ заполнения графика позволяет составить расписание с указанием продолжительности работы в часах по каждому выбранному виду времени по дням недели
  • По циклам произвольной длины (сменные графики). Данный способ заполнения графика позволяет составить расписание работы в виде режима работы по дням в течение цикла: для каждого дня указывается количество рабочих часов отдельно по каждому выбранному виду времени.

Флаг При заполнении учитывать праздничные дни устанавливается, если необходимо, чтобы при заполнении календаря графика учитывались праздничные дни по производственному календарю: продолжительность работы в праздничный день в этом случае устанавливается равной 0, продолжительность работы в предпраздничный день сокращается на 1 час.

Настройка производственного календаря

Ведение суммированного учета рабочего времени

  • Флаг Суммированный учет рабочего времени установите для тех графиков работы, по которым ведется суммированный учет рабочего времени (если работа в организации ведется в непрерывном режиме, т.е. не останавливается на выходные и праздничные дни).
  • Флаг Суммированный учет рабочего времени появляется, если в настройке параметров расчета зарплаты (Настройка – Расчет зарплаты –Настройка состава начислений и удержаний) на закладке Почасовая оплатаустановлен флаг Применение почасовой оплаты.

Настройка производственного календаря

Настройки продолжительности рабочей недели

  • флаг Неполное рабочее время установите, если график предусматривает работу в режиме неполного рабочего времени (неполный рабочий день или сокращенная рабочая неделя). Если графиком неполного рабочего времени предусмотрено сокращение продолжительности ежедневной работы на определенное количество рабочих часов во все дни недели, то установите переключатель в положение Неполный рабочий день. Если сокращается количество рабочих дней в неделе, например, рабочими являются только 4 дня при пятидневной рабочей неделе, то установите переключатель в положение Неполная рабочая неделя.
  • флаг Считать норму по другому графику устанавливается для графиков неполного рабочего времени, что позволяет настроить порядок определения нормы времени по другому графику при расчете вознаграждения за труд. При указании другого графика в соответствующем для выбора поле норма определяется исходя из указанного графика полного рабочего времени. Если флаг не установлен, то норма времени при расчете определяется исходя из количества рабочих дней и часов по графику неполного рабочего времени.

Обратите внимание! Флаг Неполное рабочее время, переключатели Неполный рабочий день, Неполная рабочая неделя и флаг Считать норму по другому графику будут доступны в форме Настройка графика работы, если в форме настройки кадрового учета (Настройка - Кадровый учет) установлен флаг Используется работа по неполной ставке. В разделе Виды времени будут доступны для выбора виды времени, соответствующие неполному рабочему времени.

Настройка производственного календаря

Необходимость учета разных видов рабочего времени

  • Флаг Явкавсегда установлен по умолчанию, т.е. график предусматривает работу в дневное время. Помимо времени явки, могут быть доступны созданные в качестве видов использования рабочего времени в справочнике «Виды использования рабочего времени» (Настройка - Виды рабочего времени) другие виды времени. Например, это может понадобиться для водителей, которым часы работы на линии и часы ремонта оплачиваются по разным ставкам. Для доступа других флагов, соответствующих по наименованию созданным самостоятельно видам времени, необходимо, чтобы был установлен флаг Используется несколько видов времени в графике работы в настройке параметров расчета зарплаты (раздел Настройка - Расчет зарплаты).

Настройка производственного календаря

Настройка производственного календаря

Настройки продолжительности работы по дням недели или режима работы по дням в течение цикла

Находятся в разделе Расписание работы, табличная часть которого видоизменяется в зависимости от выбранного способа заполнения графика :

  • Если в разделе Способ заполнения графика установлен способ По дням недели (пятидневка, шестидневка и т.п.)
  • В качестве расписания указывается продолжительность работы в часах по дням недели. Если параметрами этого графика предусмотрен учет разных видов явок и/или ночных, и/или др. видов времени (установлены соответствующие флаги в разделе Виды времени), то в данном разделе указывается их продолжительность по дням недели.
  • Если в разделе Способ заполнения графика установлен способ По циклам произвольной длины (сменные графики)
  • В качестве расписания указывается режим работы по дням в течение цикла: для каждого дня указывается количество рабочих часов. Если параметрами этого графика предусмотрен учет разных видов явок и/или ночных, и/или др. видов времени (установлены соответствующие флаги в разделе Виды времени), то в данном разделе указывается их продолжительность по дням в течение цикла. При этом нерабочие дни (дни отдыха) также включаются в таблицу, но для них указывается нулевое количество рабочих часов.

Учет ночных и вечерних часов ведется отдельно от дневных, т.е. количество ночных и вечерних часов не входит в количество рабочих часов явки.

Настройка производственного календаря

Продолжительность рабочей недели в часах (общий объем рабочего времени за неделю)

Отражается в поле Длительность рабочей недели.

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

Для сменных графиков длительность рабочей недели автоматически не подсчитывается, поэтому данное поле при необходимости редактируется вручную (указывается еженедельная продолжительность рабочего времени, исходя из которой определяется нормальное количество рабочих часов за учетный период).

При суммированном учете рабочего времени норма рабочего времени определяется за определенный учетный период (месяц, квартал и т.д., но не более календарного года). Соблюдение нормы рабочего времени за установленный учетный период для графиков суммированного учета в программе автоматически не контролируется, контроль над данными показателями возлагается на пользователя.

Дата, с которой начинается цикл графика (дата первого дня графика)

Задается в поле Дата отсчета. Данное поле доступно только для сменных графиков .

personal photo

Как отразить нерабочие дни ноября 2021 г. в графиках работы сотрудников

Описание дано для программы ЗУП 3.1.19.48 (вне зависимости от релиза, на сайте ИТС выложен обновленный производственный календарь и его можно подгрузить в программу отдельно).

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

Узнать текущий релиз программы можно, выбрав в верхнем правом углу программы пункт О программе.

Нерабочие дни октября 2021

Информация обо всех выполненных переносах отображается в форме производственного календаря.

Нерабочие дни октября 2021

Периоды нерабочих оплачиваемых дней, установленные Президентом РФ, отражаются в разделе Нерабочие периоды. Дни нерабочих периодов выделяются в календаре светло-фиолетовым цветом.

30 октября - 7 ноября – нерабочие дни (Указ Президента Российской Федерации от 20.10.2021 № 595).

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

Если организация работает в обычном режиме (или все сотрудники на удаленке)

В разделе Настройка - Расчет зарплаты - снять флаг Нерабочие дни в связи с коронавирусом…

Нерабочие дни октября 2021

В разделе Настройка – Графики работы сотрудников - для КАЖДОГО графика снять флаг При заполнении учитывать нерабочие дни:

Нерабочие дни октября 2021

В ноябре в Пятидневке 20 рабочих дней.

Нерабочие дни октября 2021

Если организация (или часть ее сотрудников) не должны работать 30 октября - 7 ноября.

В разделе Настройка - Расчет зарплаты - установить флаг Нерабочие дни в связи с коронавирусом…

Ниже флагом отметить Указ Президента для тех нерабочих периодов, которые не должны уменьшать норму времени.

Нерабочие дни октября 2021

В разделе Настройка – Графики работы сотрудников - в каждом графике появятся 2 строки:

Оплачиваемые нерабочие дни

При настройке через Изменить свойства графика при снятом флаге При заполнении учитывать нерабочие дни в Пятидневке в ноябре Явка: 20, Нерабочие дни: 0.

Нерабочие дни октября 2021

При настройке через Изменить свойства графика при установленном флаге При заполнении учитывать нерабочие дни в Пятидневке в ноябре Явка: 17 Нерабочие дни: 3.

Нерабочие дни октября 2021

В Табеле Оплачиваемые нерабочие дни будут обозначены ОН.

Оплачиваться в этом случае, и явки, и оплачиваемые нерабочие дни будут одинаково, как явки.

Если работники организации работают в разных режимах, необходимо для большинства настроить ранее использовавшийся график (например, с явками в ноябре), а для остальных создать другой график (с оплачиваемыми нерабочими днями в ноябре) и перевести их документом Изменение графика работы списком сроком на 1 месяц.

Минтруд в своем письме от 18.05.20 г разъяснил, что при расчете оплаты по среднему в последующих месяцах не нужно учитывать дни и суммы оплачиваемых неявок.

Если организация не согласна с этими рекомендациями, необходимо в разделе Настройка - Расчет зарплаты установить флаг Учитывать оплачиваемое нерабочее время и суммы в среднем заработке

Нерабочие дни октября 2021

После снятия или установки флага программа предложит пересчитать среднее для отпуска.

Это можно сделать в разделе Зарплата - Обновить данные для среднего заработка.

Нерабочие дни октября 2021

Для Москвы (свои даты нерабочего периода)

Заходим в Главное меню - Функции для технического специалиста. Если данной строки в выпадающем меню нет - - активируем ее: Главное меню - Настройки - Параметры.

Нерабочие дни октября 2021

Нерабочие дни октября 2021

Нерабочие дни октября 2021

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

Нерабочие дни октября 2021

В регистре нажимаем Создать и вводим новую запись, в поле Основание которой забиваем название соответствующего нормативно-правового акта, который делает дополнительные дни нерабочими. В нашем примере под номером 7 уже есть запись об общем для РФ периоде нерабочих дней с 30.10.2021 по 07.11.2021 и мы добавляем еще одну под номером 8 с дополнительными днями 28.10 и 29.10 со ссылкой на соответствующий законодательный акт.

Читайте также: