Другое · 12 мин
Как 1С считает остатки отпусков
Как 1С:ЗУП рассчитывает остатки отпусков: регистры, стаж, периоды, типовые расхождения и способы проверить и исправить остатки по сотруднику.
В 1С:Зарплата и управление персоналом остаток отпуска не хранится как одна готовая цифра. Программа вычисляет её каждый раз на дату запроса, складывая заработанные дни отпуска и вычитая фактически использованные. За «заработанную» часть отвечает стаж, дающий право на отпуск, за «использованную» — проведённые документы отпусков. Если какой-то из этих компонентов учтён неверно, остаток в отчёте искажается.
Механика расчёта опирается на два регистра накопления: «Заработанные права на отпуска» и «Фактические отпуска». Первый накапливает дни, которые сотрудник заработал за периоды работы, второй фиксирует дни, которые он отгулял. Отчёт «Остатки отпусков» (и справка из карточки сотрудника) просто сводит движения этих регистров.
Понимание этой двухкомпонентной модели — ключ к разбору любых расхождений. Когда кадровик говорит «1С неправильно считает отпуск», почти всегда проблема лежит в одном из трёх мест: не заведены начальные остатки, стаж прерывается отсутствиями, которые не входят в отпускной стаж, либо документ отпуска не проведён или проведён другим видом отпуска.
Из чего складывается остаток отпуска в 1С
Базовая формула, которую реализует программа: остаток = заработанные дни − использованные дни. Заработанные дни накапливаются пропорционально стажу. Для основного ежегодного отпуска продолжительностью 28 календарных дней это 28/12 ≈ 2,33 дня за каждый полностью отработанный месяц стажа. Для дополнительных отпусков (за вредность, ненормированный день и т. п.) действует та же пропорция, но от своей годовой продолжительности.
Каждый вид отпуска учитывается отдельно. В регистре «Заработанные права на отпуска» записи делаются с указанием вида отпуска, поэтому остаток по основному и по дополнительному отпуску никогда не смешивается. Если сотруднику положено 28 дней основного и 7 дней дополнительного отпуска, отчёт покажет две строки с самостоятельными остатками.
Использованная часть формируется документами «Отпуск», «Отпуск без сохранения оплаты» (только для видов, участвующих в остатках), «Командировка» не участвует, а также кадровыми переводами, если при них меняется состав положенных отпусков. Непроведённый или помеченный на удаление документ в расчёт не попадает — это частая причина «лишних» дней в остатке.
Как программа считает стаж для отпуска
Стаж для отпуска в 1С ведётся от даты приёма сотрудника и пересчитывается автоматически при проведении кадровых и расчётных документов. Рабочий год сотрудника — это не календарный год, а период в 12 месяцев с даты приёма (или с даты, сдвинутой исключаемыми периодами). За каждый такой рабочий год полагается полная годовая продолжительность отпуска.
Программа исключает из стажа периоды, которые по Трудовому кодексу не дают права на отпуск: отпуска за свой счёт свыше 14 календарных дней в рабочем году, отпуска по уходу за ребёнком, прогулы и отстранения. Эти периоды «сдвигают» границу рабочего года. Например, если сотрудник брал 30 дней без сохранения зарплаты, 16 из них (30 − 14) вычитаются из стажа, и окончание его рабочего года смещается.
Настройка того, какие виды отсутствий влияют на стаж, находится в параметрах начислений и видов отпусков. Если в вашей базе стаж ведётся «не так, как у коллег», первым делом проверьте, не изменены ли типовые настройки у вида расчёта отсутствия: флаг влияния на отпускной стаж мог быть снят или установлен вручную.
Где 1С хранит данные: регистры и документы
Технически расчёт опирается на два регистра накопления. Регистр «Заработанные права на отпуска» пополняется автоматически: при проведении документов начисления зарплаты, отсутствий и кадровых переводов программа определяет, сколько дней стажа добавилось за период, и начисляет пропорциональное количество дней отпуска. Регистр «Фактические отпуска» заполняется документами отпусков и хранит, сколько дней какого вида отпуска сотрудник использовал.
Третий важный элемент — документ «Начальная штатная расстановка» или ввод начальных остатков отпусков при переходе на программу в середине жизни базы. Если база начата «с нуля» и сотрудники приняты в ней с первого дня работы, остатки считаются полностью автоматически. Если же учёт переносили из другой программы, заработанные до перехода дни нужно ввести вручную — иначе остатки будут занижены ровно на «историческую» часть.
Посмотреть движения по конкретному сотруднику можно через отчёт «Остатки отпусков» с детализацией или через универсальный отчёт по регистрам. Расшифровка покажет, каким документом и когда была сделана каждая запись — это основной инструмент поиска ошибки.
- 1Откройте отчёт «Остатки отпусков» (раздел Кадры или Зарплата) и сформируйте его по сотруднику на нужную дату.
- 2Сверьте заработанные дни: посчитайте месяцы стажа вручную и умножьте на 2,33 (для 28-дневного отпуска).
- 3Проверьте использованные дни: откройте все документы отпусков сотрудника и убедитесь, что они проведены и вид отпуска указан верно.
- 4Проверьте ввод начальных остатков, если учёт начинался не с даты приёма сотрудника.
- 5Проверьте исключаемые периоды: отпуска без сохранения зарплаты свыше 14 дней, отпуска по уходу за ребёнком.
Почему остаток в отчёте не совпадает с ожиданиями
Самая частая причина расхождений — не введены начальные остатки при старте учёта. Программа честно считает с даты приёма, указанной в карточке, но если реальный стаж сотрудника начался раньше, чем заведена база, и исторические отпуска не введены, баланс искажается. Вторая по частоте причина — отпуск оформлен «не тем» документом или видом отпуска: например, дополнительный отпуск провели как основной, и остатки по двум видам одновременно завышены и занижены.
Третья группа причин — стаж. Если сотруднику вручную изменили дату приёма или данные о стаже, заработанные дни пересчитаются. Также влияют длительные отсутствия: отпуск по уходу за ребёнком на несколько лет полностью останавливает накопление, и пользователи нередко принимают это за сбой.
Наконец, остаток зависит от даты, на которую он рассчитан. Отчёт на сегодня и на конец месяца даст разные значения, потому что программа учитывает дни, которые будут заработаны до указанной даты. Сравнивать остатки с прошлым периодом нужно строго «дата в дату».
Как ввести и скорректировать начальные остатки
Если учёт в программе начат позже даты приёма сотрудников, остатки отпусков на дату старта вводятся специальным механизмом. В типовой ЗУП для этого используется документ начальных остатков (доступен из карточки сотрудника или через настройку начала учёта), где указывается остаток по каждому виду отпуска на дату ввода и, при необходимости, дата, по которую стаж уже учтён.
Практическое правило: вводите остаток именно на дату начала ведения учёта в программе, а не «по состоянию на сегодня». Иначе дни, заработанные между датой старта и сегодняшним днём, посчитаются дважды — один раз вручную, второй раз автоматически. После ввода сформируйте отчёт «Остатки отпусков» на дату ввода и сверьте с бумажными данными.
Если ошибка обнаружена позже, исправляйте её тем же документом ввода остатков, а не «ручными» операциями по регистрам. Прямая правка регистров ломает связность учёта: отчёт покажет исправленную цифру, но при следующем пересчёте стажа расхождение может вернуться.
Особые ситуации: увольнение, перевод, дополнительные отпуска
Компенсация при увольнении
При проведении документа «Увольнение» программа автоматически рассчитывает остаток отпуска на дату увольнения и предлагает компенсацию за неиспользованные дни либо удержание за использованные авансом. Сумма считается от среднего заработка, а количество дней — по той же модели «заработано минус использовано». Если остаток отрицательный (сотрудник отгулял больше, чем заработал), программа покажет удержание.
Кадровый перевод
При переводе внутри организации стаж и остатки сохраняются — рабочий год не прерывается. Но если переводом меняется набор положенных отпусков (например, сотрудник переведён на должность с дополнительным отпуском за вредность), право на новый вид отпуска начинает накапливаться с даты перевода, а не задним числом.
Дополнительные отпуска за вредность
Для дополнительного отпуска за вредные условия труда стаж считается иначе: в него включается только время, фактически отработанное во вредных условиях. Программа учитывает это через специальные настройки должности и стажа, поэтому остаток по «вредному» отпуску может расти медленнее, чем по основному, — это соответствует законодательству, а не является ошибкой.
Как проверить результат
Равен нулю по всем видам отпусков
Есть ненулевой остаток без документа ввода начальных остатков
Около 2,33 дня при 28-дневном отпуске
Прирост отсутствует или заметно больше/меньше без видимой причины
Уменьшился ровно на количество дней документа
Не изменился (документ не проведён или другой вид отпуска)
Не растёт за период декрета
Продолжает накапливаться — проверьте вид отсутствия и настройки стажа
Отчёты и инструменты контроля
Основной инструмент — отчёт «Остатки отпусков», который можно сформировать по списку сотрудников на любую дату с расшифровкой по видам отпусков. Для детального анализа полезен отчёт «Справка об остатках отпусков» из карточки сотрудника: он показывает расчёт по рабочим годам — сколько заработано и использовано в каждом году. Именно эта разбивка позволяет увидеть, в каком рабочем году возникла проблема.
Для технической диагностики используйте универсальный отчёт по регистрам накопления «Заработанные права на отпуска» и «Фактические отпуска» с отбором по сотруднику. Здесь видны регистраторы — конкретные документы, сформировавшие каждую запись. Любую «лишнюю» или «недостающую» цифру можно отследить до первичного документа и исправить именно его.
Регулярная сверка остатков перед планированием графика отпусков и перед расчётом компенсаций при увольнении предотвращает споры с сотрудниками и ошибки в выплатах. Практичный ритм — сверка по всем увольняемым в момент расчёта и выборочная сверка по подразделениям раз в квартал.
Что важно запомнить
Остаток отпуска в 1С — это разница между днями, заработанными по стажу, и днями из проведённых документов отпусков. Любое расхождение ищите в трёх местах: начальные остатки, исключаемые из стажа периоды, корректность документов. Исправляйте первичные документы, а не регистры напрямую.
Частые вопросы
Почему 1С показывает дробное число дней остатка, например 16,33?
Остаток накапливается пропорционально стажу: 28 дней делятся на 12 месяцев, что даёт примерно 2,33 дня за месяц. Промежуточный остаток на произвольную дату почти всегда дробный — это нормально. При предоставлении отпуска или расчёте компенсации применяются правила округления, принятые в организации и в настройках программы; законодательно единый порядок округления не установлен.
Остаток отпуска отрицательный — это ошибка?
Не обязательно. Отрицательный остаток означает, что сотрудник использовал больше дней, чем успел заработать, — отпуск был предоставлен авансом. Это типично для сотрудников с небольшим стажем. Но если отрицательный остаток появился у давно работающего сотрудника, проверьте, не задвоены ли документы отпусков.
Почему после отпуска за свой счёт остаток основного отпуска уменьшился?
Отпуск без сохранения оплаты свыше 14 календарных дней в рабочем году исключается из отпускного стажа. Программа сдвигает окончание рабочего года, и заработанные дни пересчитываются. Это соответствует Трудовому кодексу; если сдвиг кажется неверным, проверьте продолжительность отсутствий и дату приёма.
Как проверить остатки сразу по всем сотрудникам?
Сформируйте отчёт «Остатки отпусков» без отбора по сотруднику на одну дату и выгрузите в таблицу. Подозрительные позиции — резко отрицательные значения, нулевые остатки у давно работающих сотрудников, одинаковые остатки у всех. По каждой такой строке делайте расшифровку до рабочих годов и документов.
Переносится ли остаток при переходе на новую версию 1С:ЗУП?
Остатки не хранятся отдельно — они вычисляются из регистров, поэтому при обновлении версии внутри одной базы ничего переносить не нужно. При переходе между программами (например, из ЗУП 2.5 в ЗУП 3.1) используется штатный механизм переноса данных, после которого обязательно сверьте остатки по выборке сотрудников с отчётами в старой программе.
Что делать, если остаток не совпадает с данными из личной карточки Т-2?
Карточка Т-2 и регистры программы — независимые источники. Определите, какой из них ведётся корректно: обычно достовернее расчёт по рабочим годам из справки об остатках, если начальные данные введены верно. Расхождение устраняйте исправлением первичных документов или ввода остатков, а затем приведите в соответствие второй источник.