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

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом
← На главную

Рассмотрим ситуацию, с которой часто сталкиваются расчетчики и кадровики: за один календарный год сотрудника несколько раз переводят на другую должность (например, на время отсутствия коллеги), а затем возвращают обратно. На новой должности предусмотрен дополнительный отпуск (за вредность, ненормированный рабочий день и т.д.), а на основной — нет. Возникают закономерные вопросы: обнуляется ли рабочий год при таких перемещениях? Как правильно рассчитать заработанные дни отпуска? Разберем по шагам методологию учета и то, как этот процесс реализован в программе 1С:Зарплата и Управление Персоналом.

Понятие рабочего года и позиция трудового законодательства

Проанализируем частую ошибку, когда кадровые специалисты полагают, что при каждом переводе на должность с особыми условиями должен открываться новый "рабочий год", начинающийся с даты назначения. С точки зрения современного трудового законодательства и логики 1С:ЗУП, это в корне неверно.

Согласно статье 121 ТК РФ, рабочий год у сотрудника всегда один. Он начинает отсчитываться от даты приема на работу в организацию и длится 12 календарных месяцев. Кадровые перемещения внутри компании, переводы на другие графики или должности никак не влияют на сам факт течения базового рабочего года и не приводят к его обнулению. Рабочий год может быть сдвинут (продлен) только по причинам, прямо указанным в законе (например, отпуск без сохранения заработной платы свыше 14 дней).

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

Пропорциональный расчет дней дополнительного отпуска

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

В случае, когда сотрудника трижды за год переводили на "льготную" должность (например, на 20, 32 и 11 дней), эти периоды не создают параллельных рабочих годов. Они просто суммируются в рамках единого рабочего года. Затем за общее количество отработанных в особых условиях дней исчисляется пропорциональная часть дополнительного отпуска.

Математика расчета базируется на правилах, которые были заложены еще в Инструкции Госкомтруда СССР 1975 года (которая применяется в части, не противоречащей ТК РФ). Подсчет времени, проработанного во вредных условиях, производится отдельно по каждой работе, исходя из установленной продолжительности доп. отпуска. Программа суммирует отработанные дни, переводит их в полные месяцы (по правилам округления) и умножает на количество дней отпуска, положенных за один месяц работы в таких условиях.

Техническая реализация в 1С:ЗУП

Посмотрим на то, как система обрабатывает эти данные. В актуальных версиях 1С:ЗУП пользователю не требуется рассчитывать эти доли вручную. Главное — корректно настроить исходные данные:

  1. Убедитесь, что права на дополнительные дни отпуска (за вредность, ненормированный день) корректно привязаны к конкретным должностям, штатным позициям или условиям труда в справочниках.
  2. Проводите все перемещения стандартными документами КадровыйПеревод.

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

Программная логика: переменная "ПерерывыПредоставленияРаздвигаютГод"

Для программистов и аналитиков будет полезно углубиться в код 1С. В общем модуле ОстаткиОтпусков при расчете заработанных отпусков используется переменная ПерерывыПредоставленияРаздвигаютГод. Выясним ее назначение.

Данная переменная определяет алгоритм работы с границами рабочего года при наличии перерывов в стаже:

Почему для вредности установлено значение Ложь? Перевод сотрудника на должность без вредных условий труда не сдвигает границы его общего рабочего года. Базовый рабочий год остается неизменным. Установив значение в ложь, программа применяет накопительный подход: она не меняет границы года, а просто прибавляет дни дополнительного отпуска к счетчику сотрудника только за те конкретные отрезки времени (внутри года), когда человек по факту работал в нужных льготных условиях.

Таким образом, логика 1С:ЗУП полностью соответствует законодательству: она ведет единый рабочий год сотрудника и осуществляет накопительный пропорциональный расчет дополнительных отпусков в зависимости от кадровой истории.

← На главную