При расчете заработной платы в программе «1С:Зарплата и управление персоналом, редакция 3.1» часто возникает задача настроить надбавку за выслугу лет таким образом, чтобы ее процент зависел не только от стажа, но и от категории занимаемой должности. Например, рабочим за 5 лет стажа полагается 7%, а специалистам за тот же период — только 5%. В этой статье мы подробно разберем, как реализовать такую логику, проанализируем различные подходы и выберем наиболее эффективный метод автоматизации.
Первый вариант, который мы рассмотрим, основан на использовании условных операторов непосредственно в формуле начисления. Этот метод кажется компактным, так как в списке начислений будет всего одна строка, но он требует создания дополнительных пользовательских показателей.
Для реализации этого способа выполним следующие действия:
КатегорияПерсонала. В настройках укажем: «Назначается для сотрудника», «Тип показателя — Числовой», «Используется — Во всех месяцах после введения значения».?().Пример формулы может выглядеть следующим образом:
РасчетнаяБаза * ?(КатегорияПерсонала = 4, ПроцентРабочие / 100, ?(КатегорияПерсонала = 1, ПроцентСпециалисты / 100, 0))
В этой формуле мы проверяем значение показателя КатегорияПерсонала. Если он равен 4 (код категории рабочих), система берет один процентный показатель, если 1 (код специалистов) — другой. Однако у этого метода есть существенный минус: бухгалтеру придется вручную указывать код категории для каждого сотрудника документом «Изменение оплаты труда» или «Назначение планового начисления». Это увеличивает риск человеческой ошибки.
Проанализируем более надежный и простой в эксплуатации способ, к которому пришли участники обсуждения. Вместо того чтобы городить сложные условия в одной формуле, мы создадим два разных начисления: «Надбавка за выслугу лет (рабочие)» и «Надбавка за выслугу лет (специалисты)».
Рассмотрим пошагово настройку каждого начисления:
ПроцентНадбавкиРабочие. Установим переключатель «Зависит от стажа» и выберем нужный вид стажа. Заполним шкалу: например, от 36 до 60 месяцев — 5%, от 60 месяцев — 7%. Аналогично создадим показатель для специалистов со своей шкалой.РасчетнаяБаза * ПроцентНадбавкиРабочие / 100.РасчетнаяБаза * ПроцентНадбавкиСпециалисты / 100.Преимущество этого метода в том, что расчет процента происходит полностью автоматически на основании даты приема или введенного ранее стажа сотрудника. Нам не нужно использовать сложные условия Если ... Тогда в коде, так как программа сама определит нужную строку в шкале стажа.
Выясним, как сделать так, чтобы нужная надбавка подтягивалась автоматически при приеме на работу. Если в вашей базе ведется Штатное расписание (с сохранением истории или без), мы можем привязать начисления непосредственно к позициям штатки.
Для этого откроем карточку Позиции штатного расписания (например, «Слесарь-ремонтник 4 разряда») и на вкладке «Оплата труда» добавим именно «Надбавку за выслугу лет (рабочие)». Для позиции «Ведущий инженер» добавим «Надбавку за выслугу лет (специалисты)». Теперь при создании документа Прием на работу или Кадровый перевод, как только вы выберете должность, программа автоматически назначит правильный вид надбавки. Бухгалтеру не нужно помнить, какая категория ОКПДТР присвоена этой должности.
Чтобы формула ПроцентНадбавкиЗаВыслугуЛет заработала, система должна знать, сколько лет и месяцев отработал сотрудник. Рассмотрим, как это настроить:
Проанализируем важный нюанс: если сотрудник достигает нового порога стажа в середине месяца (например, 15-го числа стаж стал 5 лет и процент должен вырасти с 5% до 7%), 1С:ЗУП 3.1 автоматически разделит расчетную строку на две части. Одна часть будет рассчитана по старому проценту, вторая — по новому. Для этого в настройках начисления на закладке «Приоритет» должны быть правильно указаны вытесняющие начисления, а на закладке «Поврем. оплата» — способ использования «Выполняется ежемесячно».
Мы разобрали два способа настройки. Использование единой формулы с параметром ОКПДТРКатегория подходит в тех случаях, когда категорий очень много и создавать десятки начислений нецелесообразно. Однако в большинстве случаев разделение на два-три вида начислений («Рабочие», «Служащие», «Руководители») является более прозрачным и легким в настройке решением. Это позволяет избежать ошибок ручного ввода и полностью доверить расчет системе на основании данных о стаже и штатном расписании.