ОбъектМетаданных: Подсистема.Имя

Свойства · Name

Тип: Строка. Имя объекта метаданных.

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

ОбъектМетаданных: Подсистема.Имя (MetadataObject: Subsystem.Name)

ОбъектМетаданных: Подсистема (MetadataObject: Subsystem)

Имя (Name)

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

Использование:
Только чтение.
Описание:
Тип: Строка.
Имя объекта метаданных.
Доступность:

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

Примечание:
Имя должно состоять из одного слова, начинаться с буквы и не содержать специальных символов, кроме «_».
Использование в версии:

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

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

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

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

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

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

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

Подготовка

  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. Проверка происхождения не вычисляет функциональную опцию и не меняет её значение.

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

Проверить настройки раздела Банк и касса, не путать их с правами

Подсистема описывает участие в интерфейсе. КомандныйИнтерфейс и Справка в этом API не возвращают персональный список кнопок или текст HTML.

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

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

Подготовка

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

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

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

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

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

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

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

  1. Имя БанкИКассаБазовая и синоним Банк и касса имеют разные назначения.

  2. Флаги интерфейса и одной команды описывают схему раздела.

  3. Неопределено у КомандныйИнтерфейс и Справка — ограничение прикладного API, не отсутствие раздела.

  4. Права, функциональные опции и персональные настройки проверяются отдельно.

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

  1. В указанном XML включение в интерфейс — Истина, одна команда и включение справки — Ложь.

  2. Два сравнения с Неопределено дают Истина по справке. Текущий интерфейс пользователя не был изменён.

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

Разделены настройки подсистемы и фактический персональный интерфейс.

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

  1. ВключатьВКомандныйИнтерфейс = Истина не гарантирует видимость всем пользователям.

  2. Картинка подсистемы не является её названием или исходным файлом справки.

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

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

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

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

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