Часто в процессе разработки или сопровождения конфигураций 1С у разработчиков возникает задача вернуть объект, с которого по ошибке или необходимости был снят «замочек» (признак нахождения объекта на поддержке поставщика). В этой статье мы подробно разберем, почему простой метод сравнения и объединения не всегда дает желаемый результат и как правильно привести состояние объекта в соответствие с конфигурацией поставщика.
Прежде чем приступать к действиям, давайте разберемся, что именно означает этот визуальный символ. «Замочек» в конфигураторе 1С сигнализирует о том, что данный объект находится на поддержке у поставщика конфигурации. Когда мы снимаем поддержку для редактирования, мы переводим объект в состояние «Объект редактируется с сохранением поддержки». Даже если мы впоследствии выбираем режим «Изменения запрещены» в окне сравнения и объединения, сам факт изменения статуса в Настройка поддержки сохраняется, и система продолжает считать объект модифицированным.
Для того чтобы вернуть объект в исходное состояние, нам необходимо выполнить следующие действия:
Конфигурация — Поддержка — Настройка поддержки.Важно понимать: система не позволит просто «надеть замочек» обратно, если текущая структура или код объекта отличаются от эталонного состояния в конфигурации поставщика. Для принудительного возврата нам потребуется выполнить сравнение с конфигурацией поставщика. Рассмотрим, как это сделать правильно:
Предварительно убедитесь, что у вас есть актуальный файл поставки (или конфигурация поставщика, выгруженная в файл .cf). Если вы не знаете, где взять чистый файл, выгрузите конфигурацию поставщика отдельно из меню Конфигурация — Поддержка — Обновление конфигурации — Сохранить конфигурацию в файл.
После этого выполните следующие действия:
Конфигурация — Сравнить, объединить с конфигурацией из файла....После того как структура объекта стала идентична поставщику, система может потребовать обновить информацию о поддержке. Для этого в окне Настройка поддержки щелкните правой кнопкой мыши по нужному объекту и выберите пункт, соответствующий установке на поддержку или запрету редактирования. Это действие зафиксирует состояние объекта как «находящегося на поддержке».
Рассмотрим пример того, как это выглядит концептуально в настройках системы:
// Пример логики установки статуса поддержки через конфигуратор:
// 1. Выгрузка поставщика (конф_поставщика.cf)
// 2. Сравнение с основной конфигурацией
// 3. Отмена всех изменений в объекте
// 4. Обновление статуса поддержки через окно настройки
В ходе нашей работы мы выяснили, что мнения разработчиков по поводу «замочков» делятся. С одной стороны, наличие замочка — это отличная защита от случайных действий начинающих специалистов, которые могут случайно изменить типовой код. С другой стороны, на больших конфигурациях, таких как КА 2.4 или КА 2.5, наличие или отсутствие замочков не оказывает критического влияния на производительность процесса обновления. Система все равно будет сравнивать основную конфигурацию с конфигурацией поставщика.
Тем не менее, поддержание чистоты конфигурации и использование механизма поддержки — это правило хорошего тона в разработке на платформе 1С:Предприятие 8. Это позволяет избежать «мусора» в метаданных и облегчает процесс последующих обновлений на новые релизы от вендора.
Если после выполнения всех описанных шагов замочек так и не появился, проверьте, нет ли в объекте изменений, которые вы пропустили. Зачастую это могут быть мелкие правки в форме или добавленный реквизит, который система все еще видит как «свое», а не «поставщика». В таких случаях воспользуйтесь отчетом о сравнении, чтобы найти последний несовпадающий элемент.