Почему 1С:ЗУП сторнирует премию за весь месяц при вводе больничного листа и как это исправить?

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

При расчете заработной платы в программе 1С:Зарплата и Управление Персоналом 3.1 пользователи часто сталкиваются с ситуацией, когда введение больничного листа, затрагивающего конец предыдущего месяца, приводит к неожиданному результату: программа автоматически сторнирует всю сумму начисленной ранее премии за этот месяц. Выясним, почему так происходит, и разберем по шагам проверенные способы решения этой проблемы.

Причины автоматического сторнирования премии

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

  1. Неправильно настроенный приоритет вытеснения. Если в настройках начисления премии на вкладке «Приоритет» в списке вытесняющих видов расчета указаны Больничный или Оплата больничных листов за счет работодателя, программа считает, что дни болезни не должны перекрываться периодом действия премии. При обнаружении пересечений периодов инициируется перерасчет.
  2. Расчет премии фиксированной суммой. Если премия начисляется фиксированной величиной (без привязки к отработанному времени в формуле), система физически не может определить, какую именно долю этой суммы нужно отсторнировать за дни болезни. Не имея возможности рассчитать пропорцию, программа сторнирует всю сумму целиком.
  3. Изменение базового периода. Если расчетная база премии привязана к результатам прошлого месяца, а регистрируемый больничный лист меняет количество отработанных дней (и, соответственно, базу) за этот период, программа автоматически запускает процедуру перерасчета всех зависимых начислений.

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

Способ 1. Корректировка настроек приоритета (вытеснения)

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

  1. Перейдем в раздел Настройка — Начисления.
  2. Найдем и откроем карточку проблемного начисления (премии).
  3. Перейдем на вкладку Приоритет.
  4. В правой колонке (где указаны начисления, приоритет которых выше и которые вытесняют данное начисление) найдем строки Больничный и Оплата больничных листов за счет работодателя.
  5. Удалим их из списка и сохраним настройки начисления.

После выполнения этих действий проведение больничного листа больше не будет инициировать перерасчет и сторнирование данной премии.

Способ 2. Изменение формулы расчета для пропорционального уменьшения

Если премия должна уменьшаться пропорционально дням болезни, но сейчас она сторнируется полностью, необходимо скорректировать формулу расчета. Программа должна «понимать», какая доля начисления приходится на фактически отработанное время.

Для этого в формулу начисления премии следует внедрить показатели времени, например, использовать показатель ДоляОтработанногоВремени или отношение фактически отработанных дней к норме времени: ВремяВДнях / НормаДней. В таком случае при расчете сторно программа корректно уменьшит премию только за те дни, которые пришлись на период болезни, сохранив остальную часть начисления.

Способ 3. Ручное исправление в документе «Больничный лист»

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

  1. Откроем документ БольничныйЛист, который вызвал сторнирование.
  2. Перейдем на вкладку Пересчет прошлого периода.
  3. В табличной части найдем автоматически созданные строки со сторно премии за прошлый месяц.
  4. Выделим эти строки и удалим их вручную либо воспользуемся кнопкой Отменить исправления для сброса авторасчетов по конкретному сотруднику.

Обратите внимание, что при последующем перерасчете зарплаты программа может снова попытаться зарегистрировать это сторно в качестве «незакрытого» перерасчета, поэтому данный способ лучше использовать как временную меру.

Способ 4. Временный обходной путь через регистрацию неявки

Рассмотрим практический прием, предложенный пользователями форума. Если больничный лист предоставляется с опозданием (уже в следующем месяце), во избежание некорректных автоматических сторно в закрываемом периоде можно зафиксировать факт отсутствия сотрудника заранее:

  1. В конце расчетного месяца (например, августа) до начисления окончательной зарплаты введем документ Отсутствие (болезнь, прогул, неявка) на те дни, которые сотрудник фактически не отработал.
  2. При начислении зарплаты за август программа сразу рассчитает все начисления (включая премии) с учетом этого отсутствия.
  3. В начале сентября при поступлении официального закрытого больничного листа введем документ БольничныйЛист. Поскольку период отсутствия уже был зафиксирован в системе и учтен при расчете премии, программа не станет производить избыточное сторнирование за весь прошлый месяц.

Рекомендации по ведению учета премий

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

← На главную