Как исправить переходящий отпуск после переноса данных из ЗУП 2.5 в ЗУП 3.1?

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

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

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

---

Суть проблемы и почему типовой механизм дает сбой

При рекомендованном переносе данных на начало эксплуатации (например, на 01.01.2020) информация о переходящих отпусках записывается в специализированный регистр сведений. Найти эти записи можно в разделе Главное — Данные на начало эксплуатации — Периоды, оплаченные до начала эксплуатации.

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

Ниже мы подробно разберем два альтернативных метода решения данной проблемы.

---

Вариант 1. Методика воссоздания «фиктивного» отпуска и очистки регистров среднего заработка

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

Проанализируем этот алгоритм по шагам:

  1. Очистка начальных данных: Перейдите в раздел Главное — Данные на начало эксплуатации — Периоды, оплаченные до начала эксплуатации и удалите строку по нашему сотруднику. Это необходимо для того, чтобы избежать задвоения периодов отсутствия при проведении документов.
  2. Ввод исходного документа: Создайте документ Отпуск в новой базе ЗУП 3.1. В поле «Месяц начисления» укажите Декабрь предыдущего года. Задайте исходный период отпуска (например, с 21.12 по 20.01) и вручную заполните суммы начислений в точном соответствии с тем, как они были рассчитаны в старой базе ЗУП 2.5. Проведите документ.
  3. Создание документа-исправления: Откройте созданный декабрьский документ и нажмите на ссылку Исправить в левом нижнем углу. Система автоматически создаст новый документ-исправление с месяцем начисления Январь.
  4. Корректировка периода: В январском документе-исправлении укажите новую (фактическую) дату окончания отпуска (например, 09.01 из-за отзыва с 10.01). Программа автоматически рассчитает сумму сторно за неотгулянные дни января. Запишите, но пока не проводите этот документ!
  5. Снятие с проведения исходного документа: Вернитесь в «декабрьский» документ отпуска и отмените его проведение. Это критически важно: нам не нужны начисления декабря в новой базе, так как сальдо на 1 января уже перенесено со всеми учетом этих сумм.
  6. Проведение исправления: Теперь проведите январский документ-исправление. Начисления за январь скорректируются, а сумма с минусом красиво попадет в январский расчетный листок.

Внимание! Борьба с обнулением дней декабря:

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

Сделать это можно с помощью встроенной обработки «Групповое изменение реквизитов» (с включенным отображением служебных регистров в настройках) либо программно. Пример простого кода для очистки набора записей регистра по конкретному сотруднику:


НаборЗаписей = РегистрыСведений.ДанныеОВремениДляРасчетаСреднегоЗаработкаКорректировка.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Сотрудник.Установить(ВыбранныйСотрудник);
НаборЗаписей.Отбор.Месяц.Установить(Дата("20191201")); // Указываем проблемный месяц декабря
НаборЗаписей.Прочитать();
НаборЗаписей.Очистить();
НаборЗаписей.Записать();

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

---

Вариант 2. Ручной обход без создания документов прошлого года (Кадровый метод)

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

Рассмотрим пошагово этот сценарий:

  1. Корректировка кадрового периода отпуска: Перейдите в документ переноса Периоды, оплаченные до начала эксплуатации и вручную скорректируйте дату окончания отпуска сотрудника на фактическую (например, измените 20.01 на 09.01). Это позволит программе правильно заполнить табель учета рабочего времени за январь (с 10.01 у сотрудника начнут регистрироваться явки) и корректно сформировать личную карточку Т-2.
  2. Корректировка взаиморасчетов (сальдо): Поскольку сотруднику за январь нужно выплатить меньше денег (из-за сторнирования части отпуска), скорректируйте его входящее сальдо на начало эксплуатации. Изменение можно внести в документ Начальная штатная расстановка или непосредственно в документ Перенос данных по регистру «Взаиморасчеты с сотрудниками», уменьшив сумму долга организации перед работником на сумму сторно.
  3. Отражение операции в расчетном листке (при необходимости): Если расчетчику принципиально важно показать эту операцию именно в расчетном листке за январь строкой «Отпуск основной» с минусом, мы можем воспользоваться документом Разовое начисление:
    • Создайте новое техническое начисление (например, «Корректировка отпуска прошлых периодов»).
    • В документе Разовое начисление за январь выберите этого сотрудника и укажите сумму сторно со знаком «минус» вручную. Программа без проблем проводит отрицательные суммы в разовых начислениях, при этом они не затронут и не испортят регистры расчета среднего заработка за прошлый год.

---

Что делать с НДФЛ и страховыми взносами?

Поскольку отпускные были выплачены в декабре, НДФЛ и страховые взносы с них уже были исчислены и сданы в отчетности за прошлый год в старой базе. Сторнирование отпуска в январе приводит к образованию переплаты по НДФЛ и взносам в текущем периоде.

Если вы пошли по Варианту 1, документ-исправление отпуска автоматически пересчитает НДФЛ с минусом на вкладке «НДФЛ» в январе.

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

← На главную