Сортировка метаданных с учетом объектов на замке

Программирование - Практика программирования

Сортировка метаданных префиксы метаданных порядок метаданных в конфигураторе

3
Порой одна конфигурация находится на поддержке нескольких поставщиков (со своими префиксами). Зачастую при обновлении отдельных поставок происходит "перемешивание" объектов с различными префиксами. Работать с такой конфигурацией не очень удобно, но есть способ для сортировки метаданных (в том числе объектов на замке), а также быстрого восстановления сортировки, если случайно очередное обновление было выполнено с взятием порядка метаданных из файла (которое устанавливается по умолчанию).

Некогда была опубликована короткая и очень полезная статья про сортировку метаданных с учетом префиксов  Сортировка метаданных с учетом префиксов

В данной статье я хотел бы немного расширить ее.

Все конфигурации в данном примере созданы самостоятельно и не имеют никакого отношения к типовым конфигурациям.

Тестировалось на платформе 8.3.11.2954

Итак, допустим, имеется конфигурация, содержащая несколько конфигураций поставщиков (для примера я использовал только справочники).

 

 

Намеренно изменим порядок объектов:

 

 

Теперь чтобы отсортировать методом, указанным в статье Сортировка метаданных с учетом префиксов нам, очевидно, необходимо снять замки с объектов. Делать такое в основной конфигурации, конечно же, не следует. Поэтому выгружаем конфигурацию в cf файл.

Создаем чистую базу в которую загружаем полученный cf файл.

Снимаем все замки и выполняем сортировку через глобальную замену.

Отдельно напомню, что при такой замене следует установить признак «Не открывать редакторы при группой замене»:

 

 

Также для скорости следует указывать поиск и замену не во всей конфигурации, а установив отбор по подсистемам. В этом случае, конечно надо быть уверенным, что все объекты корректно разнесены по подсистемам:

(в своих файлах я не стал разносить объекты по подсистемам)

 

 

 

Примечание: бывают случаи, когда имена метаданных слишком длинные и добавление префиксов может вызвать ошибки, что превышена длина имени. В этом случае следует отдельно сортировать такие объекты.

 

Итак, мы получили конфигурацию с отсортированными объектами метаданных:

 

 

 

Нет смысла их переименовывать обратно, т.к. это, как минимум, утомительно :)

Выгружаем полученный cf файл.

 

Заходим в основную конфигурацию с неотсортированными объектами и выбираем «Сравнить объединить с конфигурацией из файла». Т.к. идентификаторы объектов не изменены, то сопоставление объектов произойдет корректно.

 

Примечание: Если конфигурация подключена к хранилищу, то достаточно будет захватить только корень.

 

В окне сравнения снимаем все галки, а вот общий порядок устанавливаем «Из файла»:

 

 

Нажимаем выполнить и любуемся отсортированными данными.

 

При этом cf файл с переименованными объектами метаданных желательно сохранить, т.к. с помощью него можно будет быстро восстановить порядок объектов метаданных, т.к. при очередном обновлении какой-то конфигурации поставщика разработчик при сравнении объединении может забыть установить порядок «из основной конфигурации» и порядок установится «из файла».

3

Скачать файлы

Наименование Файл Версия Размер
Конфигурации из рассмотренного примера
.zip 40,38Kb
16.08.18
0
.zip 40,38Kb Скачать

См. также

Избранное Подписка Сортировка: Древо
В этой теме еще нет сообщений.
Оставьте свое сообщение