Сдача отчетности в Пенсионный фонд всегда сопряжена с жесткими временными рамками и неожиданными изменениями законодательства. Типичная ситуация, с которой столкнулись многие организации: при попытке отправить отчет СЗВ-СТАЖ из конфигурации 1С:Зарплата и Управление Персоналом 3.1.7.144 (и других релизов этой ветки), ПФР возвращает отрицательный протокол контроля с ошибкой формата (код ошибки 50). При этом переходить на более новую ветку конфигурации (например, 3.1.8) на этапе закрытия года у компании нет возможности или желания из-за рисков изменения алгоритмов расчета налогов и взносов.
В этой статье мы подробно разберем, почему возникает эта проблема, где в коде 1С формируется структура выгрузки, и какими способами можно успешно отправить отчет без обновления всей информационной базы.
Первоисточником проблемы является Постановление Правления ПФР от 06.12.2018 № 507п. Этот документ кардинально обновил форматы электронных документов для СЗВ-СТАЖ, СЗВ-КОРР, СЗВ-ИСХ и ОДВ-1. ПФР установил окончательный срок перехода на новые форматы. С этого момента старые файлы выгрузки перестали проходить форматно-логический контроль на шлюзах приема АИС ПФР-2.
Релиз 1С:ЗУП 3.1.7.144 стал финальным в ветке 3.1.7. Фирма «1С» реализовала поддержку нового формата (а также переключатель «Формировать файл в формате 2019 года») только в следующих версиях конфигурации (начиная с 3.1.8.246). Пользователи устаревших версий оказались перед выбором: либо срочно обновлять базу, либо искать обходные пути.
Если перед вами стоит задача скорректировать формат выгрузки непосредственно в коде конфигурации (или через расширение), необходимо найти место, где формируется структура выгружаемого файла.
Для этого выполним следующие шаги в режиме Конфигуратора:
СведенияОСтраховомСтажеЗастрахованныхЛицСЗВ_СТАЖ.СформироватьВыходнойФайл(). Именно в ней сосредоточена вся логика генерации XML-структуры, заполнения заголовков и записи сведений о застрахованных лицах.Проанализируем структуру заголовка XML-файла, которую ожидает увидеть приемный шлюз ПФР. Для успешного прохождения контроля шапка выгружаемого документа должна выглядеть следующим образом:
<ЭДПФР xmlns="http://пф.рф/ВС/СЗВ-СТАЖ/2018-01-29"
xmlns:УТ2="http://пф.рф/УТ/2017-08-21"
xmlns:АФ4="http://пф.рф/АФ/2017-08-21"
xmlns:ВС2="http://пф.рф/ВС/типы/2017-10-23"
xmlns:ИС2="http://пф.рф/ВС/ИС/типы/2017-09-11"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
В устаревшем коде 1С:ЗУП 3.1.7 выгрузка генерируется с использованием старых пространств имен (например, использующих схемы АФ2, ВС и ИС вместо обновленных АФ4, ВС2 и ИС2). Изменение этих строк внутри функции СформироватьВыходнойФайл() решает проблему с несоответствием схемы заголовка.
Простая замена пространства имен в заголовке файла (шапке XML) не решит проблему полностью. Важно учитывать еще одно ключевое изменение в логике выгрузки данных, введенное Постановлением № 507п:
ДЛОТПУСК.ДЛОТПУСК теперь разрешено использовать только для сотрудников, работающих в особых (льготных) условиях труда. Для обычных сотрудников, у которых нет права на досрочную пенсию, выделять отпуска кодом ДЛОТПУСК запрещено — эти периоды должны бесшовно входить в обычный рабочий стаж.Если в файле старого формата у обычных сотрудников будет присутствовать тег <ДЛОТПУСК>, проверочная программа выдаст ошибку, даже если шапка XML заменена на актуальную. При доработке функции СформироватьВыходнойФайл() необходимо программно исключить вывод этого блока для сотрудников без особых условий труда.
Рассмотрим по шагам варианты, которые позволяют сдать отчетность без изменения программного кода конфигурации 1С:
Этот способ является наиболее надежным и не требует навыков программирования:
ДЛОТПУСК.Некоторые современные системы отправки регламентированной отчетности (например, СБиС или Контур.Экстерн) обладают встроенными конвертерами схем:
Для небольших организаций с малым числом сотрудников подойдет ручной метод корректировки данных через текстовый редактор (лучше использовать Notepad++):
<ЭДПФР> и его атрибуты на актуальный заголовок схемы 2018-2019 годов (приведенный выше).ДЛОТПУСК.Таким образом, мы детально разобрали все возможные пути обхода проблемы. Для разовой сдачи отчета проще всего использовать сторонние конвертеры или программу «Документы ПУ-6». Если же у вас в штате есть квалифицированный программист 1С, наиболее красивым решением будет создание небольшого расширения конфигурации, корректирующего функцию СформироватьВыходнойФайл() в модуле менеджера документа СведенияОСтраховомСтажеЗастрахованныхЛицСЗВ_СТАЖ.