В процессе разработки на платформе 1С:Предприятие часто возникают ситуации, когда объект конфигурации, например Роль или Картинка, помечен как измененный, хотя визуально и по коду он полностью совпадает с типовой конфигурацией поставщика. В таких случаях разработчик сталкивается с невозможностью установить флаг «Объект поставщика не редактируется». Рассмотрим пошагово, как проанализировать эту ситуацию и вернуть объект «на замок».
Прежде чем приступать к сложным манипуляциям, необходимо исключить влияние человеческого фактора и кэша платформы. Разберем действия, которые следует предпринять в первую очередь:
Конфигурация -> Поддержка -> Настройка поддержки -> Сравнить, объединить. Если объект не дает установить замок, это может свидетельствовать о наличии скрытых внутренних различий (например, сбились идентификаторы объектов метаданных).Если штатные средства не помогают, применим «тяжелую артиллерию» — перенос объекта через файл конфигурации. Этот метод позволяет «обмануть» платформу, подсунув ей структуру без истории правок.
Порядок действий:
Загрузить конфигурацию из файла. Важно: не применяйте изменения к базе данных, нам нужно только привести дерево метаданных в исходное состояние.Сравнить и объединить с рабочей конфигурацией.Сравнить конфигурации отсутствие расхождений.При выполнении сравнения конфигураций всегда обращайте внимание на настройки объединения. Чтобы не «разъехались» идентификаторы (особенно для добавленных объектов), рекомендуем:
При сравнении конфигураций:
В настройках сравнения обязательно установите признак того, что объединяемая конфигурация является потомком. На финальном этапе сравнения снимите флаг сравнения метаданных по именам. Это позволит системе ориентироваться на внутренние идентификаторы (UUID), что критически важно для сохранения целостности метаданных.
Если «замочек» упорно не возвращается, возможно, проблема кроется во внутренней структуре информационной базы. В таких случаях рекомендуем выполнить Тестирование и исправление (ТИИ). Особое внимание уделите следующим пунктам:
Пересчет итоговРеструктуризация таблиц информационной базыИногда платформа «запоминает» старые состояния объектов в кэше метаданных. Также проверьте, не участвует ли объект в Расширениях конфигурации. Даже если объект в расширении не изменен, само наличие ссылки на него может блокировать возможность изменения статуса поддержки в основной конфигурации.
Надеемся, эти рекомендации помогут вам вернуть порядок в конфигурацию и избавиться от лишних «измененных» объектов!