При сравнении/объединении конфигураций возникла необходимость захватывать объекты в изменяемой конфигурации. Но захватывать точечно, по подсистемам, т.к. эталонная конфигурация - схожая.
Интерфейс Конфигуратора не предоставляет такой функционал...
Посокрушался в тематическом тг-канале на этот счет. Знающие подсказали, что можно такое сделать пакетным режимом запуска Конфигуратора, с указанием файла настроек захватываемых объектов.
Почитал документацию, реализовал инструмент.
Возможности и использование инструмента
Как результат, обработка:
- формирует файл настроек захвата (в т.ч., для захвата объектов в расширении)
- конструирует строку запуска
- может запустить Конфигуратор
При запуске обработки автоматически прочитываются некоторые пути, задается имя файла для сохранения настроек захвата.
На вкладке Подсистемы нужно отметить галками нужные подсистемы.
Для подсистемы можно выбрать режим захвата:
- Подсистема и объекты
- Только подсистема
- Только объекты
Режим захвата можно массово установить выполнением команды Режим захвата...
Можно указать, что требуется захват корня.
Корень и подсистемы захватываются нерекурсивно, без захвата дочерних подсистем/объектов.
Объекты состава подсистемы захватываются рекурсивно, с дочерними объектами.
Чтобы сконструировать данные для захвата, нужно выполнить команду Сконструировать.
При этом формируется строка запуска и содержимое файла настроек. См. на закладке Результат.
Варианты выполнения захвата:
- выполнить команду Запустить конфигуратор
- записать файл с настройками (команда Записать файл), скопировать и выполнить строку запуска, например, в консоли cmd.
Платформы и конфигурации
Разработка велась на платформе 1С:Предприятие 8.3 (8.3.23.1912). Но возможно использовать и на младших платформах, вплоть до 8.3.8 (на которой появилась возможность управлением захватом).
БСП не используется.
Написано на управляемых формах. Но основной функционал реализован в модуле объекта. Так что, переделать и добавить поддержку обычных форм - особой сложности не представляет.
Ссылки
Формат файла настроек захвата: тут.
git-репозиторий проекта: тут.