Сравнение структур XML-файлов

10.10.19

Разработка - Инструментарий разработчика

Позволяет сравнить файлы xml с любой структурой, игнорируя их содержимое.

Скачать файл

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

Наименование По подписке [?] Купить один файл
Сравнение структур XML-файлов:
.epf 23,28Kb
25
25 Скачать (1 SM) Купить за 1 850 руб.

Есть несколько файлов и есть образец, с которым их все надо сравнить. Например, некий обмен и вам дали образец, и вы пишете код, делающий файлы согласно образцу. Обработка позволяет отследить недочёты, допущенные в тегах, атрибутах, но игнорируя текстовое содержимое. Также игнорируются значения атрибутов, секции CData итд. По сути, это только две структуры с типами узлов, полными путями узлов, фактом наличия атрибутов и их именами.

Можно настраивать режимы сравнения - все файлы с образцом (т.е. данные, которые есть в файле, но нет в образце), или образец с каждым из файлов (т.е. данные, которые есть в образце, но нет в файле). Можно указать, учитывать ли пространства имён (каждого тега), наличие атрибутов, их имена.

Использованы 2 технологии - для релизов до 8.3.10 обычное ЧтениеXML из файла, для 8.3.10 и выше - через двоичные данные (описано в статье //infostart.ru/public/1130284/). Использовано чтение через документ DOM. Сделаны обычная и управляемая форма (асинхрон, без модальных). Одинаковые по структуре узлы схлопываются, что убыстряет работу.

Результаты показываются в виде таблиц с полным путём каждого узла. Различия в атрибутах в текущей версии не показываются - если надо, пишите в комментах, выведу. Файл, чей путь указан первым, считается образцом. При движении по таблице путей файлов для образца показывается его таблица данных по структуре, для остальных строк - таблицы результатов сравнения, различия; либо сообщение, что различий нет.

Если попадутся косяки - просьба писать, буду допиливать, т.к. материала для тестирования сейчас маловато.

Также, можно встроить разрезку хмл-файлов на куски, если они окажутся слишком велики для DOM, с помощью технологии, описанной в той же статье.

Тестировалось на 8.3.15.1534.

XML сравнение структура файлов

См. также

Инструментарий разработчика Роли и права Запросы СКД Программист Руководитель проекта Платформа 1С v8.3 Управляемые формы Запросы Система компоновки данных Платные (руб)

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

15500 руб.

02.09.2020    178725    988    403    

947

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

8400 руб.

20.08.2024    20250    133    74    

134

Пакетная печать Печатные формы Инструментарий разработчика Программист Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

Инструмент, позволяющий абсолютно по-новому взглянуть на процесс разработки печатных форм. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и "прозрачность" разработки, а также навести порядок в многообразии корпоративных печатных форм.

22200 руб.

06.10.2023    19022    51    19    

83

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 1C:Бухгалтерия Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

15000 руб.

10.11.2023    12981    53    33    

72

Инструментарий разработчика Программист Платформа 1С v8.3 Платные (руб)

Инструмент для написания и отладки кода в режиме «1С:Предприятие». Представляет собой консоль кода с возможностью пошаговой отладки, просмотра значений переменных любых типов, использования процедур и функций, просмотра стека вызовов, вычисления произвольных выражений на встроенном языке в контексте точки останова, синтаксического контроля и остановки по ошибке. В консоли используется удобный редактор кода с подсветкой, контекстной подсказкой, возможностью вызова конструкторов запроса и форматной строки.

9360 руб.

17.05.2024    29197    100    48    

146

Инструментарий разработчика Программист 8.3.14 Россия Платные (руб)

Расширение для конфигурации “Конвертация данных 3”. Добавляет подсветку синтаксиса, детальную контекстную подсказку, глобальный поиск по коду.

20000 руб.

07.10.2021    18711    7    32    

43

Инструментарий разработчика Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Разработка Конструктор автоматизированных рабочих мест "Конструктор АРМ" реализована в виде расширения и является универсальным инструментом для создания АРМ любой сложности в пользовательском режиме.

3600 руб.

27.12.2024    1830    2    0    

5
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. kraspila 95 14.10.19 10:43 Сейчас в теме
Сравнение содержимого тегов не производится? Можно ли убедиться с помощью обработки что файл, являющийся потомком исходного, содержит ту же информацию? Например, документ, созданный на основании имеет тот же набор номенклатуры?
2. Yashazz 4829 14.10.19 19:24 Сейчас в теме
Содержимое, если речь именно о том, что в терминах 1С называют "ТекстовоеСодержимое", игнорируется. Поэтому, если речь идёт о смысловом наполнении, эта обработка неприменима. Она для других задач.
3. maxx 997 23.01.20 11:37 Сейчас в теме
Поставил сразу выбор файла Все файлы (*.*), т.к. у меня файлы xml под разными расширениями лежат

Попробовал сравнить реальные файлы в работе 2 файла xsd разных версий, так и не понял, что мне сделать с результатами сравнения, как-то не понятно

Пример файлов прикладываю
Прикрепленные файлы:
11.13.0.11-hcs-house-management-types.xsd
12.2.2.15-hcs-house-management-types.xsd
4. Yashazz 4829 23.01.20 13:30 Сейчас в теме
Вот как раз xsd проще сравнивать другими инструментами. Если 1С сможет, загрузить как пакеты XDTO, и так смотреть. А моя обработка - для xml-файлов.
5. kislitsin 27.10.23 13:11 Сейчас в теме
Приветствую.
Сравнил два файла, непонятно что дальше делать с полученной таблицей и что она показывает.
В идеале иметь что то похожее на скрине который приложил.
Прикрепленные файлы:
6. user731221 14.12.23 18:44 Сейчас в теме
Добрый день.
Обработка выкидывает ошибку

Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: v Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: value Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа '{http://v8.1c.ru/8.1/data/core}ValueTable'
Оставьте свое сообщение