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

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

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

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

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

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

Если при переносе программа видит, что на 01.01.2018 у сотрудника осталось 0 дней отпуска, и при этом не указан корректный период, за который этот остаток сформирован, система автоматически считает 01.01.2018 началом его нового рабочего года. Даже если сотрудник работает в организации с 2010 года, программа проигнорирует прошлые периоды, так как считает их «закрытыми» нулевыми остатками на дату ввода данных.

Рассмотрим подробнее два способа решения этой проблемы.

Способ 1: Корректировка через «Начальную штатную расстановку»

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

  1. Перейдем в раздел Главное — Данные на начало эксплуатации (или найдем документ через поиск в разделе Кадры).
  2. Откроем документ Начальная штатная расстановка, созданный на дату начала ведения учета в новой базе (в нашем примере — 01.01.2018).
  3. Найдем в списке сотрудника, у которого в отпуске подтягивается неверная дата.
  4. Прокрутим таблицу вправо до столбца Отпуска. Обычно там отображается количество дней остатка. Нажмем на гиперссылку с количеством дней.
  5. В открывшемся окне редактирования остатков отпусков обратим внимание на поле Дата остатков. Если там стоит 01.01.2018, а в таблице ниже указан период, начинающийся также с 01.01.2018, это и есть причина ошибки.
  6. Важный момент: Нам необходимо указать реальный рабочий год сотрудника. Если сотрудник принят 22.12.2016, а на 01.01.2018 у него нет остатков за прошлые годы, мы должны указать рабочий год, в который попадает дата 01.01.2018. В данном случае это будет период с 22.12.2017 по 21.12.2018.
  7. После внесения корректного периода и нажатия «ОК», программа пересчитает права на отпуск, исходя из реального стажа.

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

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

Этот документ является более гибким инструментом. Разберем ситуацию: если в «Штатной расстановке» данные зафиксированы, а ошибка осталась, создадим новый документ.

  1. Перейдем в раздел Кадры — См. также — Ввод остатков отпусков.
  2. Создадим новый документ. Дата документа должна соответствовать дате начала учета (в нашем случае 01.01.2018).
  3. Выберем сотрудника. Программа может автоматически подтянуть неверные данные, которые мы и будем исправлять.
  4. Нажмем кнопку Редактировать остатки отпусков.
  5. В появившейся форме мы увидим таблицу «Остатки по ежегодным отпускам». Здесь критически важно заполнить колонки Рабочий год (с) и Рабочий год (по). Эти даты должны соответствовать фактическому рабочему году сотрудника, в котором он находится на дату ввода остатков.
  6. Даже если остаток дней равен «0», правильно указанный период «заставит» программу считать следующий рабочий год от даты окончания текущего, а не от даты переноса данных.

Рассмотрим пример: Сотрудник принят 15.05.2015. Перенос данных 01.01.2018. На 01.01.2018 он уже отгулял отпуск за все прошлые периоды. В документе Ввод остатков отпусков на 01.01.2018 мы должны указать его текущий рабочий год: с 15.05.2017 по 14.05.2018 и поставить 0 дней остатка. Тогда при оформлении отпуска летом 2018 года программа правильно увидит начало периода — 15.05.2017.

Проанализируем влияние отпусков «за свой счет» и отсутствие прав

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

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

Как проверить результат без создания лишних документов?

Чтобы убедиться, что наши исправления сработали, не обязательно каждый раз создавать новый документ Отпуск. Мы можем воспользоваться кадровыми отчетами:

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

Техническая деталь и возможные ошибки релиза

Проанализируем еще один аспект. В некоторых старых релизах ветки 3.1.7 (например, 3.1.7.144) существовала программная ошибка, из-за которой алгоритм некорректно определял границу периода при переходящих остатках. В этом случае, помимо исправления данных, рекомендуется выполнить обновление конфигурации до актуальной версии (ветки 3.1.27 или 3.1.31 и выше). Однако помните: обновление исправит программный код, но не исправит неверно введенные «руками» даты в документах ввода остатков. Сначала исправляем данные, затем обновляемся.

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

← На главную