При подготовке отчетности о трудовой деятельности (ранее — форма СЗВ-ТД, а с 2023 года — подраздел 1.1 раздела 1 единой формы ЕФС-1) пользователи программы 1С:Зарплата и управление персоналом 3.1 (1С:ЗУП) часто сталкиваются со странным поведением автозаполнения. В отчет могут неожиданно попадать исторические приемы и переводы за прошлые годы, по которым не было никаких изменений, или, наоборот, будущие кадровые события, которые произойдут только в следующем месяце.
В этой статье мы подробно разберем внутренние технические механизмы программы 1С:ЗУП 3.1, выясним причины такого поведения системы и рассмотрим практические способы решения этой проблемы как для кадровиков, так и для ИТ-специалистов.
Чтобы понять, почему программа автоматически добавляет те или иные строки в отчет, проанализируем внутреннюю логику платформы. Каждое кадровое событие (прием, перевод, увольнение, установление квалификации и т. д.), в котором установлен флаг «Отразить в трудовой книжке», регистрируется в специальном регистре сведений. При проведении такого документа ему присваивается скрытый уникальный идентификатор — UUID (уникальный идентификатор мероприятия).
Когда мы создаем документ СЗВ-ТД или ЕФС-1 и нажимаем кнопку «Заполнить», программа обращается к этим записям и проверяет:
UUID факт сдачи отчета).Если программа находит кадровое событие, по которому в системе нет подтверждения сдачи, она автоматически включает его в текущий отчет. Именно эта логика часто становится причиной недоразумений между кадровой службой и программой. Для выявления причин таких сбоев есть журнал изменений и восстановления состояния объектов.
Это самая распространенная причина появления «фантомных» строк за прошлые периоды. Рассмотрим типичную ситуацию:
В 2020 году сотрудник был принят на работу, отчет успешно отправлен и принят ПФР. Спустя некоторое время кадровик заходит в документ Прием на работу трехлетней давности, чтобы уточнить какую-то информацию, случайно нажимает кнопку «Провести и закрыть» или вносит незначительное изменение (например, меняет способ отражения в учете или исправляет опечатку в комментарии) — есть готовая массовая отмена изменений в документах 1С.
Для программы 1С перепроведение исторического документа означает сигнал к действию. В регистре сведений обновляется запись кадрового события, и старый UUID затирается либо помечается как измененный (поможет детальная история изменений и откат к версиям). Программа считает, что появилось «новое» событие, данные по которому еще не отправлялись в фонд, либо что старое событие нужно отменить и подать заново. В результате при заполнении текущего отчета за текущий месяц система автоматически вытягивает это старое мероприятие.
Часто организации ведут учет в 1С:ЗУП, но отправляют отчетность через сторонние программы (например, СБИС, Контур.Экстерн, Такском). В этом случае отчет СЗВ-ТД или ЕФС-1 формируется в 1С, выгружается в XML-файл и импортируется в сторонний сервис для отправки.
Если после успешного получения протокола сдачи в 1С:ЗУП не был установлен флаг «Документ принят в ПФР (с 2023 г. - СФР)», программа не считает эти мероприятия закрытыми. С технической точки зрения они висят в системе как «подготовленные к отправке». При создании любого нового отчета программа будет упорно пытаться «закрыть долги» и подтянуть эти старые записи.
Рассмотрим ситуацию, когда в отчете за август автоматически появляется прием на работу, который фактически начнется только 1 сентября. На первый взгляд это кажется ошибкой, но давайте проанализируем нормативную базу и логику работы программы.
По закону работодатель обязан отчитаться о приеме или увольнении сотрудника не позднее рабочего дня, следующего за днем издания соответствующего приказа (решения). Если приказ о приеме на работу с датой начала работы 01.09 был физически оформлен и проведен в базе 25 августа, программа обязана отправить эти сведения сразу после проведения документа. Дата формирования отчета (поле «Дата» в шапке документа ЕФС-1) определяет период сбора данных. Если вы формируете отчет в конце августа, программа видит проведенный приказ от 25 августа и включает его в отчет, чтобы не нарушить сроки сдачи.
Рассмотрим подробные практические шаги для исправления неверного заполнения отчетности.
Если старые мероприятия подтягиваются из-за того, что программа «не знает» об их успешной сдаче в прошлых периодах, выполним следующие действия:
Сведения о трудовой деятельности работников, СЗВ-ТД или ЕФС-1: Сведения о трудовой деятельности по проблемному сотруднику за предыдущие периоды.Если прошлых отчетов в базе 1С физически не существует (например, учет начали вести недавно, а прошлые периоды сдавали из другой программы), можно применить метод создания технического документа:
Сведения о трудовой деятельности.Для ручного исправления и корректировки переданных событий предназначен специальный инструмент:
Регистрация трудовой деятельности.Если вышеописанные способы не помогают и «фантомные» строки продолжают появляться, это свидетельствует о сбое в регистрах сведений. Выполним техническую очистку записей (для этого есть диагностика и удаление поврежденных записей регистров):
Мероприятия трудовой деятельности прочие.Мероприятия трудовой деятельности. Здесь хранятся основные данные для выгрузки. Некорректные UUID можно исправить, сопоставив их с UUID из отправленных XML-файлов.Для наглядности приведем пример структуры регистров сведений, отвечающих за формирование кадровых мероприятий:
// Пример структуры регистров сведений для учета мероприятий ЭТК:
РегистрСведений.МероприятияТрудовойДеятельности
- Сотрудник (Измерение)
- ИдентификаторМероприятия (UUID) (Реквизит)
- ВидМероприятия (Ресурс)
- Организация (Измерение)
РегистрСведений.МероприятияТрудовойДеятельностиОтредактированные
- ИдентификаторМероприятия (UUID)
- СостояниеОтраженияВУчете
После удаления зависших технических записей и приведения регистров в соответствие с фактическими данными перезаполним текущий отчет. Заполнение пройдет корректно и строго в соответствии с требованиями законодательства.