При доработке конфигураций, находящихся на поддержке через расширения возникают проблемы при выпуске вендором новых версий основной конфигурации. Часть проблем можно решить, используя директиву &ИзменениеиКонтроль
, однако при использовании директив &Вместо
,&После
и &Перед
нет типовых средств, позволяющих понять, а не потеряло ли расширение актуальность, не требуется ли доработка переопределенных методов.
Также типовая проверка применимости не учитывает переопределение событий форм и их реквизитов (вместо переопределения методов модуля).
Предлагаемое решение представляет собой внешнюю обработку (CfeUpdater.epf), позволяющую увидеть и исправить все проблемные и потенциально проблемные места в расширении, связанном с основной конфигурацией при обновлении последней на новый релиз.
Сама обработка и исходный код выложены доступны тут: https://github.com/xnd1124/CfeUpdater
Для работы обработки необходимо наличие на компьютере программы, позволяющей выполнять трехстороннее сравнение текстов. Примером таких программ может быть KDiff3, P4Merge.
Обработка использует для разбора текстов с помощью регулярных выражений внешнюю компоненту https://github.com/alexkmbk/RegEx1CAddin и работает как Windows, так и в Linux системах.
Как пользоваться (на примере Linux):
1. В конфигураторе выгрузить в файлы ( в отдельные каталоги)
- Основную конфигурацию до обновления
- Новый релиз основной конфигурации
- Расширение, в котором ведется доработка основной конфигурации
2. В любой конфигурации, содержащей БСП, в режиме предприятия открыть обработку CfeUpdater.epf
При самом первом запуске появятся окна о разрешении подключения бинарного файла. Это связано с использованием внешней компоненты по работе с регулярными выражениями https://github.com/alexkmbk/RegEx1CAddin.
Если все прошло удачно, то в первый раз появится окно, уведомляющее об успешной регистрации компоненты (при дальнейшей работе окна появляться не будут)
3. По гиперссылке "Настройки" открыть панель настроек и указать путь к программе сравнения текстов (например Kdiff3)
P.S. Если в качестве программы выбрана Kdiff3 или P4merge, то программа автоматически подставит параметры командной строки, необходимые для запуска процедуры сравнения. Для остальных программ, параметры требуется прописать вручную
4. Указать путь к трем предварительно выгруженным каталогам с исходным кодом
5. Нажать кнопку "Анализ", в результате чего выведется дерево, содержащие все моменты, требующие внимания при обновлении
6. Для детального анализа изменений в методе - после двойного клика на строке откроется окно с детальным сравнением различий в методе