Как реализовать несколько производственных календарей в 1С:ЗУП 2.5 для учета региональных праздников

Программист 1С v8.3 (Обычные формы) 1С:Зарплата и Управление Персоналом Бухгалтерский учет
← На главную

При работе в крупных компаниях с филиальной сетью часто возникает необходимость вести учет рабочего времени с учетом региональных праздников (например, Курбан-байрам в Татарстане или День Республики в Башкортостане). В современных редакциях программы, таких как 3.1, этот функционал реализован штатно. Однако пользователи старых редакций (2.5 КОРП) сталкиваются с серьезным ограничением. Проанализируем ситуацию и найдем способы решения этой задачи без изменения программного кода.

Техническая причина ограничения: почему нельзя создать второй календарь?

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

В более новых версиях (3.0/3.1) разработчики пересмотрели этот подход, создав справочник ПроизводственныеКалендари, который выступает владельцем данных. В версии 2.5 структура метаданных жестко ограничена одним набором данных на каждый год. Поэтому «в лоб» решить задачу созданием нового календаря не получится — система просто не предусматривает места для хранения такой информации.

Метод 1: Ручная корректировка графиков работы

Рассмотрим самый распространенный способ обхода ограничения. Несмотря на то, что производственный календарь один, объектов Графики работы может быть неограниченное количество. Мы можем использовать это для создания «регионального» графика.

  1. Создадим новый элемент в справочнике Графики работы (например, «Пятидневка (Татарстан)»).
  2. В настройках графика укажем основные параметры (пятидневка, 40 часов).
  3. Нажмем кнопку «Заполнить». Программа заполнит сетку календаря на основании единственного общероссийского производственного календаря.
  4. Теперь перейдем к ручному редактированию: выберем дату регионального праздника прямо в таблице графика и вручную изменим тип дня с «Рабочего» на «Праздник» или «Субботу» (в зависимости от требуемого влияния на норму).
  5. После изменения типа дня вручную скорректируем количество рабочих часов в этот день на «0».

Важное замечание: Мы должны помнить, что при любом автоматическом перезаполнении графика по кнопке «Заполнить», все наши ручные правки будут стерты, и график вернется к состоянию основного производственного календаря. Поэтому после внесения правок рекомендуется зафиксировать этот факт в комментариях к объекту или вести отдельный реестр таких графиков.

Метод 2: Использование документа «Ввод индивидуальных графиков работы»

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

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

Проблема «Нормы времени» и суммированного учета

Проанализируем ситуацию с сотрудниками, работающими в сменных графиках или на суммированном учете. В ЗУП 2.5 часто используется настройка графика: «Определять норму по другому графику». Обычно в качестве эталона выбирается стандартная пятидневка.

Если мы создали «региональную пятидневку» методом ручной правки (как описано выше), то мы можем указать именно её в качестве графика-нормы для сменщиков этого региона. Однако здесь кроется опасность: если расчет среднего заработка в программе настроен на использование общероссийского календаря, могут возникнуть расхождения между фактически отработанным временем и нормой, которую «видит» алгоритм расчета среднего.

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

Выясним, как один производственный календарь влияет на расчеты. Алгоритмы 1С:ЗУП 2.5 (например, при расчете отпускных или больничных) часто обращаются к данным регистра ПроизводственныйКалендарь напрямую для определения количества календарных дней или расчетной нормы. Если мы изменили только График работы, но не основной календарь:

Рекомендации по автоматизации процесса

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

Рассмотрим пример логики такой обработки:


Процедура ЗаполнитьРегиональныйГрафик(ГрафикОбъект)
    // 1. Очищаем текущее заполнение
    // 2. Считываем данные из стандартного производственного календаря
    // 3. Накладываем "фильтр" региональных праздников из внешней таблицы или константы
    // 4. Записываем результат в таблицу графика
КонецПроцедуры

Такой подход позволит избежать ошибок «человеческого фактора» при ручном перезаполнении графиков в начале каждого года.

Выводы и переход на новую версию

Резюмируя, отметим: штатной возможности вести два и более производственных календаря в ЗУП 2.5 не существует. Все доступные методы — это варианты обхода через ручное управление графиками.

Если учет региональных праздников для вашей компании является критически важным и масштабным процессом, наиболее правильным стратегическим решением будет переход на редакцию Зарплата и управление персоналом 3.1. В ней объект Производственные календари является полноценным справочником, и вы сможете без труда создать отдельные календари для Татарстана, Башкирии, Крыма и других регионов, просто привязав их к соответствующим графикам работы. Это полностью автоматизирует расчет норм и исключит ошибки в расчете среднего заработка.

← На главную