При сдаче отчетности в Социальный фонд России (ранее ПФР) бухгалтеры и специалисты по кадрам часто сталкиваются с техническими ошибками при проверке XML-файлов. Одной из наиболее распространенных является ошибка: The element 'ЗЛ' in namespace ' has incomplete content. List of possible elements expected: 'СтажевыйПериод'. Особенно часто эта проблема проявляется в программе «1С:Зарплата и Управление Персоналом 2.5» при использовании внешних обработок для формирования актуальных форм отчетности.
В данной статье мы подробно разберем, почему возникает эта ошибка, как найти проблемных сотрудников в базе и какими методами можно привести отчет в соответствие с требованиями XSD-схемы, сохранив при этом корректность данных для контролирующих органов.
Давайте проанализируем само сообщение об ошибке. Тег ЗЛ в структуре XML-файла означает «Застрахованное лицо». Согласно утвержденному формату выгрузки, если сведения о сотруднике (ФИО и СНИЛС) включены в файл, то внутри этого блока обязательно должен присутствовать хотя бы один подчиненный блок СтажевыйПериод.
Фраза incomplete content (неполное содержимое) указывает на то, что программа нашла данные о человеке, но не обнаружила ни одной записи о его стаже за отчетный период. С точки зрения проверочного алгоритма фонда, это является критической ошибкой: если человек числится в штате, у него должен быть указан хотя бы один день стажа, даже если этот стаж не является страховым или не оплачивался.
Рассмотрим основные причины, по которым блок стажа может оказаться пустым в 1С:
Если в вашей организации работает большое количество людей, искать «пустого» сотрудника вручную в программе долго. Проанализируем способ быстрого поиска через текстовый редактор. В тексте ошибки обычно указывается номер строки, например: Строка 13678, позиция 4.
Выполним следующие действия:
Ctrl + G и введем номер строки).ЗЛ непосредственно перед этой строкой. Мы увидим его ФИО и СНИЛС.Как только мы выяснили, по кому именно не выгрузился стаж, мы можем переходить к исправлению данных в «1С:Зарплата и Управление Персоналом».
Выясним причину отсутствия стажа у конкретного лица. Часто бывает так, что сотрудник находится в неоплачиваемом отпуске или прогуливает, а в программе это не отражено документально.
Важный момент: Если сотрудник был включен в ежемесячные отчеты (ранее СЗВ-М, сейчас — «Персонифицированные сведения о физических лицах»), вы обязаны показать его и в годовом отчете по стажу. Просто удалить его из СЗВ-СТАЖ (или подраздела 1.2 формы ЕФС-1) нельзя — это приведет к расхождению данных и штрафу в размере 500 рублей за каждого «забытого» человека.
Проанализируем ситуацию с «потеряшками». Если человек не выходит на работу, но приказ об увольнении еще не подписан, мы не имеем права прерывать его стаж в отчете. Однако, поскольку выплат нет, этот период должен быть помечен специальным кодом.
Для корректного формирования отчета в случаях отсутствия выплат и фактической работы предусмотрен код НЕОПЛ. Рассмотрим, как добиться появления этого кода в отчете в зависимости от ситуации:
Невходы в организацию с видом отсутствия «Невыход по невыясненной причине». В этом случае 1С автоматически подставит код НЕОПЛ в стажевый период.Отпуска организаций с соответствующим видом отпуска, что даст код НЕОПЛ или ДОПВЫХ (в зависимости от настроек).НЕОПЛДОГ.Если ваша внешняя обработка в ЗУП 2.5 все равно не видит эти периоды и оставляет блок ЗЛ пустым, придется прибегнуть к ручной корректировке файла или данных в документе отчета.
Когда исправить данные в 1С сложно (например, из-за особенностей доработки конфигурации), мы можем воспользоваться специализированным софтом от фонда, таким как CheckPFR или ПО ПД (Программа подготовки данных). Рассмотрим этот алгоритм:
ПО ПД.НЕОПЛ.Такой подход гарантирует, что XSD-схема будет соблюдена: блок СтажевыйПериод появится внутри блока ЗЛ, и ошибка incomplete content исчезнет.
Разберем, почему важно не просто «протолкнуть» отчет через проверку, а соблюсти логику учета. Социальный фонд проводит автоматическую сверку между вашими ежемесячными отчетами и годовым отчетом по стажу.
Если вы решите просто удалить сотрудника из отчета СЗВ-СТАЖ, потому что «программа ругается», система сверки выдаст ошибку: «Сотрудник застрахован в СЗВ-М, но отсутствует в СЗВ-СТАЖ». В этом случае работодателю грозит штраф. Поэтому использование кода НЕОПЛ является единственным верным решением для «зависших» сотрудников.
Рассмотрим пример кода в XML, который должен получиться в итоге для проблемного сотрудника:
<ЗЛ>
<ФИО>
<Фамилия>Иванов</Фамилия>
<Имя>Иван</Имя>
<Отчество>Иванович</Отчество>
</ФИО>
<СНИЛС>123-456-789 01</СНИЛС>
<СтажевыйПериод>
<ДатаНачала>01.01.2023</ДатаНачала>
<ДатаОкончания>31.12.2023</ДатаОкончания>
<ДекретДети>НЕОПЛ</ДекретДети>
</СтажевыйПериод>
</ЗЛ>
Резюме действий для исправления ошибки:
НЕОПЛ.CheckPFR перед отправкой.Соблюдение этих правил позволит вам успешно сдать отчетность даже в сложных случаях с «проблемными» сотрудниками и избежать штрафных санкций со стороны фонда.