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

07.09.18

Интеграция - Внешние источники данных

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Проверка отчета XBRL для НФО через Arelle
.epf 15,30Kb ver:1.2
20
20 Скачать (5 SM) Купить за 3 050 руб.

В предыдущей части пытались разбираться с таксономией (тут). Если получать готовый отчет 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). Занялся обработкой базы формул, уже получается проверять по части формул. Готовиться статья по разбору базы формул таксономии...

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

См. также

Зарплата Внешние источники данных Бюджетный учет Перенос данных 1C Системный администратор Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

19.08.2020    26442    26    1    

28

Внешние источники данных Программист Бизнес-аналитик Пользователь Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование 1C:Бухгалтерия Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматической выгрузки данных из 1С 8.3 в базу данных ClickHouse, PostgreSQL или Microsoft SQL для работы с данными 1С в BI-системах. «Экстрактор данных 1С в BI» работает со всеми типовыми и нестандартными конфигурациями 1С 8.3 и упрощает работу бизнес-аналитиков. Благодаря этому решению, специалистам не требуется быть программистами, чтобы легко получать данные из 1С в вашей BI-системе.

28500 руб.

15.11.2022    22928    24    49    

39

Внешние источники данных Платформа 1С v8.3 1C:Бухгалтерия Платные (руб)

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

94999 руб.

11.07.2024    1302    1    0    

3

Розничная торговля Внешние источники данных Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Бухгалтерский учет 1С:Бухгалтерия 3.0 Фармацевтика, аптеки Россия Бухгалтерский учет Платные (руб)

Внешняя обработка загрузки данных из файла-выгрузки, сформированного в программе F3 TAIL версии 3.4 (и выше) или еФарма версии 2.1, в базу конфигурации 1С: Бухгалтерия предприятия 8, ред. 3.0 (базовая, ПРОФ, КОРП, ФРЕШ).

13200 руб.

19.12.2016    48655    98    106    

70

Зарплата Внешние источники данных Программист Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 8 организаций (далее Парус) в конфигурацию 1С:Зарплата и управление персоналом, ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

120000 руб.

07.06.2021    13740    2    3    

3

Внешние источники данных Зарплата Бюджетный учет Программист Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактическим удержаниям, НДФЛ, вычетам, страховым взносам из базы Парус 7.хх учреждений (далее Парус) в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (далее 1С) и начать с ней работать с любого месяца года.

84000 руб.

24.04.2017    52671    104    165    

91
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
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 29 27.07.18 17:55 Сейчас в теме
(2) может указан факт Chlen_sovet_dirzacziiMember с неверной осью ID_strokiTaxis в контексте contextRef: a1f04c9be-c43d-43a0-9ec0-430354e9f42b?
А сама формала должна проверять кол-во аф.лиц не более 20.
3. Solikamsk 2 27.07.18 15:09 Сейчас в теме
Так пройдись по файлу поиском "a1f04c9be-c43d-43a0-9ec0-430354e9f42b" - должен быть сам элемент и его описание.
5. starik-2005 3162 07.09.18 13:46 Сейчас в теме
Интереса ради посмотрел обработку. С арелем из последней версии анкеты эта штука работать не стала. В анкете появился параметр key, с которым запускается командная строка, но при этом он каждый раз различный. Возможно без него теперь обработка не работает.
6. tgrstart 29 07.09.18 22:30 Сейчас в теме
(5) Да, с последней версией Анкета-редактор обработка не работает, т.к. разработчики запретили запускать проверку через командную строку (ключ key). Причины не известны. C последней arelle твориться что-то непонятное: если при запуске проверки из командной строки (или через обработку) не выдает результат, то помогало переименование файлов отчета.
Занялся изучением базы формул, уже получается проверять по части формул. Прототип обработки для проверки xbrl-файла уже проверяет около 70% формул из таксономии. Может скоро что-нибудь выложу...
7. user761157 14.09.18 11:11 Сейчас в теме
(6) Нашли адекватную документацию по базам формул?
Из того, что я видел - очень поверхностно, в самих проверка используется большое количество тэгов, которые нигде не описаны.
8. tgrstart 29 14.09.18 14:06 Сейчас в теме
(7) нет, не нашел. Пошел от обратного: собрал статистику использования тэгов, типов дуг и ресурсов в базе формул от ЦБ. По смыслу формул определяю назначение того или иного атрибута.
9. dragonCat 19.09.18 15:11 Сейчас в теме
(5) Здравствуйте!
А как удалось отследить данный ключ запуска и "постоянно меняющиеся значения"? Перехватывали внешние запуски Анкеты чем то или есть какой то иной способ?
10. tgrstart 29 19.09.18 21:51 Сейчас в теме
(9) Если запустить Анкету из командной строки (или через FarManager), то в консоли видны все команды запуска arelle
11. dragonCat 20.09.18 11:04 Сейчас в теме
12. Solikamsk 2 14.02.19 15:04 Сейчас в теме
У меня задача готовый файл отчетности проверить с данными системы учёта. Можно ли как-то с помощью arelle сделать запросы к определенным значениям фактов?
14. starik-2005 3162 15.02.19 11:13 Сейчас в теме
(12)
Можно ли как-то с помощью arelle сделать запросы к определенным значениям фактов?
Смотря какая отчетность. Если это страховая НСО, то они там накрутили на каждый элемент ОСВ сове КС, которых в общей сложности по 10к - арель мрет на этомю
13. Solikamsk 2 14.02.19 16:04 Сейчас в теме
Ну или другие утилиты.. В идеале конечно хотелось бы что-то вроде OLE DB, типа запросы..
15. starik-2005 3162 15.02.19 11:14 Сейчас в теме
(13)
Ну или другие утилиты.
У нас скоро портал будет для тестирования отчетности - на выходе лог.
16. Solikamsk 2 19.02.19 10:02 Сейчас в теме
(15) Я предполагаю, что портал будет платным.. В чём преимущество от обычной анкеты?
И ещё.. юзали "Office Tool for XBRL Prototype"? Я пока только узнал, что он есть и ничего найти не могу.
17. starik-2005 3162 20.02.19 09:18 Сейчас в теме
(16) в отчетности страховых добрые люди из ЦБ накуевертили столько контрольных соотношений, что анкета дохнет. Не от отчета дохнет, а от контролей, ибо там каждый элемент в каждом соотношении ищется по фильтрам, потом все это вычиляется, потом снова... КС в XBRL - это очень слабенькая реализация функций над даными. Особенно в подходе к ССД, когда все счета по отдельности в ОСВ сравниваются по сумме начала, оборота и окончания, линии бизнеса и элемента валюты с итогами. Это не бигдата подход - это наепалово налогоплательщиков)))
18. tgrstart 29 20.02.19 10:03 Сейчас в теме
(17) последняя версия анкеты вроде бы не "дохнет", и быстрее проверяет. Еще пришлось ограничить анкету на использование оперативной памяти.
Интересно было бы сравнить скорость проверки и у разных разработчиков... а то своей программой проверяешь по таксономии - полчаса, анкетой - два часа. Как будто что-то делаю не так.

Идея счет ОСВ = концепт мне не нравиться, я бы код счета в измерение поставил.
19. starik-2005 3162 20.02.19 10:40 Сейчас в теме
(18)
я бы код счета в измерение поставил
Тогда другие трудности возникнут с проверкой, например, сальдо на расчетных счетах как сумма сальдо определенных счетов. Лучше было бы проверять все элементы по оси валютного признака и периода, но там свои трудности в самом XBRL-стандарте.
20. tgrstart 29 20.02.19 11:21 Сейчас в теме
(19)Наоборот легко: Факт A (измерение счет B) = Факт A (измерение счет C) + Факт A (измерение счет D). А их тысяча формул по ОСВ описывалась одной одной. И таблица ОСВ была бы читаемой (отображались бы счета по которым есть данные, а не все подряд).
21. starik-2005 3162 20.02.19 14:02 Сейчас в теме
(20)
Факт A (измерение счет B) = Факт A (измерение счет C) + Факт A (измерение счет D). А их тысяча формул по ОСВ описывалась одной одной.
Так было бы круто, но вот есть какой-то факт СуммаНаРасчетныхСчетах, который собирается из 205/206/303,,, - там сложности возникают.
Оставьте свое сообщение