Как исправить двойную отмену кадрового мероприятия в отчетах СЗВ-ТД и ЕФС-1 в 1С:ЗУП 3.1?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом Бухгалтерский учет IT и автоматизация бизнеса
← На главную

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

В этой статье мы подробно разберем, почему возникает этот сбой, изучим его внутреннюю архитектуру на уровне регистров 1С и рассмотрим четыре надежных способа устранения фантомных отменяющих записей.


Техническая суть проблемы: почему программа двоит отмену?

Давайте заглянем под капот механизмов учета электронных трудовых книжек (ЭТК) в 1С:ЗУП 3.1. Вся работа с кадровыми мероприятиями строится на взаимодействии двух ключевых регистров сведений:

  1. РегистрСведений.МероприятияТрудовойДеятельности — в нем хранятся актуальные, действующие записи кадровых событий, подготовленные к отправке или уже принятые фондом.
  2. РегистрСведений.МероприятияТрудовойДеятельностиПрочие — этот вспомогательный регистр фиксирует истории изменений. Именно сюда программа записывает информацию об отменяемых версиях кадровых событий. Каждому событию присваивается уникальный UUID (уникальный идентификатор GUID).

Проблема «двойной отмены» (зарегистрированная в базе ошибок фирмы 1С под номером 000097141) возникает из-за несовершенства алгоритмов проведения корректировок. Когда мы заходим в документ Регистрация трудовой деятельности (РТД) или меняем первичный кадровый документ (например, изменяем номер или дату приказа), система пытается автоматически зарегистрировать отмену старого UUID. Из-за программного сбоя запись об отмене в регистр МероприятияТрудовойДеятельностиПрочие может записаться дважды — например, при последовательном редактировании и повторном перепроведении документов в разные дни. При автозаполнении нового отчета программа считывает обе записи из регистра и выводит в табличную часть две идентичные строки отмены.


Способ 1. Ручное перезаполнение мероприятий в карточке сотрудника (Официальный способ обхода)

Проанализируем самый простой и быстрый метод, который не требует программирования или непосредственного изменения записей базы данных. Этот способ официально рекомендован разработчиками 1С для обхода зарегистрированной ошибки.

Выполним следующие шаги:

  1. Откроем отчет СЗВ-ТД или подраздел 1.1 формы ЕФС-1, в котором зафиксировано дублирование строк отмены.
  2. Дважды кликнем левой кнопкой мыши по строке с проблемным сотрудником, чтобы открыть форму сведений о его мероприятиях.
  3. В открывшемся окне найдем и нажмем кнопку «Перезаполнить» (или выберем аналогичный пункт в меню «Еще» табличной части мероприятий сотрудника).
  4. Программа заново проанализирует данные регистров по конкретному физическому лицу, сопоставит UUID и корректно схлопнет дублирующиеся отменяющие записи, оставив только одну строку отмены.
  5. Нажмем кнопку «ОК» и проведем документ. Лишняя отмена уйдет.

Способ 2. Очистка дублирующихся записей в регистре сведений напрямую

Если автоматическое перезаполнение не помогает, а ошибочная отмена продолжает настойчиво всплывать в новых отчетах, нам необходимо устранить первопричину — удалить лишнюю запись непосредственно из регистра сведений.

Рассмотрим по шагам, как очистить регистр:

  1. Перейдем в верхнее правое меню «Сервис и настройки» (значок шестеренки или три полоски в зависимости от версии платформы), далее выберем пункт «Функции для технического специалиста». Если этот пункт меню не отображается, его необходимо предварительно включить в меню «Настройки» — «Параметры» (установив галочку «Режим технического специалиста»).
  2. В строке поиска открывшегося окна введем название регистра: Мероприятия трудовой деятельности прочие и откроем его. Также можно выполнить быстрый переход, нажав комбинацию клавиш Shift + F11, вставив в появившееся поле ссылку и нажав Перейти: e1cib/list/РегистрСведений.МероприятияТрудовойДеятельностиПрочие
  3. В открывшемся списке установим отбор по нашему проблемному сотруднику.
  4. Проанализируем записи: мы увидим две одинаковые или очень похожие строки с признаком отмены. Нажмем кнопку «Еще» -> «Разблокировать форму» (или «Разблокировать объект»), чтобы получить права на редактирование.
  5. Выделим дублирующую лишнюю запись и удалим её с помощью клавиши Delete либо снимем в ее карточке флажок «Отменено» и запишем изменения.
  6. Вернемся в наш отчет ЕФС-1/СЗВ-ТД и перезаполним его. Программа обратится к очищенному регистру и выведет корректные данные.

Способ 3. Создание «технического» документа для фиксации отмены

Выясним, как решить проблему, если вы опасаетесь напрямую редактировать записи регистров сведений в базе данных. В этом случае мы можем применить обходной прием с созданием фиктивного документа.

  1. Создадим новый документ СЗВ-ТД (или ЕФС-1) текущей датой.
  2. Заполним его по сотруднику, у которого двоится отмена. В документ попадут обе отменяющие строки.
  3. Удалим одну из отменяющих строк вручную непосредственно из табличной части документа, оставив только одну корректную отмену.
  4. Установим внизу документа флажок «Документ принят в ПФР (не редактируется)» (в современных ЕФС-1 — статус «Сдан» или «Принят»). Проведем документ.
  5. Важно: этот документ не нужно отправлять в контролирующий орган. Он создается исключительно для того, чтобы зафиксировать в регистрах 1С факт успешной сдачи отмены. Для системы эта запись будет считаться закрытой, и при формировании следующих реальных отчетов фантомные отмены больше вас не побеспокоят.

Способ 4. Выравнивание UUID через отладчик и форму документа

Иногда корень проблемы кроется глубже: идентификаторы кадровых мероприятий (UUID) оказываются полностью утеряны или рассинхронизированы при многочисленных ручных корректировках документов. В этом случае отменяемый идентификатор в новом отчете не совпадает с тем идентификатором, который изначально ушел в ПФР/СФР.

Посмотрим на пример, как можно отредактировать UUID в документе Регистрация трудовой деятельности (РТД) или кадровом документе прямо в режиме предприятия.

Сначала выведем UUID на форму, чтобы визуально контролировать процесс:

  1. В отчете СЗВ-ТД / ЕФС-1 провалимся в карточку мероприятий сотрудника двойным кликом.
  2. В верхнем меню нажмем «Еще» -> «Изменить форму».
  3. В открывшемся дереве элементов найдем группу «Мероприятия» и отметим галочкой реквизит «Идентификатор» (или UUID). Нажмем «Применить». Теперь мы видим буквенно-цифровые коды событий.

Если нам требуется программно подменить утерянный UUID на тот, который ранее был отправлен в фонд (его можно посмотреть в отправленных ранее XML-файлах), воспользуемся возможностями отладчика:

  1. Запустим конфигуратор 1С, подключимся к сеансу под отладкой и установим точку останова в модуле формы или в модуле менеджера объекта в момент записи или проведения документа РТД.
  2. В режиме предприятия инициируем запись документа.
  3. При остановке в точке отладки откроем окно «Табло» или «Вычислить выражение» (клавиши Shift + F9).
  4. В контекстном меню выберем пункт «Установить новое значение в виде выражения».
  5. Запишем новое значение UUID для реквизита объекта, например:
    
    Объект.Мероприятия[0].ИдентификаторПрограммы = Новый УникальныйИдентификатор("ad46bc45-1234-abcd-ef00-123456789abc");
    
  6. Продолжим выполнение кода клавишей F5. Значение принудительно перезапишется в базу данных.

Также помните лайфхак из практики разработчиков: в документе Регистрация трудовой деятельности поле идентификатора можно сделать доступным для редактирования вручную прямо на форме, если в табличной части присутствует хотя бы одно отменяющее мероприятие.


Актуальность для современных отчетов ЕФС-1

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

← На главную