При переходе с программы «1С:Зарплата и управление персоналом 2.5» на редакцию 3.1 пользователи часто сталкиваются с ситуацией, когда при вводе документа Больничный лист на период, в котором сотрудник уже находился в отпуске, программа не выдает предупреждение и спокойно проводит документ. Разберем причинно-следственную связь такого поведения системы и рассмотрим практические варианты устранения этой проблемы.
Проанализируем техническую сторону работы программы. В 1С:ЗУП 3.1 штатный механизм контроля пересечения периодов неявок, вытеснения и автоматического сторнирования рассчитывает на наличие объекта-документа Отпуск. Настройка приоритетов начислений на вкладке Приоритет определяет, какие виды расчета вытесняют друг друга, однако алгоритм проведения требует наличия конкретного документа-регистратора.
Если переход на 1С:ЗУП 3.1 выполнялся путем так называемого «полного» (нерекомендуемого) переноса данных, кадровая история, неотгулянные отпуска и прошлые неявки фиксируются напрямую в регистрах сведений и регистрах расчета с помощью служебных документов Перенос данных. По этой причине в базе данных отсутствует объект Отпуск, который программа могла бы сторнировать или предложить изменить. Система воспринимает записи документа Перенос данных как подтвержденный исторический факт и проводит больничный без блокировки.
Рассмотрим варианты решения задачи в зависимости от объема данных и бизнес-процессов организации.
Если пересечение периодов произошло в перенесенном периоде и необходимо скорректировать учетные данные, выполним следующие шаги:
Перенос данных, которым был зарегистрирован отпуск сотрудника в старой базе.Перенос данных.Больничный лист.Если период учета еще не закрыт для редактирования, разберем порядок действий с вводом оригинального документа:
Отпуск за прошлый период с реальными датами, перенесенными из 1С:ЗУП 2.5.Больничный лист. В этом случае алгоритм вытеснения определит созданный документ Отпуск и автоматически произведет перерасчет или сторнирование пересекающихся дней.Чтобы избежать ошибок из-за человеческого фактора и визуально выявить накладки периодов без открывания каждого документа, воспользуемся стандартными отчетами системы:
Анализ неявок или Табель учета рабочего времени позволяет визуально отслеживать двойные регистрации отклонений на одну и ту же дату.Универсальный отчет по регистру сведений Состояния сотрудников. Сгруппировав данные по сотруднику и периоду, проанализируем пересекающиеся записи с состояниями Отпуск и Болезнь.Для автоматизации контроля на больших массивах сотрудников проанализируем возможность доработки системы без изменения типовой конфигурации. С помощью расширения создадим подписку на событие Обработка проведения для документа Больничный лист. Расширение выполнит запрос к регистру сведений Состояния сотрудников или Занятость сотрудников. В случае обнаружения пересечения дат система выдаст предупреждение пользователю или заблокирует проведение документа до принятия решения оператором.