Одной из наиболее частых и сложных задач при автоматизации расчета заработной платы в 1С:ЗУП является обеспечение соответствия начислений требованиям законодательства о МРОТ, особенно когда в организации практикуется сложная система доплат (ночные, сверхурочные). Рассмотрим, как реализовать механизм, при котором ночные часы и сверхурочные корректно включаются в расчет доплаты до МРОТ.
Основная проблема заключается в том, что типовой механизм 1С не всегда гибко позволяет «докручивать» ночные часы к доплате до МРОТ, если базовая стоимость часа не включает нужные параметры. Для решения этой задачи мы воспользуемся подходом разделения доплат на логические блоки: «базовый МРОТ», «доплата по ночным» и «доплата по сверхурочным».
Для корректного отражения расчетов нам потребуется настроить несколько видов начислений. Важно убедиться, что они имеют назначение Повременная оплата труда и надбавки и выполняются ежемесячно. Рассмотрим формулы для ключевых начислений:
Данная формула обеспечивает доведение оклада до уровня МРОТ с учетом фактически отработанного времени:
Макс(НормаЧасов * 0, МРОТ * ДоляНеполногоРабочегоВремени / Макс(1, НормаЧасов) - ТарифнаяСтавкаЧасовая) * ВремяВЧасах
Здесь мы используем логику, при которой МРОТ масштабируется на ночные часы с учетом процента доплаты:
Макс(НормаЧасов * 0, МРОТ * ДоляНеполногоРабочегоВремени / Макс(1, НормаЧасов) - ТарифнаяСтавкаЧасовая) * ВремяВЧасах * ПроцентДоплатыЗаРаботуВНочноеВремя / 100
Для корректного расчета обычного ночного времени используем следующую формулу:
?(ТарифнаяСтавкаЧасовая = 0, РасчетнаяБаза, ТарифнаяСтавкаЧасовая * ВремяВЧасах) * ПроцентДоплатыЗаРаботуВНочноеВремя / 100
Сверхурочные требуют более детального расчета из-за разной оплаты первых двух часов и последующих. Мы рекомендуем использовать следующую структуру:
Макс(НормаЧасов * 0, МРОТ * ДоляНеполногоРабочегоВремени / Макс(1, НормаЧасов)) * ОтработаноСверхурочноВПределах2Часов * 1.5 +
Макс(НормаЧасов * 0, МРОТ * ДоляНеполногоРабочегоВремени / Макс(1, НормаЧасов)) * (ОтработаноСверхурочно - ОтработаноСверхурочноВПределах2Часов) * 2 -
(ОтработаноСверхурочноВПределах2Часов * 1.5 + (ОтработаноСверхурочно - ОтработаноСверхурочноВПределах2Часов) * 2) * Окр(СтоимостьЧаса, 3)
Чтобы РайонныйКоэффициент (РК) и СевернаяНадбавка (СН) корректно начислялись на сумму доплат, необходимо выполнить следующие действия:
Работая с подобными кастомными формулами, помните о следующих правилах:
ВидВремени. Если начисление создано для ночных часов, оно должно иметь соответствующий вид времени в настройках, иначе 1С не увидит часы для расчета.Совокупная тарифная ставка в вашей версии конфигурации позволяет решить задачу штатно, используйте его. Это обеспечит корректность при обновлении программы.Окр(СтоимостьЧаса, 3) необходимо для исключения ошибок округления при расчетах с использованием дробных долей МРОТ.Данный подход позволяет полностью покрыть требования бухгалтерии по начислению доплат к МРОТ, учитывая специфику ночной работы и сверхурочных, сохраняя при этом прозрачность учета и правильность начисления страховых взносов и НДФЛ.