IE 2018

Проверка отчета XBRL для НФО

Обмен - Обмен с другими системами

XBRL arelle arelleCmdLine Анкета-редактор

6
Проверка отчета XBRL для НФО средствами Arelle и анализ полученного журнала сообщений. Обработки тестировались в пустой конфигурации на платформе 8.3.10

В предыдущей части пытались разбираться с таксономией (тут). Если получать готовый отчет XBRL из учетной системы, то нам необходимо как-то его проверить (валидировать) по определенным в таксономии правилам (база формул). Это можно сделать в ПО "Анкета-редактор XBRL". Но это не удобно: создавать пакет, загружать, проверять...

Увидев что Анкета-редактор проверяет отчет вызовом arelleCmdLine.exe через командную строку, возникла идея получать и обрабатывать log-файл об ошибках самим.

Как это делает ПО "Анкета-редактор XBRL" (пример):

C:\Program Files (x86)\Anketa-redaktor XBRL\bin\anketa-assets\arelleCmdLine.exe -f <путь отчета>.xml -v --packages <путь таксономии>final_1_2.zip --parameters {http://parameters}param_min1=2017-12-28,{http://parameters}PriorPeriod-1Start=2015-01-01,{http://parameters}CurrentPeriodStart=2016-01-01,{http://parameters}param_min3=2017-06-28,{http://parameters}param_min2=2017-09-28,{http://parameters}startRepYear=2017-12-31,{http://parameters}PriorPeriod-2Start=2014-01-01,{http://parameters}refPeriodEnd=2018-02-28,{http://parameters}refPeriodStart=2016-01-01,{http://parameters}PriorPeriod-2End=2016-02-28,{http://parameters}startQuart=2017-12-29,{http://parameters}PriorPeriod-1End=2015-12-31,{http://parameters}CurrentPeriodEnd=2018-02-28,{http://parameters}startMonth=2018-01-31 --logFile <путь лога>.xml --export --exportDir <путь выгрузки ролей> --uiLang ru --labelLang ru-RU --calcDecimal --infoset --formula run --formulaUnsatisfiedAsser --logFormat "%(messageCode)s DIVIDER %(message)s DIVIDER %(file)s DIVIDER %(refs)s DIVIDER %(levelname)s DIVIDER %(args)s ENDOFROW"

Посмотрев help к arellecmdLine.exe выясняем что часть параметров лишняя:

  • --parameters: используются для базы таблиц, в проверках не используются (может и ошибаюсь, но не нашел где в формулах используется).  В версии таксономии 1.3 используется.
  • --export: видимо используют для создания ссылок на таблицы из список ошибок. Нам это не нужно.
  • --infoset: не используем.

Просто убрать --parameters нельзя,т.к. будут выходить ошибки при загрузке/проверки базы таблиц. Необходимо исключать файлы *-rend.xml, *-lab.xml:

  • --skipLoading "*-rend.xml|*-lab.xml"

Так же в логах идет ошибка с кодом "err:XPTY0004", ее можно пропускать через параметр --logCodeFilter.

Проверять отчет можно через arelleCmdLine.exe как от Анкеты-редактора так и от сайта arelle.org.

Важно!!! Результаты проверки через Анкету-редактор (1.0.345) и arelle.org (2018-03-16) разные:

  • не совпадают количество ошибок;
  • есть ошибки которые присутствуют в Анкете, но нет в  arelle.org  и наоборот;
  • не совпадают описание переменных.

Представленная обработка показывает пример запуска проверки отчета и вывод лог-файла в виде отчета.

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

На вкладке "Подробности" xml-тексты для информации.

Инструкция к обработке:

1. Указываем пути к arelleCmdLine.exe, файлу таксономии (zip), отчету XBRL. Кнопка "Проверить и сформировать отчет проверки". Если файл-лог не был указан, то создается новый в том же каталоге что и отчет XBRL. Если указан, то перезаписывается.

2. Если хотим вывести отчет по уже существующему файлу-логу, указываем его и кнопка "Вывести отчет по логу-файлу".

Если вы получаете готовый отчет из учетной системы и у вас нет базы формул, то используемый метод позволит пользователю проверить отчет без запуска Анкеты-редактора

 

Обновление вер. 1.2: После выпуска таксономии версии 1.3 пришлось включить выбор периода для установки параметров проверки.

Замечание: при проверке бухгалтерской отчетности используется установленная для фактов разрядность "-3", что не очень удобно,т.к. в отчет проверки суммы выходят округленные до тыс.рублей. Поэтому мы обычно для проверки готовим xbrl-отчет с разрядностью "2".

Обновление 07.09.2018: с последней версией Анкета-редактор обработка не работает, т.к. разработчики запретили запускать проверку через командную строку (ключ key). Занялся обработкой базы формул, уже получается проверять по части формул. Готовиться статья по разбору базы формул таксономии...

6

Скачать файлы

Наименование Файл Версия Размер
Проверка отчета XBRL для НФО через Arelle
.epf 15,30Kb
27.04.18
15
.epf 1.2 15,30Kb 15 Скачать

См. также

Комментарии
Избранное Подписка Сортировка: Древо
1. Dziden 10 24.04.18 09:02 Сейчас в теме
Мы тоже обратили недавно внимание на это внимание =). На самом деле arellecmdLine.exe в пакете анкеты доработан Банком России.

Больше всего бесит, что вендоры берут за валидацию миллионы, когда вопрос решается параметрами общедоступного исполняемого файла с открытом кодом.
2. Milan-1c 27.07.18 10:32 Сейчас в теме
Добрый день!
Спасибо за обработку.
Помогите расшифровать ошибку, пожалуйста?
Сообщение пустое.
Формула: $Prinadlezhashhie_affilirovannomu_liczu_akczii_Aff_l ge 20
Текст сообщения:
<message error="Соответствующая последовательность переменных включает в себя факт modelFact[419257, qname: purcb-dic:Kod_osnovaniya_affilirovannosti_otch_orgEnumerator, contextRef: a1f04c9be-c43d-43a0-9ec0-430354e9f42b, unitRef: None, value: mem-int:Chlen_sovet_dirzacziiMember, XBRL_1027402052347_ep_nso_purcb_m_q_30d_20180630.xml, line 1539] несогласованный в аспекте dim-int:ID_strokiTaxis" label="valueAssertion_SR_0420402_9">Message: [xbrlmfe:inconsistentMatchedVariableSequence] Переменный набор %(label)s
Исключение: %(error)s Соответствующая последовательность переменных включает в себя факт modelFact[419257, qname: purcb-dic:Kod_osnovaniya_affilirovannosti_otch_orgEnumerator, contextRef: a1f04c9be-c43d-43a0-9ec0-430354e9f42b, unitRef: None, value: mem-int:Chlen_sovet_dirzacziiMember, XBRL_1027402052347_ep_nso_purcb_m_q_30d_20180630.xml, line 1539] несогласованный в аспекте dim-int:ID_strokiTaxis
Message log error: incomplete format key</message>
Прикрепленные файлы:
4. tgrstart 23 27.07.18 17:55 Сейчас в теме
(2) может указан факт Chlen_sovet_dirzacziiMember с неверной осью ID_strokiTaxis в контексте contextRef: a1f04c9be-c43d-43a0-9ec0-430354e9f42b?
А сама формала должна проверять кол-во аф.лиц не более 20.
3. Solikamsk 27.07.18 15:09 Сейчас в теме
Так пройдись по файлу поиском "a1f04c9be-c43d-43a0-9ec0-430354e9f42b" - должен быть сам элемент и его описание.
5. starik-2005 1420 07.09.18 13:46 Сейчас в теме
Интереса ради посмотрел обработку. С арелем из последней версии анкеты эта штука работать не стала. В анкете появился параметр key, с которым запускается командная строка, но при этом он каждый раз различный. Возможно без него теперь обработка не работает.
6. tgrstart 23 07.09.18 22:30 Сейчас в теме
(5) Да, с последней версией Анкета-редактор обработка не работает, т.к. разработчики запретили запускать проверку через командную строку (ключ key). Причины не известны. C последней arelle твориться что-то непонятное: если при запуске проверки из командной строки (или через обработку) не выдает результат, то помогало переименование файлов отчета.
Занялся изучением базы формул, уже получается проверять по части формул. Прототип обработки для проверки xbrl-файла уже проверяет около 70% формул из таксономии. Может скоро что-нибудь выложу...
7. user761157 14.09.18 11:11 Сейчас в теме
(6) Нашли адекватную документацию по базам формул?
Из того, что я видел - очень поверхностно, в самих проверка используется большое количество тэгов, которые нигде не описаны.
8. tgrstart 23 14.09.18 14:06 Сейчас в теме
(7) нет, не нашел. Пошел от обратного: собрал статистику использования тэгов, типов дуг и ресурсов в базе формул от ЦБ. По смыслу формул определяю назначение того или иного атрибута.
9. dragonCat 19.09.18 15:11 Сейчас в теме
(5) Здравствуйте!
А как удалось отследить данный ключ запуска и "постоянно меняющиеся значения"? Перехватывали внешние запуски Анкеты чем то или есть какой то иной способ?
10. tgrstart 23 19.09.18 21:51 Сейчас в теме
(9) Если запустить Анкету из командной строки (или через FarManager), то в консоли видны все команды запуска arelle
11. dragonCat 20.09.18 11:04 Сейчас в теме
Оставьте свое сообщение