Остатки отпусков в 1С не сходятся: где искать ошибку и как всё исправить
Бывали случаи на моей практике, когда сотрудник рассчитывал, что у него есть 14 дней отпуска, но кадровик открывал программу и видел совсем другие цифры. А работник тем временем уже выбрал отель и все распланировал.
И здесь кадровики обычно тяжело вздыхают, ведь придется объяснять сотруднику, почему у него “накопилось” 3,67 дня, вместо двухнедельного периода.
Я видел это десятки раз. И почти всегда проблема не в отпуске. Проблема в прошлом. В мелких решениях, которые тогда казались безобидными: “потом поправим”, “да поставь пятидневку, позже разберемся”, “ну пусть будет 1-е число, так проще”.
Поговорим, почему остатки расходятся и как их привести в порядок так, чтобы потом они не развалились снова.
Для начала: “не сходится” с чем именно?
Перед тем как чинить, я задаю себе один простой вопрос: с чем вы сравниваете остаток?
Вариант 1. “По ощущениям должно быть 28”
Логика понятная: год отработал значит 28 дней.
Но если были перерывы, совместительство, неполное время, сменные графики, переносы, увольнение и повторный прием, “год” перестает быть ровным годом.
Вариант 2. “У нас в Excel другое”
Excel это как семейный альбом: все ведут по-разному, но все уверены, что именно у них правда.
И если Excel и 1С расходятся, сначала надо понять, кто из них ошибся, а не сразу обвинять базу.
Вариант 3. “В одном отчете 12, в другом 9”
Вот это уже красный флаг. Значит, вы смотрите на разные механики или разные точки отсчета.
Причина №1. Сотрудника приняли “на скорую руку”, а потом забыли
Самая частая история. И самая коварная, потому что первые месяцы все выглядит нормально.
Кейс из жизни:
Человек реально вышел 15 марта. В 1С его приняли 1 марта, потому что “так в приказе” или “так удобнее”. Прошло 8 месяцев, сотрудник накопил лишние дни. Руководитель уже пообещал отпуск. И вот вы сидите с выбором: либо отдаете лишнее, либо объясняете, почему “система отняла то, что было”.
Что обычно ломает картину:
дата приема поставлена “красивая”, а не фактическая
перепутали организацию (особенно если их несколько)
занятость оформили как совместительство вместо основного (или наоборот)
И да, это не мелочь. Это как начать фильм не с первой серии, а с третьей, а потом удивляться, что сюжет странный.
Причина №2. Дубли сотрудников: отпуск копится у одного, а гуляет другой
Это штука из разряда “не видно, пока не стукнет”.
Симптомы знакомые:
в базе два одинаковых Иванова И.И.
в списке выбора он то есть, то его нет
остатки где-то копятся, но в документе отпуска будто исчезают
Один раз мы разбирали базу на 120 человек и нашли 9 дублей. Девять.
И это не потому что люди хитрили. Просто в какой-то момент кого-то завели “для доступа”, а потом еще раз “для кадров”. А дальше отпуск жил своей жизнью на одной карточке, а документы оформляли на другой.
Важно: если есть дубль, бесполезно “подкрутить остаток”. Это как подкрашивать стену, когда у вас течет крыша. Через месяц опять будет пятно, только больше.
Причина №3. График работы стоит “на отстань” и мстит потом
График это, по сути, линейка, которой измеряют рабочие дни, периоды, списание.
Если линейка кривая, измерения будут “примерно”.
Кейс, который я помню слишком хорошо:
Сотрудник работал 2/2, но в базе ему поставили пятидневку, потому что так быстрее оформить. Он взял отпуск на 14 календарных дней, а списание получилось не так, как ожидали. И тут начинается веселое:
сотрудник уверен, что его обманули
руководителю нравится, что “меньше гуляет”
вы пытаетесь объяснить, что вообще-то это не экономия, а ошибка учета
Если график неверный, остатки могут выглядеть “логично” в цифрах, но быть абсолютно нелепыми по факту.
Причина №4. Компания “вчера” жила в Excel, “сегодня” в 1С, а мост не построили
Переходный период это всегда зона турбулентности.
Типичный сценарий:
пару лет отпуска считали в таблице
решили вести в 1С
ввели стартовые остатки “примерно”
начали оформлять отпуска
через полгода все разъехалось, потому что “примерно” копится тоже очень старательно
Кейс:
Внесли сотруднику стартовый остаток 14 дней вместо 9,33. Почему 14? “Мы округляем, чтобы людям приятно”. Через год стало неприятно, потому что лишние дни превратились в спор: отдавать ли их как обещание или выравнивать по правилам.
Причина №5. Исправления задним числом: эффект домино
1С хорошо живет, когда события идут по времени.
А когда начинают “вчера перепровели два года, потому что надо было”, база иногда реагирует как организм на резкую диету: формально все еще работает, но настроение так себе.
У меня был проект, где остатки стали плясать именно после массового перепроведения за 2 года. Мы не “чиняли отпуск”. Мы восстанавливали историю: кто когда принят, когда менялся график, когда были отпуска, где появилось заднее число.
Как привести остатки в порядок: план, который реально работает
Не магия. Скорее уборка в шкафу: сначала достаешь все, потом раскладываешь.
1) Не хватайтесь за всех сразу
Берите 10-15 “самых шумных” случаев:
у кого отпуск скоро
у кого остаток очевидно странный (0 при стаже 2 года или 40 при стаже 1 год)
у кого были переводы, смена графика, увольнение и повторный прием
Так вы быстрее поймете корень проблемы, а не утонете в массе.
2) По каждому человеку соберите “скелет истории”
Мне хватает простого набора:
дата приема (фактическая)
был ли перерыв
какие графики и с каких дат
какие отпуска были: даты и сколько дней списывали
Это как собрать маршрут поездки: пока не видишь, где свернули не туда, бесполезно спорить, почему приехали не к морю.
3) Проверьте дубли
Да, скучно.
Да, обязательно.
Если у человека две карточки сотрудника, сначала решается это. Потом все остальное.
4) Проверьте график именно на периоды отпусков
Не “сейчас график правильный, значит все ок”.
А “какой график был на дату отпуска”.
Вот тут часто и прячется причина “почему списало 10 вместо 14”.
5) Уточните правила подсчета и округления
Вот откуда берутся эти “2,33” и “11,67”.
Если отпуск 28 дней в год, то в среднем в месяц это 28 / 12 = 2,3333…
И дальше вопрос не в математике, а в том, как вы договорились жить:
храните дроби
округляете
округляете всегда в одну сторону (что со временем наращивает ошибку)
Я видел ситуации, где округление каждый месяц “в меньшую сторону” давало минус почти 4 дня за год. Люди думали, что их обокрали. А это была просто “удобная привычка”.
6) Исправляйте причину, а не конечную цифру
Самый популярный “быстрый фикс”: поставить остаток “как надо”.
Иногда это допустимо как временная заплатка. Но если причина не устранена, заплатка слетит.
Если проблема в дате приема, чинится дата и последствия.
Если в дубле, решается дубль.
Если в графике, правится график.
7) Контрольная проверка на здравый смысл
Мне нравится простая оценка, которая ловит почти все явные перекосы:
28 дней в год это примерно 2,33 в месяц
за 6 месяцев около 14
за 12 месяцев около 28
Если стаж 6 месяцев, а остаток 3 дня, что-то не так.
Если стаж год, а остаток 40, тоже что-то не так.
Это не точный расчет, но отличный “сигнал тревоги”.
Быстрые подсказки по симптомам
Остаток 0 при долгом стаже
Часто: дубль сотрудника или отпуск копится “не на той карточке”.
Остаток слишком большой
Часто: неверная дата приема, завышенные стартовые остатки, округления.
В разных отчетах разные цифры
Часто: разные механики расчета или “перелопаченная” история задним числом.
Документ отпуска списывает “не те дни”
Часто: график или единица учета (календарные/рабочие) не совпадают с тем, как вы ожидаете.
И последнее, по-честному
Когда остатки отпусков не сходятся, очень хочется “просто поставить правильное число и забыть”.
Я понимаю. Правда.
Но если в базе осталась причина, вы через пару месяцев снова вернетесь сюда же. Только уже с другим сотрудником. И с тем же вздохом при открытии отчета.