Переход с конфигурации Зарплата и Управление Персоналом 2.5 на версию 3.1 часто сопровождается сложностями, которые проявляются не сразу, а лишь спустя некоторое время при формировании справок об остатках отпусков или оформлении увольнений. Одной из самых «загадочных» проблем является внезапное изменение (скачок) количества дней отпуска у сотрудника, хотя по данным старой базы все перенесено корректно.
Разберем ситуацию на примере: на 1 января остаток перенесен правильно (например, 18.67 дня), но уже через несколько дней программа внезапно показывает 21 день или другое «абсурдное» число. Давайте вместе проанализируем причины этого явления и найдем правильный способ решения задачи.
Выясним, что именно изменилось в логике программы. Начиная с версии 3.1.7, компания 1С существенно переработала внутренний механизм учета прав на отпуск. В старой версии (2.5) расчет зачастую опирался на накопленные итоги. В новой же системе остаток рассчитывается «на лету» как разница между всеми правами, накопленными с даты приема, и всеми фактически использованными днями отпуска.
Проанализируем ситуацию: если данные перенесены документом Ввод начальных остатков отпусков, система воспринимает этот документ как «точку отсчета». Однако, если дата ввода остатков не совпадает с окончанием рабочего месяца сотрудника, программа может ошибочно «добирать» дни за текущий месяц, считая, что в перенесенной цифре они еще не учтены.
Рассмотрим подробнее, как рабочий год сотрудника влияет на расчет. В ЗУП 3.1 крайне важно, чтобы дата, на которую вводятся остатки, была синхронизирована с индивидуальным рабочим годом сотрудника.
Предположим, сотрудник принят на работу 17 февраля. Его рабочий месяц длится с 17-го числа текущего месяца по 16-е число следующего. Если мы делаем рекомендованный перенос данных на 1 января, возникает разрыв. Программа видит, что на 1 января у сотрудника есть остаток, но рабочий месяц (с 17 декабря по 16 января) еще не завершен. Как только наступает 17 января, система автоматически добавляет 2.33 дня за закрывшийся месяц. Если эти 2.33 дня уже были включены бухгалтером вручную в остаток на 1 января при переносе из 2.5, происходит задвоение прав.
Чтобы избежать подобных скачков, нам необходимо придерживаться строгой методики при заполнении документа Ввод начальных остатков отпусков. Посмотрим на алгоритм действий:
Ввод остатков крайне не рекомендуется указывать общую сумму дней одной строкой за все время работы. Необходимо детально расписать остатки по конкретным рабочим годам, за которые они накопились.Параметры периодов стажа для отпусков. Если при переносе в него попали некорректные данные о прогулах или отпусках за свой счет, рабочий год сотрудника может «сдвинуться», что мгновенно изменит расчет в отчете.Если вы столкнулись с уникальным случаем, когда у одного сотрудника расчет неверен, а у остальных все в порядке, проанализируем записи регистра. Часто причиной становится некорректная запись в регистре Данные о правах на отпуск.
Посмотрим, как система вычисляет остаток программно (упрощенно):
// Логика расчета остатка в ЗУП 3.1
Остаток = ПравоНаОтпускСДатыПриема(Сотрудник, ДатаРасчета)
- ИспользованоОтпуска(Сотрудник, ДатаРасчета);
Если в документе Ввод начальных остатков указана дата, не кратная рабочему месяцу, функция ПравоНаОтпускСДатыПриема может вернуть избыточное значение, так как она всегда пытается «досчитать» положенные дни за неоконченный период от даты ввода остатков до текущей даты.
Рассмотрим, что делать, если перенос уже выполнен и обнаружены ошибки:
Ввод начальных остатков отпусков для «проблемных» сотрудников, приведя её к концу их рабочего месяца (дата приема минус 1 день).Корректировка остатков отпусков. В нем нужно вручную выровнять количество дней так, чтобы на текущую дату справка об остатках выдавала верное значение.Выясним причину «избирательности» ошибки. Проблема проявляется наиболее остро у тех сотрудников, у которых:
Подводя итог, можно сказать, что переход с 2.5 на 3.1 требует от кадровика и расчетчика особого внимания к датам рабочих лет. Автоматический перенос не всегда учитывает тонкости индивидуального графика сотрудника, поэтому ручная проверка и корректировка документов ввода остатков по принципу «кратности рабочему месяцу» является наиболее надежным способом достижения корректного учета.