Доброго дня, коллеги!
Курс Разработка расширений и технологии доработки конфигураций 1С без снятия с поддержки настолько обширный, что вопросы в Мастер-группу поступают очень разноплановые. Тут и вопросы по расширениям, и по механизмам/инструментам обновлений, и по подсистемам БСП. Хорошо, что тренер курса супер-профи своего дела :)
Вопрос
Ответ
Добрый день! В типовой БСП есть процедура ПриЗаполненииСпискаТекущихДел в общем модуле УправлениеПечатью, которая добавляет запись в список текущих дел – проверить совместимость отредактированных пользовательских макетов. Для этого используется форма ПроверкаПечатныхФорм регистра сведений ПользовательскиеМакетыПечати. То есть фактически предлагается пользователю открыть измененные макеты, проверить, что после обновления они не сломались. Это ручной вариант.
Для автоматизации приходит в голову следующий вариант:
- У нас есть две базы: обновленная база и база до обновления (из копии можно развернуть).
- В регистре ПользовательскиеМакетыПечати находим все используемые пользовательские макеты (т.е. отредактированные в режиме “1С:Предприятие”). Только их есть смысл анализировать, все остальные – берутся типовые.
- Для измененных макетов готовим пару файлов – выгружаем макеты в файлы из обновленной базы и из базы до обновления.
- Например, можно подключиться к копии базы до обновления через COM и выгрузить все нужные макеты в файлы.
- Если файлы идентичны, то никаких действий не требуется. Для проверки идентичности можно вычислять контрольную сумму файлов – MD5, SHA1 и т.д.
- Если файлы отличаются, то надо сравнить макеты. Тут можно использовать механизм платформы по сравнению файлов (в конфигураторе в меню Файл – Сравнить файлы). Вот это действие, скорее всего, надо выполнить вручную. В случае необходимости – изменить пользовательский макет.
Так можно уменьшить ручную работу по анализу изменений.
Есть еще идея – вывести отчет о сравнении новой конфигурации со старой. В отчете искать изменения по слову “макет”, попытаться распарсить отчет.
Вопрос
Ответ
Отличный вариант! Добавление нового ресурса не должно негативно повлиять, потому что это непериодический независимый регистр сведений, никакие итоги для него не определены, просто добавляется дополнительное поле в таблицу базы данных. Нужно только проанализировать существующий программный код конфигурации, внести необходимые доработки, чтобы не потерять нигде при записи в базу новый ресурс регистра.
Разработка расширений и технологии доработки конфигураций 1С без снятия с поддержки.