При организации оплаты труда на предприятиях со сменными графиками часто возникает задача расчета оклада исходя из базовой нормы рабочего времени, отличной от графиков сменности. Например, требуется рассчитывать заработную плату по формуле Оклад * ВремяВЧасах / НормаЧасов, где показатель НормаЧасов для мужчин должен соответствовать основной 40-часовой пятидневке, а для женщин — 36-часовой рабочей неделе, независимо от того, какой сменный график фактически привязан к сотруднику.
Рассмотрим, можно ли решить эту задачу штатным функционалом программы 1С:Зарплата и управление персоналом (редакция 3.1) без обращения к программистам и внесения изменений в конфигурацию.
Начнем с анализа частой ошибки при попытке прописать ветвление по полу сотрудника напрямую в формуле начисления. Попытка использовать конструкцию вида:
Если Сотрудник.ФизическоеЛицо.Пол = Перечисление.ПолФизическогоЛица.Мужской Тогда
Оклад * ВремяВЧасах / НормаЧасовМ;
Иначе
Оклад * ВремяВЧасах / НормаЧасовЖ;
КонецЕсли;
не сработает, поскольку механизм встроенного языка 1С не поддерживается внутри формул видов расчета. В редакторе формул 1С:ЗУП 3.1 действуют следующие важные ограничения:
Сотрудник.ФизическоеЛицо.Пол) или значения перечислений. Формулы оперируют только предопределенными и пользовательскими показателями расчета зарплаты.?(): Тернарная функция ?(Условие, Выражение1, Выражение2) принимает в качестве условия исключительно числовые или логические сравнения показателей (например, Признак > 0). Сравнивать текстовые или ссылочные типы данных в ней нельзя.Штатный механизм программы позволяет указать в настройках сменного графика работы отдельный график для расчета нормы времени.
Для этого выполняются следующие действия:
Важное предупреждение о побочных эффектах:
Проанализируем риски данного подхода. Когда в графике работы активируется подсчет нормы по другому графику, программа рассчитывает показатель ДоляНеполногоРабочегоВремени. Это отношение длительности рабочей недели сменного графика к длительности недели графика нормы. Изменение этого показателя влечет за собой следующие последствия:
ДоляНеполногоРабочегоВремени участвует в алгоритмах пересчета стоимости часа/дня, при расчете доплат за ночные, вечерние и сверхурочные часы, а также при сравнении пособий и заработка с МРОТ.Наиболее безопасный и методически верный способ в 1С:ЗУП 3.1 — разделение видов расчета на уровне кадровых документов.
Разберем по шагам, как настроить такую схему:
НормаЧасовМ и НормаЧасовЖ.Оклад * ВремяВЧасах / НормаЧасовМОклад * ВремяВЧасах / НормаЧасовЖКадровый перевод назначаем сотрудникам-мужчинам начисление для мужчин, а сотрудницам-женщинам — начисление для женщин.Этот способ исключает ошибки в формулах, не искажает кадровый учет и сохраняет корректность формирования статистических отчетов.
Если требуется сохранить один вид начисления для всех сотрудников, можно ввести числовой показатель для сотрудника, отражающий его норму рабочего времени.
Рассмотрим алгоритм настройки:
ПризнакНормы (числовой).1 — для 40-часовой нормы (мужчины), 0 — для 36-часовой нормы (женщины).Данные для расчета зарплаты ежемесячно вводим значения показателей норм НормаЧасовМ и НормаЧасовЖ.
Оклад * ВремяВЧасах / ?(ПризнакНормы = 1, НормаЧасовМ, НормаЧасовЖ)
При выборе решения учитывайте следующие моменты:
ПризнакНормы.