Почему 1С:ЗУП 2.5 неверно рассчитывает рабочий период и остаток отпуска сотрудника и как это исправить?

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

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

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

---

Почему у сотрудника появилось аномальное количество использованных дней отпуска?

Выясним причину, по которой в справке по отпускам за старые периоды (например, за 2006–2007 годы) может отображаться гигантская цифра использованных дней — например, 228 дней вместо положенных 28. Такая аномалия практически всегда связана с технической ошибкой, допущенной при переносе данных из конфигурации ЗиК 7.7 в ЗУП 2.5.

Рассмотрим подробнее, как работал алгоритм переноса:

  1. В программе ЗиК 7.7 учет отпусков велся в Журнале расчетов. Если ежегодный отпуск сотрудника начинался в одном месяце, а заканчивался в другом (переходящий отпуск, например, с 25 июля по 21 августа), программа разбивала этот расчетный документ на две записи — по каждому месяцу начисления отдельно.
  2. При выгрузке данных с помощью стандартных правил переноса (обработка ПВД «Фактические отпуска») происходил программный сбой. Вместо того чтобы перенести реальное количество дней отпуска, приходящихся на каждый конкретный месяц (например, 7 дней в июле и 21 день в августе), правила переноса записывали общую продолжительность отпуска (28 дней) в обе переносимые строки.
  3. В ряде случаев, из-за особенностей ведения учета и исправления документов прошлых периодов в ЗиК 7.7, в файлы выгрузки попадали дублирующие записи. При загрузке в ЗУП 2.5 эти дубли суммировались, в результате чего программа получала многократно завышенные показатели по использованным дням отпуска.

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

---

Как устроен учет отпусков в ЗУП 2.5 и где хранятся эти данные?

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

  1. Количество дней отпуска, на которое сотрудник имеет право. Оно рассчитывается исходя из стажа работы сотрудника (по 2.33 дня за каждый отработанный месяц при стандартном отпуске в 28 календарных дней).
  2. Количество фактически использованных дней отпуска. Эти данные программа берет исключительно из записей специального регистра накопления.

Основным источником информации о фактически отгулянных днях отпуска является регистр накопления ФактическиеОтпускаОрганизаций (в некоторых интерфейсах он может отображаться как регистр накопления «Фактические отпуска»). Именно его записи за весь период работы сотрудника анализирует программа при формировании справки по отпускам.

При переносе данных из ЗиК 7.7 исторические записи формируются не документами начисления отпусков, а специальными техническими документами, которые называются «Перенос данных». Эти документы имеют различные буквенные префиксы (коды) в зависимости от того, какие разделы учета они переносят. Данные по отпускам записываются в документы с кодом (префиксом) «ОСО» (Остатки/Фактические отпуска).

---

Пошаговая инструкция по исправлению аномальных дней отпуска

Разберем по шагам, как локализовать и скорректировать ошибочные записи в информационной базе:

Шаг 1. Поиск проблемного документа «Перенос данных»

Перейдем в меню Операции -> Документы -> Перенос данных. В открывшемся списке документов нам необходимо найти документы, в номере которых содержится префикс ОСО. Именно эти документы отвечают за ввод остатков и фактических отпусков за прошлые годы.

Шаг 2. Переход к регистру накопления

Откроем найденный документ с кодом ОСО за тот период, в котором обнаружена ошибка (в нашем примере это период 2006–2007 гг.). В верхней части формы документа будет представлена таблица регистров, по которым данный документ делает движения. Нам необходимо перейти на вкладку, соответствующую регистру накопления ФактическиеОтпускаОрганизаций.

Шаг 3. Фильтрация данных по сотруднику

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

Шаг 4. Корректировка количества дней

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

Шаг 5. Запись и проведение документа

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

Важное примечание: В параметрах учета программы (меню Сервис -> Параметры учета -> вкладка Кадровый учет) есть настройка, определяющая, какими документами списываются остатки отпусков: кадровыми («Отпуска организаций») или расчетными («Начисление отпуска сотрудникам организаций»). Если в процессе ведения базы эта настройка менялась, движения по регистру ФактическиеОтпускаОрганизаций могли задвоиться уже в текущем периоде. Убедитесь, что фактические отпуска списываются только одним видом документов.

---

Почему рабочий год сотрудника сдвинулся вперед в более поздних периодах?

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

Сдвиг рабочего года — это не обязательно ошибка программы. В соответствии со статьей 121 Трудового кодекса РФ, некоторые периоды времени не включаются в стаж работы, дающий право на ежегодный основной оплачиваемый отпуск. При наличии таких периодов дата окончания рабочего года автоматически сдвигается на соответствующее количество дней.

К таким исключаемым периодам относятся:

В ЗУП 2.5 этот механизм полностью автоматизирован. Программа анализирует кадровое состояние сотрудника за каждый его рабочий год.

---

Как проверить причины сдвига рабочего года в программе?

Чтобы выяснить, на каких основаниях программа сдвинула рабочий год сотрудника (например, в 2020 году), проанализируем кадровые данные сотрудника.

Вся информация о состояниях сотрудников, исключаемых из отпускного стажа, фиксируется в регистре сведений СостоянияРаботниковОрганизаций (в некоторых интерфейсах — «Состояние работников»).

Выполним следующие действия для проверки:

  1. Перейдем в меню Операции -> Регистры сведений -> Состояния работников организаций.
  2. Установим отбор по проблемному сотруднику и проанализируем записи за интересующий нас рабочий год (в данном случае за 2020 год).
  3. Ищем записи со следующими состояниями:
    • «Отпуск без сохранения платы» (проверяем общую продолжительность по документам «Отпуска организаций» или «Невыходы в организациях»);
    • «В отпуске по уходу за ребенком»;
    • «Прогулы».
  4. Если в регистре зафиксирован отпуск без сохранения оплаты, откроем первичный документ, которым он был проведен, и посчитаем количество календарных дней. Если оно превышает 14 дней за рабочий год, программа абсолютно законно сдвинула дату окончания рабочего года на количество дней превышения.
  5. Если записи в регистре сведений не соответствуют реальным кадровым приказам (например, сотруднику ошибочно провели невыход или затянувшийся отпуск за свой счет), необходимо распровести или скорректировать соответствующий первичный документ.

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

← На главную