Как отправить СЗВ-ТД после 1 июля 2021 года, если отчеты не проходят форматно-логический контроль?

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

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

Официальная позиция и временные рекомендации ПФР

В сложившейся ситуации Пенсионный фонд России выпустил разъяснения, в которых рекомендовал работодателям временно, в течение июля 2021 года, продолжать представлять отчетность СЗВ-ТД по старому формату. Это решение было принято для того, чтобы избежать массовых штрафов за несвоевременную сдачу отчетности, пока ведомство обновляло свои приемные комплексы. Таким образом, наша задача заключалась в том, чтобы заставить программы 1С формировать отчеты по старому формату, игнорируя новые требования по ОКЗ для июльских отчетов.

Решения для программ 1С:Зарплата и Управление Персоналом (ЗУП) и 1С:Зарплата и кадры государственного учреждения (ЗКГУ)

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

  1. Применение официальных патчей от 1С

    Для конфигураций 1С:Зарплата и Управление Персоналом (ЗУП) и 1С:Зарплата и кадры государственного учреждения (ЗКГУ) были выпущены оперативные исправления (патчи), например, EF_10232423. Суть этих патчей сводилась к тому, чтобы временно сдвинуть дату перехода на новый формат с 1 июля на 1 августа 2021 года.

    Как применить патч:

    1. Мы открываем программу 1С.
    2. Переходим в раздел Администрирование.
    3. Выбираем Интернет-поддержка и сервисы.
    4. Находим пункт Обновление программы, затем Исправления (патчи).
    5. Скачиваем и устанавливаем соответствующий патч для вашей версии конфигурации.

    После установки патча необходимо заново сформировать отчет СЗВ-ТД. Патч изменял логику программы таким образом, что для документов с датой до 1 августа 2021 года выгрузка файла СЗВ-ТД происходила по прежнему, "старому" формату. Это означало, что поле для кода ОКЗ не заполнялось и отчет успешно проходил проверку в ПФР. Даже если вы уже внесли данные ОКЗ в кадровые документы, они временно не выгружались, но сохранялись в базе для будущего использования.

  2. Временный откат к старому формату через расширение

    Если официальный патч был недоступен или требовалось более гибкое решение, можно было создать расширение, которое переопределяло функцию формирования выходного файла СЗВ-ТД. Это позволяло принудительно использовать старый формат выгрузки для отчетов, относящихся к июлю.

    Пример кода расширения для ЗУП 3.1.14.555 и 3.1.18.82:

    
    &Вместо("СформироватьВыходнойФайл") Функция РасшСЗВТД_СформироватьВыходнойФайл(Ссылка)
        МассивСсылок = Новый Массив;
        МассивСсылок.Добавить(Ссылка);
        ВыборкаПоШапкеДокумента = ВыборкаПоШапкеДокумента(МассивСсылок);
        ВыборкаПоШапкеДокумента.Следующий;
        ВыборкаПоРаботникам = ВыборкаПоСотрудникам(МассивСсылок);
        Если ВыборкаПоШапкеДокумента.Дата < '20210801' Тогда
            Возврат ВыходнойФайл20200101(ВыборкаПоШапкеДокумента, ВыборкаПоРаботникам);
        КонецЕсли;
        Возврат ВыходнойФайл20210701(ВыборкаПоШапкеДокумента, ВыборкаПоРаботникам);
    КонецФункции
    

    Данный код перехватывает вызов функции СформироватьВыходнойФайл и, если дата документа раньше 1 августа 2021 года, принудительно вызывает функцию ВыходнойФайл20200101 (старый формат). В противном случае используется новый формат ВыходнойФайл20210701. Это расширение, как и официальный патч, приводило к формированию файла без кода ОКЗ для июльских отчетов.

  3. Обход проблемы с выбором периода в форме документа

    Некоторые пользователи обнаружили, что после установки патча или применения расширения, в форме документа СЗВ-ТД исчезала возможность выбора отчетного периода "Июль 2021". Это происходило из-за изменений в логике отображения элементов формы, связанных с датой документа. Для решения этой проблемы можно было использовать дополнительное расширение.

    Пример кода расширения для формы документа СЗВ-ТД:

    
    &НаСервере
    &Вместо("УстановитьОтображениеПоДатеДокумента")
    Процедура EF_10232423_УстановитьОтображениеПоДатеДокумента
        // Вставить содержимое метода.
        //ПродолжитьВызов;
        Если Объект.Дата < '20210801' Тогда
            ОтчетныйПериодВидимость = Истина;
            ПрежнийСтраховательВидимость = Ложь;
        Иначе
            ОтчетныйПериодВидимость = Ложь;
            ПрежнийСтраховательВидимость = Истина;
        КонецЕсли;
        ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
            Элементы, "ОтчетныйПериодПредставление", "Видимость", ОтчетныйПериодВидимость);
        ОбщегоНазначенияКлиентСервер.УстановитьСвойствоЭлементаФормы(
            Элементы, "ПрежнийСтраховательГруппа", "Видимость", ПрежнийСтраховательВидимость);
    КонецПроцедуры
    

    Это расширение переопределяет процедуру УстановитьОтображениеПоДатеДокумента, которая управляет видимостью полей на форме. Оно принудительно делает видимым поле "Отчетный период" для документов, датированных до 1 августа 2021 года, позволяя корректно выбрать "Июль 2021" в качестве отчетного периода.

    Альтернативный обход для проблемы с периодом:

    Некоторые пользователи находили рабочий метод путем следующих шагов:

    1. Мы меняли дату документа СЗВ-ТД на 30 июня.
    2. Выбирали нужный отчетный период (например, Июль).
    3. После этого возвращали нужную дату документа (например, 15 июля).

    Такие "пляски со сменой даты" позволяли сформировать отчет с корректным периодом, но в старом формате, при условии, что были применены патчи или расширения, запрещающие выгрузку ОКЗ.

Решение для 1С:Управление Производственным Предприятием (УПП) 1.3

Для пользователей более старых конфигураций, таких как УПП 1.3, проблема также требовала специфичных изменений, поскольку официальные патчи для них могли отсутствовать или быть не применимы в полной мере. Мы рассмотрим подробное решение для УПП 1.3.162.3:

  1. Изменение даты формирования: В модуле объекта, отвечающем за формирование СЗВ-ТД, требовалось изменить условие, определяющее формат выгрузки, чтобы он использовал старый формат для документов, датированных до 1 августа 2021 года. Это аналогично логике патчей и расширений для ЗУП/ЗКГУ.

  2. Отключение выгрузки кода ОКЗ: Даже если программа использовала старый формат, важно было убедиться, что она не пытается заполнить поле, которое присутствует в новом формате, но отсутствует в старом или не ожидается ПФР. Для этого необходимо было закомментировать строку, отвечающую за установку значения КодВФ (код выполняемой функции).

    Мы находим в соответствующем модуле (например, в процедуре, отвечающей за формирование записей мероприятия) следующую строку или её аналог и комментируем её:

    
    // УстановитьЗначениеЭлементаНабораЗаписей("КодВФ", ВыборкаПоРаботникам.ТрудоваяФункцияКод, НаборЗаписейМероприятие);
    
  3. Удаление поля из макета выгрузки: Дополнительно, для полного соответствия старому формату и во избежание возможных ошибок, мы проверяем и при необходимости удаляем упоминание поля КодВФ из макета выгрузки. Для УПП 1.3 это мог быть макет "ФорматПФР_ЭТК_2019".

    Мы находим и удаляем строку, относящуюся к коду выполняемой функции, например:

    "Код выполняемой функции. Строка 10 КодВФ"

Особенности указания кода ОКЗ (КодВФ)

Важно понимать, что все временные решения и официальные патчи, выпущенные для июля 2021 года, имели одну общую черту: они не выгружали код ОКЗ (КодВФ). Это было полностью соответствует временным рекомендациям ПФР, который сам не был готов принимать этот код. Поэтому, если вы отправляли отчеты в июле с применением этих решений, отсутствие ОКЗ не являлось нарушением.

Отдельный момент касался увольнений. Были разъяснения от разработчиков 1С, согласно которым при увольнении трудовая функция не указывается в СЗВ-ТД. Таким образом, для мероприятия "Увольнение" поле ОКЗ не требовалось заполнять ни в старом, ни в новом формате (при условии корректной реализации).

Дальнейшее развитие событий и решение проблемы "Поле объекта не обнаружено (КодВФ)"

Как и ожидалось, с 1 августа 2021 года приемные комплексы ПФР были обновлены и стали готовы принимать отчеты СЗВ-ТД в новом формате, включающем код ОКЗ. После этой даты работодателям требовалось либо удалить ранее установленные временные патчи/расширения, либо обновиться до актуальных версий конфигураций 1С, где применение нового формата с августа уже являлось штатной функцией.

Позднее, уже после 3 августа 2021 года, с выходом нового альбома форматов ПФР версии 2.62д, возникла еще одна проблема, связанная с полем КодВФ. В этой версии формата для некоторых мероприятий (например, при увольнении) поле КодВФ больше не должно было заполняться. Это приводило к новой ошибке: "Поле объекта не обнаружено (КодВФ)" в конфигурации ЗУП 3.1.18.151, особенно при проведении документов увольнения.

Мы выясним причину этой ошибки: она чаще всего возникала из-за того, что в системе оставались старые патчи или пользовательские расширения, которые были призваны решить проблему с июлем 2021 года. Эти старые доработки могли по-прежнему пытаться записать или проверить поле КодВФ, в то время как в новом формате 2.62д (и соответствующем обновлении 1С) оно уже не ожидалось для данного типа мероприятия.

Решение для ошибки "Поле объекта не обнаружено (КодВФ)" (для версии 3.1.18.151 и выше):

  1. Удаление конфликтующих патчей/расширений: В первую очередь необходимо проверить список установленных расширений и патчей. Если присутствуют временные решения, которые были установлены в июле 2021 года для обхода проблемы с ОКЗ, их следует отключить или удалить. Они могут конфликтовать с новой логикой программы.

  2. Перепроведение документов: После удаления конфликтующих доработок, мы рекомендуем перепровести документы СЗВ-ТД. В этот момент программа заново сформирует данные для файла в соответствии с актуальной логикой и форматом.

  3. Актуализация конфигурации: Убедимся, что конфигурация 1С обновлена до последней версии, которая включает все изменения, соответствующие актуальному альбому форматов ПФР.

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

← На главную