В практике кадрового учета часто возникают ситуации, когда методика расчета премии едина по смыслу, но индивидуальна по наполнению расчетной базы для разных групп персонала. Рассмотрим типичный сценарий: премия зависит от количества заключенных договоров, но ее денежный вес определяется категорией сотрудника, которая, в свою очередь, привязана к его позиции в штатном расписании. Основная сложность здесь заключается в желании избежать ручного разделения данных и дублирования шаблонов ввода.
Проанализируем ситуацию и разберем по шагам, как настроить систему так, чтобы расчет производился автоматически на основании одного введенного показателя.
Представленная в запросе формула выглядит следующим образом:
(Расчётная база / норму дней по графику) * количество договоров * 50%
Прежде чем переходить к технической реализации в 1С, проанализируем экономический смысл. Коллеги на форуме справедливо замечают, что в такой формуле кроется риск «двойного занижения». Если РасчетнаяБаза уже рассчитана пропорционально отработанному времени (например, оклад по дням), то повторное деление на НормуДней уменьшит премию еще раз. Однако, если руководство настаивает именно на такой жесткой схеме, наша задача — максимально автоматизировать процесс.
Вместо создания трех разных видов начислений для каждой категории, мы можем создать одно универсальное начисление. Для этого нам потребуется ввести дополнительный показатель КатегорияСотрудника.
Разберем создание формулы с логическим ветвлением:
Выбор
Когда КатегорияСотрудника = 1
Тогда (РасчетнаяБазаКатегория1 / НормаДней) * КоличествоДоговоров * 0.5
Когда КатегорияСотрудника = 2
Тогда (РасчетнаяБазаКатегория2 / НормаДней) * КоличествоДоговоров * 0.5
Иначе (РасчетнаяБазаКатегория3 / НормаДней) * КоличествоДоговоров * 0.5
Конец
При такой настройке программа будет сама определять, какую базу подставить в расчет, основываясь на значении показателя категории.
Чтобы пользователям не приходилось каждый месяц указывать категорию сотрудника вручную, воспользуемся механизмом привязки показателей к штатному расписанию. Рассмотрим, как это сделать:
КатегорияСотрудника.Теперь при приеме сотрудника на работу или кадровом переводе программа автоматически будет знать его категорию. При расчете зарплаты 1С подтянет это значение из позиции штатного расписания, и формула отработает корректно.
Выясним причину, почему ввод с «листочка» по разным шаблонам неэффективен. Это создает избыточную нагрузку на расчетчика. Чтобы вносить количество договоров одним списком для всех сотрудников, выполним следующие действия:
КоличествоДоговоров.Теперь ответственный сотрудник может просто открыть один документ Данные для расчета зарплаты, нажать кнопку «Подбор» (или «Заполнить») и внести общее количество договоров для всех, не задумываясь о категориях. Программа сама сопоставит это количество с категорией, зашитой в позиции штатного расписания сотрудника.
Если количество сотрудников велико, рассмотрим вариант автоматизации загрузки. В 1С:ЗУП 3.1 документ Данные для расчета зарплаты поддерживает стандартную возможность заполнения из файлов Excel. Проанализируем этот алгоритм:
Важный совет: Как предложили коллеги в сообщении №1, при загрузке можно программно анализировать текущую позицию сотрудника и в зависимости от этого распределять данные, но при использовании Решения №2 (привязка категории к позиции) в этом даже не будет необходимости — расчет будет верным по умолчанию.
Если ваша организация использует версию КОРП, посмотрим на функционал управления талантами. Здесь можно настроить КоличествоДоговоров как количественный показатель KPI. Это позволит более гибко настраивать веса показателей и их влияние на итоговую премию, используя встроенные механизмы шкал и оценок, что избавит от необходимости писать сложные громоздкие формулы с Выбор Когда.
Проанализировав ситуацию, мы пришли к выводу, что наиболее стабильным решением для базовой версии ЗУП 3.1 будет комбинация индивидуального показателя для позиции штатного расписания и единого шаблона ввода данных.
Подведем итог необходимых настроек:
КатегорияСотрудника (для позиции штатки).КоличествоДоговоров (для сотрудника, вводится разово).Выбор.Такой подход позволит вам вводить данные «в одну таблицу», а расчет проводить индивидуально для каждой категории, полностью исключив ручные манипуляции и ошибки распределения сотрудников по спискам.