XML как таблица
Работать глазами с документом на десятки тысяч записей в виде дерева невозможно. Здесь XML превращается в таблицу: вы выбираете, что считать строкой, и получаете обычную сетку с фильтрами и выгрузкой.
Открыть свой .xmlКодировка из пролога (включая windows-1251) читается автоматически.
Строка выбирается вами
Разборщик считает, какие элементы повторяются и сколько в них данных, и предлагает подходящий. Для многоуровневой выгрузки это выбор уровня: документ, запись, позиция.
Атрибуты — тоже данные
Элементы вида <row id="1" name="…"/> превращаются в таблицу так же, как элементы с вложенным текстом.
Вложенность разворачивается
Дочерние элементы становятся колонками по пути: PARTNER/INN. Ничего не теряется и не схлопывается молча.
Повторы видны
Если внутри строки повторяется вложенный элемент, значения склеиваются и об этом прямо сообщается — с подсказкой переключить уровень.
Один файл — несколько таблиц
В обменных выгрузках данные лежат уровнями: документ содержит записи, запись — позиции. Какой уровень нужен, зависит от задачи: сверить суммы по записям или пересчитать позиции.
Переключение уровня не требует повторного открытия файла: выберите другой элемент в «Разборе файла», и таблица пересоберётся с новым набором колонок. Фильтры по сохранившимся колонкам останутся.
Проверки, ради которых это и открывают
- найти записи с пустым обязательным полем:
EMPTY(CODE); - поймать неверную длину кода:
LEN(TRIM(INN)) <> 12; - сверить суммы: группировка по коду отделения с итогом по сумме;
- сравнить отправленный файл с ответом контрагента по номеру записи.
Почему не «просто открыть в браузере»
Браузер покажет дерево — по нему нельзя ни отфильтровать, ни просуммировать, ни сравнить с другим файлом. А встроенный разбор документа целиком в дерево на файле в сотню мегабайт съедает гигабайты памяти. Здесь используется потоковый разбор: строится только выбранная таблица.
Частые вопросы
Поддерживается ли windows-1251 в XML?
Да, кодировка читается из пролога документа. Её можно и переназначить вручную, если в прологе указано неверно.
Что будет с вложенными повторяющимися элементами?
Их значения склеиваются через разделитель, и выводится подсказка. Чтобы развернуть их в отдельные строки, выберите этот элемент строкой таблицы.
Можно ли выгрузить результат в Excel?
Да, в .xlsx, а также в CSV, JSON, SQL и DBF — по тем строкам, которые прошли фильтр.
Файл уходит на сервер?
Нет. Разбор идёт во вкладке браузера; страница технически не может отправить содержимое файла на сторонний адрес.
Разбираем подробно
- XML в таблицу: где Excel подводитПочему импорт XML в Excel задваивает суммы, что такое декартово произведение при разворачивании вложенности и как получить корректную таблицу из XML.
- Почему большой XML подвешивает всё подрядПочему XML на 100 МБ подвешивает браузер и редакторы, чем потоковый разбор отличается от построения дерева и как посмотреть такой файл таблицей.
- XML в CSV и Excel: как выгрузить без потерьКак выгрузить XML в CSV и XLSX: выбор уровня вложенности, что делать с повторяющимися элементами, как не задвоить суммы и сохранить коды текстом.