При переходе на программу «1С:Зарплата и управление персоналом» (редакция 3.1) многие пользователи и расчетчики сталкиваются с неприятным сюрпризом: при формировании отчетов по остаткам отпусков у некоторых сотрудников программа некорректно рассчитывает дни. Очень часто «теряется» ровно один месяц (2.33 дня) в самом начале ведения учета в новой базе — например, за январь, если учет начат с 01.01.2019.
В этой статье мы подробно разберем, почему возникает эта проблема, как устроены внутренние механизмы платформы 1С для учета отпусков, и предложим два надежных сценария решения этой проблемы без ручной корректировки технических регистров.
---
Для начала проанализируем, как программа понимает, сколько дней отпуска «заработал» сотрудник. В 1С:ЗУП 3.1 учет ведется не в виде простых плоских остатков на конец каждого месяца, а с помощью вспомогательного регистра сведений ЗаработанныеПраваНаОтпуска. Записи в этот регистр вносятся динамически в момент расчета документов (например, документа Отпуск) или при формировании отчетов.
Алгоритм программы привязан не к календарному месяцу, а к индивидуальному рабочему году сотрудника. Право на очередные 2.33 дня отпуска регистрируется в день, когда сотрудник отработал половину очередного рабочего месяца.
Почему же за январь у одного сотрудника запись на 2.33 дня создается, а у другого — нет, хотя оба приняты на работу одной датой в документе НачальнаяШтатнаяРасстановка?
---
Главная причина «пропажи» дней отпуска кроется в реализации законодательного «правила 11 месяцев» (согласно Правилам об очередных и дополнительных отпусках НКТ СССР № 169). Если сотрудник отработал в своем рабочем году 11 полных месяцев, он получает право на полный отпуск за весь рабочий год (все 28 дней, а не 25.67).
В алгоритмах 1С:ЗУП 3.1 это реализовано следующим образом:
Рассмотрим конкретный пример из практики обсуждения:
Сотрудник принят на работу давно. Его текущий рабочий год: 01.02.2018 – 31.01.2019. Учет в новой базе мы начинаем с 01.01.2019 и вводим остатки на эту дату.
Для этого сотрудника январь 2019 года является как раз 12-м месяцем его рабочего года. Программа логично считает, что за этот рабочий год он уже должен иметь полные 28 дней отпуска. Поскольку история использования отпусков и детальные ежемесячные начисления за прошлый год остались в старой базе, программа видит только остаток на 01.01.2019 и полагает, что право за 12-й месяц (январь) уже было «заработано» и учтено в двойном размере в декабре 2018 года (который был 11-м месяцем).
В результате в январе программа регистрирует 0 дней вместо ожидаемых 2.33, что приводит к занижению итогового остатка ровно на 2.33 дня.
---
Документ НачальнаяШтатнаяРасстановка удобен для быстрого старта, но он фиксирует остатки отпусков на одну общую жесткую дату для всех сотрудников (например, на 01.01.2019).
Если у сотрудников рабочие года «рваные» (начинаются не с 1-го числа календарного года, а индивидуально от даты приема), упрощенный ввод остатков на фиксированную дату не позволяет программе правильно выстроить хронологию заработанных прав. Программа «схлопывает» периоды и некорректно применяет правила округления стажа.
---
Чтобы избежать ошибок округления и пропусков начислений, эксперты рекомендуют отказаться от ввода остатков отпусков непосредственно в документе НачальнаяШтатнаяРасстановка и воспользоваться специализированным документом ВводОстатковОтпусков (раздел Кадры или Главное — См. также — Остатки отпусков).
Рассмотрим два наиболее точных сценария настройки.
Вместо того чтобы вводить остатки для всех сотрудников «под гребенку» на 01.01.2019, мы создаем документы ВводОстатковОтпусков индивидуально для каждого сотрудника на его персональную дату.
Пошаговый алгоритм:
ВводОстатковОтпусков.Если по организационным причинам вам принципиально важно ввести остатки именно на одну общую дату (например, строго на 01.01.2019), то делать это нужно через документ ВводОстатковОтпусков с максимальной детализацией табличной части.
Правила заполнения таблицы:
---
После того как вы скорректировали документы ввода остатков, выполните следующие действия для обновления регистров:
ВводОстатковОтпусков.ЗаработанныеПраваНаОтпуска.Используя эти методы, вы избавите себя от необходимости ручного вмешательства в регистры сведений и обеспечите абсолютно точный и прозрачный учет отпусков в 1С:ЗУП 3.1.