Как исправить потерю 2,33 дней отпуска при вводе начальных остатков в 1С:ЗУП 3.1?

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

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

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

Суть проблемы: почему «пропадают» дни отпуска при переносе?

Рассмотрим типичную ситуацию. Предприятие принимает решение вести учет в 1С:ЗУП 3.1, начиная с декабря 2017 года. Данные переносятся из версии 2.5. У сотрудника рабочий год длится с 1 января по 31 декабря. По состоянию на 1 декабря 2017 года в базе ЗУП 2.5 числился остаток отпуска в размере 10,67 дней (что соответствует 10 отработанным месяцам: 10 * 2,33 = 23,33 дня минус использованные дни отпуска).

При переносе в документе Ввод начальных остатков отпусков фиксируется запись: остаток 10,67 дней за рабочий год 01.01.2017 – 31.12.2017. Однако в дальнейшем при формировании отчетов в ЗУП 3.1 (например, на 01.01.2018) программа упорно показывает остаток 10,67 дней вместо положенных 13 дней (10,67 + 2,33 дня за отработанный декабрь). Куда исчезают 2,33 дня за декабрь 2017 года и почему программа их игнорирует? Выясним причину этого поведения.

Анализ алгоритма расчета прав на отпуск в ЗУП 3.1

Начиная с версии 3.1.7, разработчики 1С существенно изменили внутренний алгоритм расчета заработанных прав на отпуск. В отличие от версии 2.5, где остаток представлял собой простое числовое значение на конкретную дату, в ЗУП 3.1 система строит динамическую прогнозную цепочку в специализированном регистре сведений ЗаработанныеПраваНаОтпуска.

Программа определяет дату начисления прав на очередные 2,33 дня по следующим правилам:

  1. Если в календарном месяце, в котором начинается рабочий год, сотрудник отработал половину месяца или более, дата начисления прав в каждом последующем месяце определяется как дата окончания предыдущего рабочего месяца плюс половина продолжительности текущего календарного месяца (с ограничением концом месяца).
  2. Если в календарном месяце начала рабочего года отработано менее половины месяца, начисление прав происходит в момент, когда сумма «обрезков» дней по двум смежным месяцам достигает 15 дней.
  3. Также учитывается законодательное правило из советского Постановления НКТ СССР № 169 (п. 28): при отработке 11 месяцев первого рабочего года сотруднику полагается полный отпуск за весь год (28 дней).

Когда мы вводим документ начальных остатков с датой 01.12.2017 и указываем остаток 10,67 дней за текущий рабочий год, программа ЗУП 3.1 интерпретирует это так: наступило 1 декабря, и указанные 10,67 дней — это окончательный и зафиксированный остаток, который уже учитывает все нюансы текущего месяца, либо алгоритм считает, что декабрь уже «поглощен» датой ввода остатков. В результате расчетный механизм программы просто не находит оснований для начисления дополнительных 2,33 дней за декабрь, так как считает этот период закрытым ручным вводом.

Способ 1. Корректировка реквизита «На дату» (Рекомендуемый способ)

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

Разберем этот процесс по шагам:

  1. Перейдите в раздел Главное или См. также (в зависимости от настроек интерфейса) и откройте журнал документов Ввод начальных остатков отпусков.
  2. Найдите документ, созданный при переносе данных из версии 2.5.
  3. Обратите внимание на поле Остатки на: (дата, на которую вводятся данные). По умолчанию там может быть установлено 01.12.2017.
  4. Измените эту дату на середину предыдущего месяца — например, на 15.11.2017 (или на последнее число предыдущего месяца — 30.11.2017).
  5. Проведите документ и проверьте движения.

Что происходит в системе после этого изменения?

Программа фиксирует в регистре сведений ЗаработанныеПраваНаОтпуска начальную точку 10,67 дней на дату 15.11.2017. Поскольку до окончания рабочего года (31.12.2017) остается еще время, встроенный алгоритм «15 дней» успешно срабатывает. Система делает автоматическую запись на 30.11.2017 (или 16.12.2017 в зависимости от конкретных дат начала рабочего года сотрудника) и начисляет недостающие 2,33 дня. В итоге при формировании отчета «Остатки отпусков» на 01.01.2018 мы увидим корректную цифру — 13 дней.

Способ 2. Ввод полных остатков на конец расчетного периода

Если фактически учет в новой базе 1С:ЗУП 3.1 начинает полноценно вестись с 1 января 2018 года, а декабрь 2017 года использовался только в качестве технического расчетного месяца для переноса средний заработков, можно применить другой методологический подход.

Рассмотрим этот вариант подробнее:

  1. В документе ввода остатков укажите дату 31.12.2017.
  2. В табличной части вручную рассчитайте и укажите итоговый остаток отпуска, который должен быть у сотрудника на эту дату в соответствии с данными учета в старой базе. В нашем примере вместо 10,67 дней нужно сразу указать 13 дней.
  3. Проведите документ.

При таком подходе мы избегаем необходимости заставлять программу производить расчет за переходный месяц. Мы сразу даем системе чистые, выверенные остатки на границе отчетных периодов (на конец года), от которых ЗУП 3.1 начнет безупречно начислять права по 2,33 дня ежемесячно, начиная с января 2018 года.

Способ 3. Использование документа «Корректировка остатков отпусков»

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

Для решения проблемы в текущем периоде воспользуемся специальным инструментом:

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

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

Важные рекомендации при переносе данных

Чтобы избежать подобных ошибок при переходе на 1С:ЗУП 3.1, рекомендуем придерживаться следующих правил:

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

← На главную