В материале содержится программа для сопоставления исходящих СМЭВ-запросов негосударственного пенсионного фонда и квитанций, полученных в ответ от Пенсионного фонда России. А также приводится инструкция и примеры использования утилиты.
Отчеты НПФ и квитанции ПФР в СМЭВ
Негосударственные пенсионные фонды через СМЭВ интенсивно обмениваются большим количеством разнообразных документов и отчетов с Пенсионным фондом России. Практически на каждый документ, отправленный НПФом, ПФР должен подготовить встречный документ с результатами проверки и приемки отчетного документа на стороне НПФ (назовем такой документ квитанцией).
Обмен отчетными документами и квитанциями осуществляется посредством передачи файлов-вложений в рамках видов сведений «Входящие документы из НПФ в ПФР» и «Исходящие документы из ПФР в НПФ». При этом участникам межведомственного взаимодействия необходимо сопоставлять отчеты, направленные через один вид сведений, с квитанциями, полученными посредством второго ВС.
Стандартные возможности СМЭВ-адаптера позволяют сопоставлять сообщения и вложения, но не позволяют идентифицировать, квитанцией к какому документу является полученное вложение.
Сопоставление СМЭВ-отчетов и квитанций
Для того чтобы облегчить поиск и сопоставление ответов на запросы в ПФР команда Хемуль IT разработала для своих клиентов простую утилиту на Java. Утилита обходит все каталоги с файлами вложений, распаковывает их и извлекает из каждого файла его метаданные (элементы «GUI», «ВОтветНа» и «ДатаВремя» из блока «СлужебнаяИнформация»).
Метаданные вместе с названием каталога и именем файла сохраняются в таблице (CSV-файле), которая затем обрабатывается вручную средствами MS Excel.
Порядок установки и использования ПО
Предусловие: наличие JRE версии от 1.8 и выше.
Прилагаемый архив необходимо распаковать в отдельный каталог, например: /opt/report (или C:\report).
В файле config.ini нужно задать два параметра:
DOC_DIR= /opt/smev/date/base-storage/XXYYZZ
(или C:\\SmevAdapter\\data\\base-storage\\XXYYZZ) — корневой каталог, в который СМЭВ-адаптер помещает файлы вложенийREPORT_FILE=./npf_report.csv
(или C:\\Temp\\npf_report.csv) — путь и имя csv-файла с отчетом.
Утилита запускается в консоли командой:
java -jar npf-report-1.1.jar
В процессе работы могут появляться сообщения о файлах нулевой длины, битых архивах, которые невозможно распаковать, и некорректных XML-файлах, которые невозможно распарсить. Такие файлы пропускаются и не влияют на обработку оставшихся файлов.
По завершении работы в консоль будет выведена надпись «Обработка всех вложений завершена, отчет сформирован».
Работа с отчетом
Результатом работы утилиты является файл в формате *.csv, который может быть обработан далее вручную по следующему сценарию:
- Фиксируем первую строку с заголовками и добавляем фильтр.
- В фильтре на столбце «ВОтветНа» выбираем значение «parsing error» и получаем список «кривых» файлов, которые не удалось обработать.
При желании можно скопировать этот список в отдельную таблицу, чтобы потом разобраться с причинами ошибок.
Но в итоге эти строки нужно удалить из нашего отчета. - Теперь в фильтре на столбце «ВОтветНа» выбираем флажок «Выделить все» и снимаем флажок «(Пустые)».
Получаем список всех файлов, в которых присутствует элемент «ВОтветНа», т.е. список квитанций.
Создаем новый лист в этой же книге Excel и копируем туда список квитанций. - Удаляем строки квитанций с первого листа Excel.
- Удаляем столбец «ВОтветНа».
- Столбцы E, F, G, H называем соответственно «Каталог квитанции», «Файл квитанции», «GUID квитанции», «ДатаВремя квитанции».
- В ячейке E2 вводим формулу «=ВПР($C2;Лист1!$A:$E;2;ЛОЖЬ)»
В ячейке F2 вводим формулу «=ВПР($C2;Лист1!$A:$E;3;ЛОЖЬ)»
В ячейке G2 вводим формулу «=ВПР($C2;Лист1!$A:$E;4;ЛОЖЬ)»
В ячейке H2 вводим формулу «=ВПР($C2;Лист1!$A:$E;5;ЛОЖЬ)» - Ячейки E2:H2 копируем вниз до конца заполненного диапазона.
- В фильтре на столбце E выбираем флажок «Выделить все» и снимаем флажок «#Н/Д».
Получаем список всех файлов, на которые от ПФР пришли квитанции.
Если инвертировать условия фильтрации, то получим список файлов, на которые от ПФР не пришли квитанции. - Сохраняем получившийся отчет в формате xls.
По ссылке можно посмотреть пример преобразованного файла.
Исправлена ошибка, которая приводила к пропуску файлов с расширением «GZ» в верхнем регистре.
Теперь обрабатываются и «gz», и «GZ».