ОбъектМетаданных: Перечисление.ОбъектРасширяемойКонфигурации

Свойства · ExtendedConfigurationObject

Тип: УникальныйИдентификатор. Свойство используется для заимствованных объектов расширения. Если для расширения установлено свойство "Поддерживать соответствие объектам конфгурации", значение данного свойства заполняется при заимствовании объекта и содержит уникальный идентификатор объекта в расширяемой конфигурации (отображается как имя объекта расширяемой конфигурации или <Объект не найден>). Если после переименования заимствованного объекта ему стал соответствовать другой объект конфигурации и для расширения установлено свойство "Поддерживать соответствие объектам расширяемой конфигурации при переименовании", то значение свойства будет обновлено.

Полное описание, параметры и ограничения

ОбъектМетаданных: Перечисление.ОбъектРасширяемойКонфигурации (MetadataObject: Enum.ExtendedConfigurationObject)

ОбъектМетаданных: Перечисление (MetadataObject: Enum)

ОбъектРасширяемойКонфигурации (ExtendedConfigurationObject)

Доступен, начиная с версии 8.3.15.

Использование:
Только чтение.
Описание:
Тип: УникальныйИдентификатор.
Свойство используется для заимствованных объектов расширения.
Если для расширения установлено свойство "Поддерживать соответствие объектам конфгурации", значение данного свойства заполняется при заимствовании объекта и содержит уникальный идентификатор объекта в расширяемой конфигурации (отображается как имя объекта расширяемой конфигурации или <Объект не найден>).
Если после переименования заимствованного объекта ему стал соответствовать другой объект конфигурации и для расширения установлено свойство "Поддерживать соответствие объектам расширяемой конфигурации при переименовании", то значение свойства будет обновлено.
Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер), мобильный автономный сервер.

Примечание:
Непосредственное редактирование значения свойства не поддерживается.
Использование в версии:

Доступен, начиная с версии 8.3.15.

Методическая информация

Практические примеры

Сравнить происхождение опции, параметра, подсистемы, типа и перечисления

Проверяем базовые описания пяти разных видов. Принадлежность и расширение описывают схему, не значение настройки или бизнес-запись.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Запускайте в учебной копии конфигурации. Примеры читают структуру метаданных, но не создают объекты, не записывают регистры и не проводят документы.

  2. Сверяйте вывод с деревом конфигурации в Конфигураторе. Имена, длины и настройки в УНФ, КА2, БП, УТ 11 и УТ 10.3 могут различаться.

  3. Имена объектов взяты из XML КА2 Progress: C:\claude\KA2\Progress\XML_CF_KA2_PROGRESS. Исходные XML не изменяйте. Выполняйте код только в своей учебной копии соответствующей конфигурации.

  4. В другой конфигурации предварительно найдите аналогичный объект в Конфигураторе и замените только строку имени в поиске. Отсутствие имени обрабатывается до чтения свойств; оно не доказывает отсутствие аналогичной возможности.

  5. Каждый урок запускайте отдельно. Код не вызывает бизнес-функции модулей и обработчики команд, не переключает привилегированный режим и не меняет параметры сеанса.

Опция = Метаданные.ФункциональныеОпции.Найти("ИспользоватьЗаказыКлиентов");
Если Опция = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует ФункциональныеОпции.ИспользоватьЗаказыКлиентов";
КонецЕсли;
Параметр = Метаданные.ПараметрыФункциональныхОпций.Найти("Организация");
Если Параметр = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует ПараметрыФункциональныхОпций.Организация";
КонецЕсли;
Подсистема = Метаданные.Подсистемы.Найти("БанкИКассаБазовая");
Если Подсистема = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Подсистемы.БанкИКассаБазовая";
КонецЕсли;
ОпределяемыйТип = Метаданные.ОпределяемыеТипы.Найти("Артикул");
Если ОпределяемыйТип = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует ОпределяемыеТипы.Артикул";
КонецЕсли;
Перечисление = Метаданные.Перечисления.Найти("АмортизационныеГруппы");
Если Перечисление = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Перечисления.АмортизационныеГруппы";
КонецЕсли;
Объекты = Новый Массив;
Объекты.Добавить(Опция);
Объекты.Добавить(Параметр);
Объекты.Добавить(Подсистема);
Объекты.Добавить(ОпределяемыйТип);
Объекты.Добавить(Перечисление);
Для Каждого Описание Из Объекты Цикл
    Сообщить(СтрШаблон("%1 (%2): %3", Описание.Имя, Описание.Синоним, Описание.ПолноеИмя()));
    Сообщить(Описание.Представление());
    Сообщить("Комментарий: " + Описание.Комментарий);
    Сообщить(Описание.Родитель() = Метаданные);
    Сообщить(Описание.ПринадлежностьОбъекта);
    Сообщить(Описание.ОбъектРасширяемойКонфигурации);
    Сообщить("Изменён расширениями: " + Строка(Описание.ЕстьИзмененияРасширениямиКонфигурации()));
    Расширение = Описание.РасширениеКонфигурации();
    Если Расширение = Неопределено Тогда
        Сообщить("Добавившее расширение не получено");
    Иначе
        Сообщить("Добавившее расширение: " + Расширение.Имя);
    КонецЕсли;
КонецЦикла;

Разбор по шагам

  1. Получаем пять конкретных корневых описаний, проверяя каждый поиск.

  2. ПолноеИмя различает вид объекта; Синоним, Представление и Комментарий нужны человеку.

  3. Все выбранные объекты корневые, поэтому сравниваем их родителя с Метаданные; не распространяем это на вложенную подсистему или значение перечисления.

  4. Не меняем расширения и не смешиваем добавление объекта с изменением уже существующего.

Как проверить результат

  1. Вывод содержит пять блоков, а пять сравнений родителя — Истина.

  2. Без добавившего расширения его Имя не читается; версия конфигурации и настройки остаются прежними.

Ожидаемый результат

Разобран единый контракт происхождения разных корневых описаний.

На что обратить внимание

  1. Наличие изменений расширением не доказывает конфликт или ошибку.

  2. Проверка происхождения не вычисляет функциональную опцию и не меняет её значение.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.