Почему в ЗУП 3.1 продолжает начисляться пособие по уходу за ребенком до 1,5 лет после даты окончания выплаты?

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

В практике работы с программой «1С:Зарплата и управление персоналом 3.1» часто встречается ситуация, когда сотрудница находится в отпуске по уходу за ребенком, и, несмотря на то что в документе Отпуск по уходу за ребенком четко указана дата окончания выплаты (например, день достижения ребенком возраста 1,5 лет), программа продолжает начислять пособие в последующих периодах. Рассмотрим детально, почему это происходит и как правильно исправить данную ошибку, особенно если ваша база данных была перенесена из версии 2.5.

Разбор проблемы: почему поле «Выплачивать по» игнорируется

В современных релизах ЗУП 3.1 расчет зарплаты и пособий опирается не только на данные первичных документов, но и на записи в специальных интервальных регистрах. Основным из них является ПлановыеНачисленияИнтервальный. Проанализируем механизм его работы: когда мы создаем «чистый» документ в версии 3.1, система автоматически создает в этом регистре две записи. Первая — разрешающая начисление до даты, указанной в поле «Выплачивать по», вторая — прекращающая начисление (где флаг Используется установлен в значение Ложь) со следующего дня.

Проблема возникает в следующих случаях:

  1. Перенос данных из ЗУП 2.5: При техническом переносе (особенно если он был выполнен давно, например, в 2018 году) документы часто переносились как записи регистров. Связь между экранным полем даты и реальным движением в интервальном регистре могла не сформироваться корректно.
  2. Ошибки релизов: В ветках 3.1.13–3.1.15 наблюдались программные ошибки, при которых изменение даты в основном документе не инициировало перезапись интервальных данных.
  3. Ручные корректировки: Если в цепочке документов по сотруднику вводились документы Изменение условий оплаты отпуска по уходу за ребенком, они могли «перекрыть» настройки исходного отпуска, сделав начисление бессрочным до конца всего отпуска (до 3-х лет).

Способ 1: Использование документа «Изменение условий оплаты»

Это самый надежный и методически верный способ, который не требует программирования. Если вы обнаружили, что пособие продолжает начисляться лишние дни или месяцы, выполним следующие действия:

  1. Перейдем в раздел Зарплата — Отпуска по уходу за ребенком.
  2. Создадим новый документ Изменение условий оплаты отпуска по уходу за ребенком.
  3. В поле Дата изменения укажем следующий день после официальной даты окончания выплаты пособия до 1,5 лет (например, если выплата по 03.09.2020, то дата изменения — 04.09.2020).
  4. На закладке Пособия необходимо снять флаг Выплачивать пособие до 1,5 лет.
  5. Проведем документ и пересчитаем документ Начисление зарплаты и взносов за проблемный месяц.

Важно: Проанализируем ситуацию — этот документ принудительно создает в регистре ПлановыеНачисленияИнтервальный запись о прекращении начисления, что гарантирует остановку расчетов.

Способ 2: Технологический анализ и исправление регистров

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

  1. Зайдем в раздел Администрирование — Обслуживание.
  2. Развернем блок Корректировка данных.
  3. Выберем пункт Правильность данных в интервальных регистрах.
  4. Запустим проверку. Если система обнаружит, что данные в документах-основаниях (где стоит дата «Выплачивать по») не соответствуют записям в интервальных регистрах, она предложит выполнить автоматическое исправление.

Способ 3: Перезаполнение и перепроведение документа (для опытных пользователей)

Если проблема вызвана старым переносом данных, попробуем «оживить» документ Отпуск по уходу за ребенком. Рассмотрим алгоритм:

  1. Отменим проведение документа Отпуск по уходу за ребенком.
  2. Нажмем кнопку Записать (не проводить), чтобы обновить внутренние связи объекта.
  3. Снова нажмем Провести.

В момент проведения современный релиз ЗУП постарается заново сформировать движения по всем регистрам, включая интервальные. Посмотрим на результат в регистре Плановые начисления. Если после даты окончания выплаты появилась запись с пустым значением или флагом прекращения — проблема решена.

Работа с регистром «ПлановыеНачисленияИнтервальный» напрямую

Для программистов и системных администраторов существует возможность точечной правки. Если документ Изменение условий... по каким-то причинам не помогает, проанализируем состояние регистра сведений ПлановыеНачисленияИнтервальный с отбором по конкретному сотруднику.

Разберем, на что обратить внимание:

Для исправления можно воспользоваться типовой обработкой Корректировка движений, которая позволяет изменять записи регистров, привязанных к документу, без его перепроведения. Это «хирургический» метод, который стоит применять только в крайнем случае, когда перепроведение первичных документов невозможно из-за закрытых периодов.

Почему 1С просит моделировать ситуацию на демо-базе?

Как отмечалось в обсуждении, техподдержка часто просит прислать пример на демо-базе. Выясним причину: на «чистой» базе документы создаются по актуальным алгоритмам. Если на демо-базе всё работает корректно, это подтверждает гипотезу о том, что проблема кроется в «наследстве» переноса из 2.5 или в поврежденных интервальных записях конкретной информационной базы. В таких случаях единственным выходом является либо использование «костыля» в виде документа Изменение условий оплаты, либо полное пересоздание цепочки документов по отпуску.

Резюме:

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

← На главную