Ситуация, когда в программе «1С:Зарплата и управление персоналом 2.5» (ЗУП 2.5) документ «Больничный лист» или «Начисление отпуска» выдает нулевой результат при наличии фактических начислений в расчетном листке, является распространенной технической проблемой. Особенно часто это проявляется, когда сотрудник большую часть месяца находился в отпуске без сохранения заработной платы (административном), но получил определенные выплаты, например, индексацию оклада или разовые премии.
В этой статье мы подробно разберем, почему программа «видит» сумму в расчетном листке, но «игнорирует» ее при расчете среднего заработка, и как шаг за шагом восстановить корректный расчет.
Прежде всего, нам необходимо понять фундаментальное различие в том, как ЗУП 2.5 отображает данные в расчетном листке и как она собирает их для среднего заработка. Сумма в расчетном листке берется из регистров расчета (основных или дополнительных начислений). Однако для формирования базы среднего заработка для пособий ФСС используются данные из специальных регистров накопления. Если запись попала в один регистр, но не попала в другой — мы получим нулевой средний заработок.
Рассмотрим ситуацию на примере: сотруднику начислена сумма 42.32 (индексация) за июль 2022 года. При этом весь месяц, кроме выходных, он был в отпуске за свой счет. В расчетном листке сумма есть, а в больничном — пусто. Разберемся, где искать причину.
Первым делом проверим, «знает» ли программа, что данный вид расчета (например, «Индексация заработка») должен учитываться при расчете пособий. Для этого проделаем следующие действия:
Важно: Проверьте это в обеих базах, если вы сравниваете работу программы в текущей и архивной копии. Расхождения в этих настройках — самая частая причина ошибок.
Если настройки среднего заработка верны, но сумма все равно не подтягивается, нужно проверить «первоисточник» данных для больничного. В ЗУП 2.5 это регистр накопления ЗаработокСотрудниковДляРасчетаПособийФСС. Проанализируем его состояние:
Через «Операции» — «Регистры накопления» найдем указанный регистр. Сделаем отбор по сотруднику и периоду (июль 2022). Если в регистре нет записи на сумму 42.32, значит, документ начисления зарплаты не сделал движений по этому регистру. Это может произойти, если:
Разберем ситуацию с отпуском за свой счет. Если сотрудник был в административном отпуске весь месяц, этот период является «вытесняющим». Проанализируем настройки вытеснения:
Если в виде расчета «Индексация» в списке вытесняющих видов расчета стоит «Отпуск без сохранения оплаты», то при полном перекрытии месяца программа может ошибочно обнулить результат для целей среднего заработка. Проверьте вкладку «Прочее» в настройках вида расчета. Там находится список ведущих расчетов и вытеснений. Попробуйте временно убрать вытеснение и перепровести документ начисления зарплаты, чтобы увидеть, появится ли сумма в регистре ФСС.
Выясним причину, по которой программа ставит ровно 0, а не расчет по МРОТ. По закону, если средний заработок за два предыдущих года (в нашем случае 2020 и 2021) ниже МРОТ или равен нулю, расчет должен производиться исходя из минимального размера оплаты труда.
Если программа выдает 0:
В открывшемся окне мы можем вручную увидеть, какие данные программа берет за 2020 и 2021 годы. Помните, что заработок июля 2022 года не должен влиять на больничный, начавшийся в 2022 году. Он будет учитываться только для больничных 2023 и 2024 годов.
Иногда проблема кроется в «зависании» итогов в платформе 1С. Рассмотрим методы технического исправления:
Воспользуемся процедурой пересчета итогов. Для этого в режиме «Конфигуратор» выберем меню Администрирование — Тестирование и исправление. Установим галочку «Пересчет итогов». Это часто помогает, если данные в регистрах есть, но отчеты и документы их не «подхватывают».
Также можно попробовать принудительно «подтолкнуть» расчет в документе, используя следующий алгоритм:
Если стандартные методы не помогают, проанализируем запрос, которым система собирает данные. В ЗУП 2.5 за это отвечает модуль ПроцедурыУправленияПерсоналом или модуль объекта документа БольничныйЛист. Можно воспользоваться консолью запросов и проверить, что выдает запрос к таблице РегистрНакопления.ЗаработокСотрудниковДляРасчетаПособийФСС.Обороты.
Пример структуры запроса, который можно проверить в консоли:
ВЫБРАТЬ
Заработок.Сотрудник,
Заработок.РезультатОборот КАК Сумма,
Заработок.Период
ИЗ
РегистрНакопления.ЗаработокСотрудниковДляРасчетаПособийФСС.Обороты(&НачалоПериода, &КонецПериода, , Сотрудник = &Сотрудник) КАК Заработок
Если этот запрос возвращает пустой результат, значит, проблема в данных (документ начисления не сделал запись). Если запрос возвращает сумму, но в документе ее нет — проблема в механизме заполнения табличной части документа или в установленных фильтрах по организациям/периодам.
Подводя итог, если в ЗУП 2.5 перестала заполняться сумма в больничном, последовательно проверьте:
Соблюдение этой последовательности действий в большинстве случаев позволяет выявить причину «пропажи» сумм без привлечения разработчиков.