При оформлении выхода сотрудницы из отпуска по уходу за ребенком пользователи типовых расчетных конфигураций (например, 1С:Зарплата и Управление Персоналом 2.5 или аналогичных решениях с классической подсистемой кадрово-расчетного учета) нередко сталкиваются с ситуацией, когда документ Табель учета рабочего времени упорно продолжает заполняться кодом неявки ОЖ (отпуск по уходу за ребенком) вместо явки Я. При этом документ возврата на работу проведен, а начисления могут рассчитываться вполне корректно. Разберем детально, как устроен механизм автозаполнения табеля, выясним основные причины возникновения этой ошибки и рассмотрим способы ее полного устранения.
Проанализируем архитектуру хранения сведений об отпусках по уходу за ребенком. Алгоритм автоматического заполнения табеля опрашивает не только регистр сведений СостояниеРаботниковОрганизаций, но и регистр ПлановыеНачисленияРаботниковОрганизаций, а также регистры расчета. Наличие любого незакрытого начисления или лишнего кадрового документа блокирует регистрацию явок в табеле.
Разберем случай, с которым непосредственно столкнулся автор темы. Бывает так, что для назначения новых надбавок или окладов при выходе сотрудника регистрируется вспомогательный документ, например, Сведения о плановых начислениях сотрудников организации или документ ввода плановых начислений. Если в нем неверно указаны параметры или действие начислений, программа дублирует или искажает интервалы плановых видов расчета.
В типовом запросе заполнения табеля анализируются плановые начисления по виду расчета ОтпускПоУходуЗаРебенкомБезОплаты. Посмотрим на фрагмент логики, применяемой при выборке данных:
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПлановыеНачисленияРаботниковОрганизаций КАК ОкончаниеПлановыхНачислений
ПО (ОкончаниеПлановыхНачислений.Период <= &КонецМесяца)
И (ОкончаниеПлановыхНачислений.Сотрудник = СотрудникиОрганизаций.Ссылка)
И (ОкончаниеПлановыхНачислений.ВидРасчетаИзмерение = ЗНАЧЕНИЕ(ПланВидовРасчета.ОсновныеНачисленияОрганизаций.ОтпускПоУходуЗаРебенкомБезОплаты))
И (ОкончаниеПлановыхНачислений.Действие = ЗНАЧЕНИЕ(Перечисление.ВидыДействияСНачислением.Прекратить))
И (ОкончаниеПлановыхНачислений.Период МЕЖДУ ПлановыеНачисления.Период И ПлановыеНачисления.ПериодЗавершения)
Если условие прекращения не выполняется (например, из-за конфликтующих записей ручного документа начислений), система считает сотрудника продолжающим находиться в отпуске по уходу и выводит код ОЖ.
Порядок действий для устранения:
ПлановыеНачисленияРаботниковОрганизаций с отбором по проблемному сотруднику.Сведения о плановых начислениях сотрудников организации, создающий лишнюю запись по начислениям отпуска, снимем его с проведения либо очистим некорректные строки.Рассмотрим типичную методическую ошибку пользователей. При досрочном прекращении отпуска по уходу за ребенком часто оформляют кадровый документ Возврат на работу в организацию. Однако этот документ лишь меняет состояние в кадровом учете на Работает, но не закрывает начисление Отпуск по уходу за ребенком без оплаты в регистре плановых начислений.
Чтобы корректно закрыть расчетный отпуск и вернуть сотруднику плановые начисления, выполним следующие шаги:
Расчет зарплаты по организациям → Неявки → Отпуска по уходу за ребенком.Изменение условий оплаты отпуска по уходу за ребенком на основании исходного документа Отпуск по уходу за ребенком.Прекратить.Табель учета рабочего времени.Выясним еще одну скрытую причину. При первичном уходе в отпуск программа назначает два вида расчета:
Если при возврате прекратить только пособие до 1.5 лет (или если ребенку исполнилось 1.5 года), неоплачиваемый отпуск остается активным. Именно он является вытесняющим видом времени для явки и проставляет буквенный код ОЖ. Убедимся, что в регистре сведений ПлановыеНачисленияРаботниковОрганизаций для начисления Отпуск по уходу за ребенком без оплаты зафиксирована запись с действием Прекратить датой выхода.
Проанализируем приоритеты документов подсистемы учета времени. Документ Табель учета рабочего времени фиксирует фактически введенные данные и имеет приоритет при начислении зарплаты. Если за расчетный месяц ранее уже был создан и записан табель (например, черновик или автоматически сохраненная версия с неявками), повторное открытие или автоматический расчет зарплаты может использовать старые значения.
Также проверим наличие документов Ввод индивидуальных графиков работы. Если на расчетный месяц сотруднику был назначен индивидуальный график с кодами отклонений, табель заполнится строго по этому графику, игнорируя новые кадровые документы.
Порядок действий:
Табель учета рабочего времени за текущий месяц и проверим, нет ли уже проведенных документов по данному подразделению или сотруднику. Если есть — перезаполним их или удалим.Ввод индивидуальных графиков работы. При наличии индивидуального графика перезаполним его с учетом даты фактического выхода сотрудника.Посмотрим на регистр расчета Основные начисления работников организаций. Если до возврата на работу расчетчик вводил расчетные неявки с перекрытием периода или делал расчет зарплаты наперед, в регистре расчета мог зафиксироваться фактический период действия с кодом ОЖ. Вытеснение по фактическому периоду действия передается в алгоритм автозаполнения табеля.
Проверим регистр расчета с помощью консоли запросов или универсального отчета. Убедимся, что по начислениям отпуска по уходу за ребенком ресурс ПериодДействияКонец не выходит за рамки даты, предшествующей дню выхода на работу.
Если после выполнения всех инструкций табель все еще заполняется кодом ОЖ, выполним регламентные процедуры платформы:
СостояниеРаботниковОрганизаций: на дату выхода должна присутствовать запись с состоянием Работает, без разрывов и наложений дат окончания предыдущего периода./ClearCache или вручную удалим папки временных файлов в %LOCALAPPDATA%\1C\1cv8 и %APPDATA%\1C\1cv8.Тестирование и исправление информационной базы с установленными флагами Пересчет итогов и Реструктуризация таблиц информационной базы для актуализации таблиц фактических периодов действия регистров расчета.