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

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

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

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

---

1. Архитектурная разница между ЗУП 2.5 и ЗУП 3.1: почему не заполняется документ?

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

Разберем по шагам внутреннее устройство обеих конфигураций:

  1. В 1С:ЗУП 3.1 реализован гибкий механизм назначения начислений. Настройка вида расчета позволяет указать параметр «Начисление выполняется: Только если введен вид учета времени». Программа сканирует введенные документы Табель или ДанныеДляРасчетаЗарплаты и при обнаружении соответствующего кода автоматически добавляет строку в документ начисления.
  2. В 1С:ЗУП 2.5 такой логики нет. Здесь расчет основных начислений в документе НачислениеЗарплатыРаботникам жестко привязан к плановым начислениям сотрудников. Чтобы вид расчета попал в табличную часть документа автоматическим заполнением, он обязательно должен быть назначен сотруднику как плановый. Сделать это можно с помощью документов ПриемНаРаботуВОрганизацию, КадровоеПеремещениеОрганизаций или ВводСведенийОПлановыхНачисленияхРаботниковОрганизаций.

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

---

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

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

Рассмотрим стандартный, методологически верный подход в ЗУП 2.5, который позволяет избежать написания сложных подписок на события и переопределения движений в регистре накопления РабочееВремя:

Вместо использования одного предопределенного вида расчета ОкладПоЧасам и последующего искусственного изменения вида времени «ВМ» на «Я» при проведении табеля, мы настроим два разных вида расчета:

  1. Оклад по часам (обычный): вид времени по классификатору — «Явка» (Я). Назначается обычным сотрудникам.
  2. Оклад по часам (вахта): вид времени по классификатору — «Вахтовый метод» (ВМ). Этот вид расчета назначается вахтовикам в качестве планового.

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

---

3. Настройка оплаты дней в пути

Согласно Трудовому кодексу РФ, каждый день нахождения в пути к месту работы и обратно, предусмотренный графиком работы на вахте, оплачивается в размере дневной тарифной ставки или части оклада. Посмотрим на практический пример настройки этого начисления.

Создадим новое основное начисление Оплата дней в пути со следующими параметрами:

Назначим сотрудникам это начисление в качестве планового. Теперь при вводе в табеле буквенного кода «ДП» программа автоматически определит количество часов пути и произведет расчет по формуле.

---

4. Настройка надбавки за вахтовый метод работы

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

Главная сложность в ЗУП 2.5 заключается в том, что один вид расчета может быть привязан на вкладке «Время» только к одному основному виду времени. А выплачивать надбавку нам нужно и за рабочие дни на вахте («ВМ»), и за дни в пути («ДП»).

Разберем, как решить эту задачу без программирования. Для этого мы разделим компенсацию на два плановых начисления:

  1. Вахтовая надбавка (рабочие дни):
    • Формула расчета: ВремяВДнях * РазмерНадбавкиЗаВахту
    • Вид времени по классификатору: «Вахтовый метод» (ВМ)
  2. Вахтовая надбавка (дни в пути):
    • Формула расчета: ВремяВДнях * РазмерНадбавкиЗаВахту
    • Вид времени по классификатору: «Дни в пути» (ДП)

Показатель РазмерНадбавкиЗаВахту заводится как постоянный показатель схем начисления. Оба начисления назначаются сотрудникам как плановые. При заполнении табеля программа сама определит количество дней «ВМ» и «ДП», подставит их в соответствующие строки документа начисления и корректно рассчитает общую сумму надбавки.

---

5. Настройка оплаты дней вахтовой изоляции

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

Настроим вид расчета Вахтовая изоляция по аналогии с оплатой дней в пути:

---

6. Важные методологические и налоговые нюансы

Настраивая новые виды расчетов, критически важно правильно определить их налоговый статус и влияние на другие начисления (Районный коэффициент и Северную надбавку):

---

7. Автоматизация процесса: использование Разовых начислений

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

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

Проанализируем пример кода на языке 1С, который выбирает отработанные дни в пути («ДП») из регистра накопления РабочееВремя за расчетный месяц и заполняет документ разовых начислений:


Процедура ЗаполнитьДниВПутиПоТабелю(ДокументОбъект, ПериодРегистрации) Экспорт
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоПериода", НачалоМесяца(ПериодРегистрации));
    Запрос.УстановитьПараметр("КонецПериода", КонецМесяца(PeriodРегистрации));
    Запрос.УстановитьПараметр("ВидВремениДП", Справочники.КлассификаторИспользованияРабочегоВремени.НайтиПоКоду("ДП"));
    
    Запрос.Текст = 
    "ВЫБРАТЬ
    |	РабочееВремя.Сотрудник КАК Сотрудник,
    |	РабочееВремя.Физлицо КАК Физлицо,
    |	СУММА(РабочееВремя.Дней) КАК КоличествоДней,
    |	СУММА(РабочееВремя.Часов) КАК КоличествоЧасов
    |ИЗ
    |	РегистрНакопления.РабочееВремя КАК РабочееВремя
    |ГДЕ
    |	РабочееВремя.Период МЕЖДУ &НачалоПериода И &КонецПериода
    |	И РабочееВремя.ВидИспользованияРабочегоВремени = &ВидВремениДП
    |СГРУППИРОВАТЬ ПО
    |	РабочееВремя.Сотрудник,
    |	РабочееВремя.Физлицо";
    
    Выборка = Запрос.Выполнить().Выбрать();
    
    ДокументОбъект.Начисления.Очистить();
    
    Пока Выборка.Следующий() Цикл
        НоваяСтрока = ДокументОбъект.Начисления.Добавить();
        НоваяСтрока.Сотрудник = Выборка.Sotrudnik;
        НоваяСтрока.Физлицо = Выборка.Физлицо;
        НоваяСтрока.Начисление = ПланыВидовРасчета.ДополнительныеНачисленияОрганизаций.НайтиПоНаименованию("Оплата дней в пути");
        НоваяСтрока.Показатель1 = Выборка.КоличествоДней; // или КоличествоЧасов в зависимости от формулы
        НоваяСтрока.ДатаНачала = НачалоМесяца(ПериодРегистрации);
        НоваяСтрока.ДатаОкончания = КонецМесяца(ПериодРегистрации);
    КонецЦикла;
    
КонецПроцедуры

Использование такой обработки позволяет полностью исключить ручной ввод данных бухгалтером. Расчетчик создает один документ РегистрацияРазовыхНачисленийРаботниковОрганизаций в месяц, нажимает кнопку заполнения по табелю, система мгновенно считывает все дни пути, надбавки или изоляции и рассчитывает итоговые суммы.

← На главную