В работе бухгалтера и кадровика часто возникают ситуации, когда программные механизмы «1С:Зарплата и управление персоналом» (ЗУП) дают сбой в самый ответственный момент — при подготовке отчетности. Одной из наиболее резонансных проблем конца 2022 и начала 2023 года стала невозможность автоматического заполнения мероприятий по кадровому переводу в форме СЗВ-ТД. Несмотря на то, что документ Кадровый перевод проведен и в нем установлена соответствующая галочка Отразить в трудовой книжке, отчет остается пустым или содержит только старые данные.
В рамках данной статьи мы подробно разберем причины возникновения этой технической коллизии, проанализируем внутренние механизмы программы и предложим несколько вариантов решения: от простой установки патча до внесения правок в программный код общего модуля.
Прежде всего, нам необходимо понять, имеем ли мы дело с пользовательской ошибкой или с системным багом. Для конфигураций «1С:ЗУП 3» и «1С:ЗГУ 3» (версии 3.1.23.165, 3.1.24.25 и смежные) официально зарегистрирована ошибка под номером 60003622. Суть проблемы заключается в том, что при использовании механизма Подбор или автоматического заполнения по кнопке Заполнить в документе СЗВ-ТД алгоритм программы некорректно обрабатывает структуру параметров, необходимых для выборки данных из регистров.
Ситуация осложнялась тем, что проблема проявлялась даже в тех случаях, когда пользователь пытался использовать вспомогательный документ Регистрация трудовой деятельности. Программа просто «не видела» новые записи в регистре сведений Мероприятия трудовой деятельности из-за неинициализированных переменных в коде общего модуля.
Рассмотрим способ, который помог большинству технических специалистов решить проблему «здесь и сейчас». Для этого нам потребуется внести небольшие изменения в программный код в режиме Конфигуратор. Помните, что перед внесением изменений необходимо создать резервную копию базы данных.
Проанализируем функцию, отвечающую за сбор данных. Нам необходим общий модуль ЭлектронныеТрудовыеКнижки. В нем расположена функция ДанныеТрудовойДеятельностиСотрудников, которая подготавливает сведения для формирования отчета.
Для исправления ошибки выполним следующие действия:
ЭлектронныеТрудовыеКнижки.ДанныеТрудовойДеятельностиСотрудников.Добавим следующий фрагмент кода:
Если Не ЗначениеЗаполнено(ПараметрыЗаполнения) Тогда
ПараметрыЗаполнения = Новый Структура;
ПараметрыЗаполнения.Вставить("ДляПоДневногоОтчета", Ложь);
ПараметрыЗаполнения.Вставить("ДатаЗаполнения", ТекущаяДата()); // Или ОкончаниеПериода, в зависимости от контекста
КонецЕсли;
Разберем, что именно делает этот код. Он проверяет, была ли инициализирована переменная ПараметрыЗаполнения. Если она пустая (что и происходит при ошибке), программа принудительно создает новую структуру и вставляет в нее обязательные ключи ДляПоДневногоОтчета и ДатаЗаполнения. Без этих ключей последующие запросы к базе данных отрабатывают некорректно, возвращая пустой результат.
Если ваша конфигурация находится на поддержке и вы не хотите снимать «замочек» для изменения кода вручную, правильным решением будет использование механизма исправлений (патчей). Компания «1С» оперативно выпустила исправление под кодом EF_60003622.
Для установки патча выполним следующие шаги:
Важный момент: Если вы уже обновились до более свежего релиза (например, выше 3.1.24.25), проверьте, не включено ли это исправление в состав основной конфигурации. Иногда старые патчи могут конфликтовать с новыми релизами, поэтому всегда следите за актуальностью списка установленных исправлений.
Иногда даже после исправления кода мероприятие может не попадать в отчет. Рассмотрим дополнительные причины, которые стоит проанализировать:
1. Код по ОКЗ (Общероссийский классификатор занятий).
С 2021 года указание кода ОКЗ в СЗВ-ТД является обязательным. Если в документе Кадровый перевод на закладке Главное не заполнен код по ОКЗ (или он не подтянулся из штатного расписания), программа может автоматически исключать такую строку из заполнения отчета. Проверьте заполнение поля Трудовая функция и связанного с ней кода ОКЗ.
2. Наличие «зависших» документов.
Выясним причину, почему мероприятие считается «занятым». В 1С реализован механизм, предотвращающий дублирование одних и тех же событий в разных отчетах. Если вы ранее создавали черновик СЗВ-ТД, в который попал этот перевод, а затем просто закрыли его или пометили на удаление (но не удалили окончательно), мероприятие будет числиться за тем документом. Проанализируйте список всех документов СЗВ-ТД и ЕФС-1 за текущий период.
3. Использование документа «Регистрация трудовой деятельности».
Если типовой документ перевода упорно не хочет попадать в отчет, попробуем «ручной» метод:
Кадровый перевод и проведем его.Регистрация трудовой деятельности.Проанализируем ситуацию глобально. Ошибки заполнения СЗВ-ТД в конце 2022 года часто были связаны с тем, что разработчики готовили систему к переходу на новый формат отчетности — ЕФС-1. В программном коде менялись универсальные механизмы сбора данных, которые должны были поддерживать и старые, и новые формы. Именно это разделение логики («старый отчет — новый алгоритм») привело к возникновению ошибки 60003622.
Если вы сталкиваетесь с подобной проблемой при формировании отчетов за периоды до 2023 года, убедитесь, что дата формирования отчета и дата самого кадрового мероприятия корректно соотносятся с учетной политикой организации. В некоторых случаях помогает временное изменение даты компьютера на 31.12.2022 для формирования старой отчетности, хотя это является крайней мерой и не рекомендуется при наличии возможности установить патч.
Мы рассмотрели основные способы решения проблемы с незаполнением кадровых переводов в СЗВ-ТД. Подведем итог: наиболее эффективным и безопасным методом является установка официального исправления EF_60003622 через интерфейс программы. Если же вы обладаете навыками программирования и база находится в файловом варианте без доступа к интернет-поддержке, внесение правок в общий модуль ЭлектронныеТрудовыеКнижки позволит оперативно сдать отчетность.
Не забывайте также проверять чистоту данных в регистрах и обязательное заполнение кодов ОКЗ, так как без них отчет не пройдет проверку в контролирующих органах, даже если он успешно заполнится в программе.