gifts2017

Консоль запросов с возможностью сравнения результатов нескольких запросов между собой.

Опубликовал Призрак (davdykin) в раздел Программирование - Инструментарий

Консоль запросов, позволяющая сохранять результат одного запроса и сравнение его с результатом другого запроса.

         Суть обработки довольно проста, результат запроса (который должен выводиться только в виде списка) по кнопке "Сравнение таблиц/Выгрузить таблицу" выгружается в табицу значений, значения всех колонок приводятся к типу строка и далее полученная таблица сохраняется в xml файл. По кнопке "Сравнение таблиц/Загрузить и сравнить таблицу": указывается ранее сохраненный файл, в списке значений отображаются все колонки запроса, необходимо проставить галки напротив полей по которым будет производится синхронизация, остальные колонки будут сравниваться как строковые значения. После сравнения выводится таблица отличий, в которой могут быть 3 типа отличий: Нет в текущей таблице, нет в загружаемой таблице, отличаются колонки (при отличии в колонках красным жирным шрифтом выделяются отличающиеся значения). Поля сравниваемых запросов обязательно должны совпадать по наименованию и их количеству. Так же существует возможность сравнить ссылочные поля по ГУИДу, если поставить соотвествующую галку в форме сохранения/загрузки файла, то вместо всех колонок ссылочного типа будут выгружены их уникальные идентификаторы, а дальше все сравнивается как строки, галку нужно ставить как при сохранении таблицы в файл, так и при загрузке.

         Замечания: Обработка была написана на основе консоли запросов для 8.0, сравнение таблиц производится простым перебором строк (подозреваю не самый оптимальный способ :), но искать и отлаживать алгоритмы на тот момент времени небыло, а переделывать сейчас не охота, да и необходимости не возникало); Остальные обработки для 8.1. и 8.2.(толстый клиент) - это просто конвертнутые версии обработки для 8.0. Как мне кажеться потенциал этой обработки довольно обширный, т.к. она позволяет сравнивать не конкретные метаданные, а запросы, которыми можно вытащить практически любую информацию из базы, она не привязана к конфигурации и можно сравивать данные между УТ и БП,  8.0 и 8.1. Пригодится, как мне кажется, программистам или администарторм 1С (я использую ее, допустим, для отладки различных обменов, сравнения копий баз, сравнений остатков между различными конфигурациями и т.д.).

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

        Это моя первая публикация принимается конструкцивная критика в адрес оформления/описания :).

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

Наименование Файл Версия Размер Кол. Скачив.
Консоль запросов 8.2.
.epf 54,09Kb
29.12.12
104
.epf 54,09Kb 104 Скачать
Консоль запросов 8.1.
.epf 54,02Kb
29.12.12
9
.epf 54,02Kb 9 Скачать
Консоль запросов 8.0.
.epf 45,53Kb
29.12.12
12
.epf 45,53Kb 12 Скачать

См. также

PowerTools от 1 000
Подписаться Добавить вознаграждение

Комментарии

1. Евгений Рачковский (eugen91) 04.01.13 13:19
Должна быть крайне удобной в использовании. спасибо
2. Призрак (davdykin) 04.01.13 15:17
Пожалуйста, не скажу что пользуюсь каждый день, но частенько сильно выручает :))
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа