Рассмотрим ситуацию: у нас есть большая, доработанная конфигурация 1С, подключенная к хранилищу. Ранее для всех объектов была включена возможность изменения, и теперь стоит задача вернуть на стандартную поддержку ("поставить на замки") около 13 000 неизмененных объектов метаданных. Делать это вручную через меню Конфигурация -> Поддержка -> Настройка поддержки — непозволительно долго. Проанализируем несколько способов решения этой задачи, от самых простых до продвинутых.
Этот подход не решает проблему концептуально, но значительно ускоряет рутинный процесс. Суть в том, чтобы записать действия мыши и клавиатуры для одного объекта и затем запустить их в цикле для всех остальных.
Полезный совет: возможно, будет быстрее сначала установить "замки" на все объекты сразу, а затем вручную или через сравнение с конфигурацией поставщика снять их только с тех нескольких сотен объектов, которые действительно были изменены. Это может сократить количество ручных операций.
Платформа 1С предоставляет инструменты, которые можно использовать не по прямому назначению для решения нашей задачи. Идея в том, чтобы сымитировать процесс обновления конфигурации и в его ходе задать нужные правила поддержки.
Вариант А: Обновление на следующий релиз
Если для вашей конфигурации скоро выйдет обновление от поставщика, можно использовать этот процесс.
.cfu или .cf.Вариант Б: "Обновление" на саму себя
Этот способ более хитрый, он предполагает массовую установку объектов на поддержку через сравнение и объединение с использованием файла поставки (CF). Мы заставим систему думать, что она обновляется, используя саму себя в качестве источника.
.cf) из вашей текущей рабочей конфигурации..cf файлом.Важно: этот метод не всегда работает так, как ожидается. В некоторых версиях платформы "замки" могут не установиться. Обязательно протестируйте на копии базы.
Это самый мощный, но и самый рискованный способ, требующий глубокого понимания структуры конфигурации. Он дает полный контроль над процессом.
Основная идея: выгрузить конфигурацию в XML-файлы, программно изменить файлы, отвечающие за правила поддержки, и загрузить конфигурацию обратно.
Конфигурация -> Выгрузить конфигурацию в файлы.... Для работы с файлами конфигурации (cf, cfu, epf) также существуют специализированные инструменты, такие как В8АнПак.
1cv8.exe CONFIG /DumpConfigToFiles "C:\путь_к_эталону"
Затем получите список изменений относительно эталона:
1cv8.exe CONFIG /DumpConfigToFiles "C:\путь_к_вашей_конфигурации" -getChanges "C:\путь_к_файлу_с_изменениями.txt" -compareWith "C:\путь_к_эталону"
изменениями.txt будет список всех доработанных объектов.
изменениями.txt.Конфигурация -> Загрузить конфигурацию из файлов...Этот метод требует аккуратности, но позволяет решить задачу полностью автоматически и с высокой точностью.
Перед применением любого из описанных методов, особенно тех, что связаны с полной заменой конфигурации, необходимо понимать риски:
.cf платформа может пересоздать таблицы в базе данных, что приведет к потере данных.В заключение, отметим, что сама по себе задача возврата "замков" — это следствие определенного подхода к разработке. Современная методология предполагает перенос доработок в расширения и полный отказ от изменения основной конфигурации, что значительно упрощает процесс будущих обновлений.