Почему в ЗУП 3.1 при расчете среднего заработка не учитывается больничный и как это исправить?

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

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

Проанализируем причину возникновения проблемы

Основная причина кроется в архитектуре хранения данных в ЗУП 3.1. В отличие от старых версий программы (например, ЗУП 2.5), где данные для среднего собирались «на лету» по записям регистров расчета, в версии 3.1 существует специализированный регистр накопления Данные о времени для расчета среднего заработка (общий).

Рассмотрим стандартную цепочку событий:

  1. В июле сотрудник болел с 20-го числа, но больничный еще не принес.
  2. В конце июля бухгалтер создает документ Начисление зарплаты и взносов. Поскольку информации об отсутствии нет, программа начисляет зарплату за полный месяц и делает запись в регистр среднего заработка: «Июль — отработано 31 день, для среднего — 29.3 дня».
  3. В августе бухгалтер вводит документ Больничный лист. Период действия в нем — июль, но период регистрации — август.
  4. При расчете отпуска в феврале программа обращается к регистру среднего заработка за июль и видит там запись, сделанную июльским документом начисления.

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

Метод 1: Использование документа «Отсутствие (болезнь, прогул, неявка)»

Это наиболее правильный и методически верный способ работы в ЗУП 3.1. Разберем его по шагам:

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

Шаг 2. Расчет зарплаты. При проведении документа Начисление зарплаты и взносов за текущий месяц программа увидит зарегистрированное отсутствие. В регистр Данные о времени для расчета среднего заработка попадет только фактически отработанное время до начала болезни. Количество календарных дней для среднего заработка будет рассчитано пропорционально.

Шаг 3. Ввод больничного. Когда сотрудник принесет больничный лист (например, уже в следующем месяце), мы введем его на основании ранее созданного документа Отсутствие. Вид времени сменится с «НН» на «Б», суммы доначислятся, но данные о времени в регистре среднего уже будут «забронированы» правильно.

Метод 2: Исправление ситуации, если расчет уже закрыт

Что делать, если июль уже рассчитан и выплачен, а больничный введен августом и данные среднего за июль теперь неверны? Выясним, почему обработка Обновить данные для расчета среднего заработка часто не дает результата.

Программа не может просто «выкинуть» время из июля, потому что в июле зарегистрирован документ начисления на полную сумму и полное время. Чтобы исправить ситуацию, нужно заставить систему пересмотреть результаты расчета июля. Рассмотрим два пути:

Вариант А: Перерасчет прошлого периода (через Доначисления). Если период (июль) уже закрыт для редактирования, в документе Больничный лист на вкладке «Пересчет прошлого периода» программа должна автоматически сторнировать зарплату за дни болезни. Однако для коррекции времени в среднем заработке иногда требуется зайти в раздел «Зарплата» — «Сервис» — Пересчеты и проверить, нет ли там записей по этому сотруднику, требующих обработки.

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

Технический анализ регистра «Данные о времени для расчета среднего»

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

В типовой конфигурации запись в регистр накопления Данные о времени для расчета среднего заработка (общий) выглядит примерно так (в упрощенном виде):


// Пример логики формирования записи
Движение = РегистрыНакопления.ДанныеОВремениДляРасчетаСреднегоЗаработкаОбщий.Добавить();
Движение.Период          = НачалоМесяца(ДатаНачисления);
Движение.Сотрудник       = Объект.Сотрудник;
Движение.КалендарныеДни  = 29.3; // Если месяц отработан полностью
Движение.ОтработаноДней  = ФактРабочихДней;

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

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

Рекомендации по автоматизации процесса

Чтобы минимизировать ручной труд и избежать ошибок, рекомендуем следующий алгоритм совместной работы расчетчика и кадровика:

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

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

← На главную