В новых версиях 1С:Зарплата и Управление Персоналом (3.1.30 и выше) разработчики представили новый механизм для расчета оплаты сверхурочных и работы в выходные дни. Появился показатель Стоимость дня (часа) с учетом разовых начислений, который призван более точно учитывать доплаты в стоимости часа. Однако на практике пользователи столкнулись с критической проблемой: система продолжает «подтягивать» в расчет те начисления, которые уже были отменены у сотрудника. Разберем подробно, почему это происходит и как решить данную проблему до выхода официальных патчей.
Разберем ситуацию: у сотрудника ранее действовала надбавка (например, за вредность или сложность), которая входила в состав совокупной тарифной ставки. Затем эта надбавка была прекращена кадровым документом. При расчете сверхурочных в текущем периоде программа внезапно увеличивает стоимость часа на сумму этой уже недействующей надбавки.
Проанализируем техническую причину. Данная проблема официально зарегистрирована как ошибка 60018470. Суть бага заключается в том, что новый алгоритм сбора данных для показателя Стоимость дня (часа) с учетом разовых начислений некорректно обрабатывает временные интервалы в регистрах сведений. Программа обращается к данным о плановых начислениях и ФОТ, видит запись о назначении доплаты в прошлом, но не учитывает дату её окончания или действие «Отмена». В результате стоимость часа рассчитывается по «грязным» данным, включающим исторические, а не актуальные выплаты.
Это наиболее быстрый способ «обхода» проблемы без программирования. Если начисление имеет «мерцающий» характер (то есть часто назначается и отменяется), его включение в ФОТ может провоцировать ошибку в новом механизме. Выполним следующие шаги:
Включать в ФОТ. Это исключит влияние настройки на автоматические механизмы формирования тарифных ставок, которые «забаговали» в текущем релизе.Важно: этот метод подходит, если надбавка действительно не должна жестко фиксироваться в плановом ФОТ сотрудника для других целей (например, для формирования штатного расписания).
Иногда записи в регистре Данные о ФОТ для расчета среднего заработка (плановые) «подвисают» и не очищаются при обычной отмене начисления кадровым переводом. Посмотрим, как принудительно актуализировать эти данные:
Изменение плановых начислений.Заполнить.Если в организации используется сложная система доплат и ручное исправление каждого сотрудника невозможно, рассмотрим вариант программной корректировки. Можно создать расширение, которое будет перехватывать расчет показателя в менеджере расчета документа Начисление зарплаты и взносов.
Логика работы расширения должна заключаться в следующем: мы помечаем необходимые виды начислений специальным дополнительным реквизитом (например, типом Булево), а в коде принудительно фильтруем расчетную базу, исключая записи, которые не актуальны на дату расчета. Рассмотрим примерную логику кода, который можно внедрить в процедуру расчета:
// Пример логики в расширении (псевдокод)
Процедура РасчетСверхурочных_После(ДокументОбъект)
// Получаем таблицу начислений документа
ТЗ = ДокументОбъект.Начисления.Выгрузить();
Для Каждого СтрокаТЗ Из ТЗ Цикл
Если СтрокаТЗ.ВидРасчета.Наименование ПОДОБНО "%Сверхурочно%" Тогда
// Вызываем собственную функцию пересчета стоимости часа
АктуальнаяСтоимость = НашМодульРасчета.ПолучитьВернуюСтоимостьЧаса(СтрокаТЗ.Сотрудник, СтрокаТЗ.ДатаНачала);
СтрокаТЗ.ПоказательСтоимостьЧаса = АктуальнаяСтоимость;
КонецЕсли;
КонецЦикла;
ДокументОбъект.Начисления.Загрузить(ТЗ);
КонецПроцедуры
Такой подход позволяет гарантировать верный расчет даже при наличии ошибок в типовом коде 1С.
До тех пор, пока патч для ошибки 60018470 не будет установлен, проанализируем возможность возврата к проверенному временем механизму. В 1С:ЗУП существует старый показатель Стоимость часа, который работает стабильно.
Для этого необходимо:
Показатели, определяющие состав совокупной тарифной ставки.Резюмируем: Основная причина неверного расчета — баг релиза, который игнорирует историю изменения начислений. Наиболее эффективным временным решением является перепроведение данных через документ Изменение плановых начислений или корректировка состава ФОТ в настройках самих начислений. Обязательно проверяйте наличие официальных исправлений (патчей) в сервисе поддержки 1С, так как разработчики планируют устранить это поведение в ближайших обновлениях.