Как использовать внутренний стаж для расчета премий в 1С:ЗУП и скрыть его из карточки Т-2

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом Управленческий учет
← На главную

В практике кадрового учета часто возникают задачи, когда необходимо начислять сотрудникам надбавки или премии, размер которых напрямую зависит от продолжительности их работы в определенной должности или подразделении. В программе 1С:Зарплата и управление персоналом 3.1 (ЗУП) наиболее логичным инструментом для этого является механизм стажей. Однако при использовании этого функционала возникает побочный эффект: технические виды стажа, созданные исключительно для расчетов, начинают отображаться в регламентированных кадровых формах, таких как Т-2. Рассмотрим подробно, как реализовать автоматический расчет и при этом сохранить чистоту кадровой отчетности.

Постановка задачи и выбор метода реализации

Представим ситуацию: в компании введена сложная система премирования. Например, в первый месяц работы сотрудник получает 2% от продаж, со второго по пятый месяц — 5%, а с пятого месяца — 10%. При этом расчет должен автоматически корректироваться при смене должности. Постоянно отслеживать такие изменения вручную через Кадровый перевод или Изменение оплаты труда — трудозатратно и чревато ошибками. Использование показателя «Процент премии» в документе Данные для расчета зарплаты также не всегда удобно, если дата перехода на новую ступень процента не совпадает с первым числом месяца.

Наиболее эффективным решением является создание нового Вида стажа с категорией Прочее. Это позволяет настроить шкалу зависимости процента от стажа непосредственно в формуле начисления. Проанализируем, как настроить расчет и решить проблему с лишними данными в печатных формах.

Шаг 1. Настройка вида стажа и шкалы начисления

Для начала нам необходимо создать новый вид стажа. Перейдем в раздел Настройки — Виды стажа. Создадим новый элемент, назовем его, например, «Стаж для внутренней премии». В поле Категория стажа укажем Прочее.

После создания стажа перейдем к настройке самого начисления (раздел Настройки — Начисления). В формуле начисления мы можем использовать функцию СтажЗависитОтСтажа или настроить зависимость через шкалу. Разберем пример формулы:

Результат = ПроцентОтПродаж * ПродажиОтдела

Где ПроцентОтПродаж — это показатель, который мы свяжем со шкалой стажа. В настройках показателя укажем, что он зависит от стажа «Стаж для внутренней премии». Программа сама будет определять актуальный процент на дату расчета, исходя из данных в карточке сотрудника.

Шаг 2. Исключение технического стажа из формы Т-2 через код

Главная проблема, с которой сталкиваются пользователи, — это появление «Стажа для внутренней премии» во втором разделе личной карточки Т-2. Если мы хотим оставить конфигурацию на поддержке, но при этом скрыть этот стаж, нам потребуется использование механизма расширений для корректировки запроса в общем модуле.

Проанализируем ситуацию: формирование данных для Т-2 происходит в общем модуле КадровыйУчетРасширенный. Нам необходимо найти функцию ДополнительныеСведенияУнифицированнойФормыТ2. Именно здесь формируется запрос к виртуальной таблице стажей физических лиц. Чтобы скрыть внутренние стажи, мы можем добавить условие фильтрации по категории Прочее.

Рассмотрим пример кода, который можно внедрить через расширение (метод &Вместо или &ИзменениеИОтработка):


Запрос.Текст =
    "ВЫБРАТЬ
    |    *
    |ИЗ
    |    ВТСтажиФизическихЛиц
    |ГДЕ
    |    ВидСтажа.КатегорияСтажа <> ЗНАЧЕНИЕ(Перечисление.КатегорииСтажа.Прочее)
    |УПОРЯДОЧИТЬ ПО
    |    ФизическоеЛицо,
    |    ВидСтажа.Код";

В данном примере мы добавили условие ВидСтажа.КатегорияСтажа <> ЗНАЧЕНИЕ(Перечисление.КатегорииСтажа.Прочее). Теперь все стажи, которым присвоена категория Прочее, будут игнорироваться при заполнении печатной формы Т-2, но при этом останутся доступными для подсистемы расчета зарплаты.

Шаг 3. Использование внешних печатных форм

Если вы не хотите вносить изменения в программный код модулей, существует более «мягкий» способ — использование Внешней печатной формы. Выясним преимущества этого метода:

  1. Безопасность: Основная конфигурация остается полностью типовой.
  2. Гибкость: Вы можете создать несколько вариантов формы Т-2 для разных подразделений.
  3. Обновляемость: При обновлении ЗУП вам не придется заново проверять корректность работы расширения в части общих модулей.

Для реализации этого метода необходимо выгрузить макет типовой формы Т-2 из конфигуратора, создать на его основе внешнюю обработку и в модуле объекта этой обработки отредактировать запрос к данным, аналогично тому, как мы рассматривали в предыдущем шаге. После этого форма подключается через раздел Администрирование — Печатные формы, отчеты и обработки.

Альтернативный вариант: Грейды и профили (для версии КОРП)

Поскольку рассматриваемая ситуация касается версии ЗУП КОРП, мы можем проанализировать еще один встроенный механизм — Грейдирование. В КОРП-версии реализована возможность автоматического контроля изменения оплаты труда в зависимости от стажа в позиции или квалификации. Это более сложный, но «прозрачный» с точки зрения методологии 1С путь.

Однако, как показывает практика, для простых расчетов процентов метод с созданием отдельного вида стажа категории Прочее является наиболее быстрым в настройке. Главное — помнить, что при кадровом переводе (если стаж должен обнулиться) дату начала стажа в карточке сотрудника придется обновить вручную или через документ Изменение стажей.

Резюме

Подведем итоги. Чтобы эффективно использовать внутренний стаж для расчетов в 1С:ЗУП 3.1:

  1. Создайте Вид стажа с категорией Прочее.
  2. Настройте Начисление, где формула или показатель зависят от этого стажа.
  3. Для скрытия данных из Т-2 используйте либо Расширение с фильтрацией по категории стажа в коде запроса, либо подключите Внешнюю печатную форму.
  4. Если организация планирует отказаться от использования бумажных карточек Т-2 (что допустимо в рамках современного законодательства), проблему с отображением лишнего стажа можно считать несущественной.

Используя данные методы, мы обеспечиваем автоматизацию сложных расчетов премий и при этом сохраняем корректность ведения кадрового делопроизводства.

← На главную