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

Методы · FullName

Получает полное имя объекта метаданного. Имя отвечает требованиям, предъявляемым к именам (должно начинаться с буквы, содержать только буквы, цифры или символ "_", может содержать одну точку (не начальный и не конечный символ)).

Синтаксис

ПолноеИмя()

Примеры платформы

Для каждого Объект Из Метаданные.Справочники Цикл
    Сообщить(Объект.ПолноеИмя());
КонецЦикла;
Полное описание, параметры и ограничения

ОбъектМетаданных: ПланВидовХарактеристик.ПолноеИмя (MetadataObject: ChartOfCharacteristicTypes.FullName)

ОбъектМетаданных: ПланВидовХарактеристик (MetadataObject: ChartOfCharacteristicTypes)

ПолноеИмя (FullName)

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

Синтаксис:
ПолноеИмя()
Возвращаемое значение:
Тип: Строка.

Описание:

Получает полное имя объекта метаданного. Имя отвечает требованиям, предъявляемым к именам (должно начинаться с буквы, содержать только буквы, цифры или символ "_", может содержать одну точку (не начальный и не конечный символ)).

Доступность:

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

Пример:

// В конфигурации определены справочники "Банки", "Валюты" и "Товары"

// Результатом работы примера:

Для каждого Объект Из Метаданные.Справочники Цикл
Сообщить(Объект.ПолноеИмя());
КонецЦикла;
// будут сообщения:

// Справочник.Банки

// Справочник.Валюты

// Справочник.Товары

Использование в версии:

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

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

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

Различить подписи ПВХ, родителя метаданных и родителя элемента

Заголовки карточки и списка относятся к схеме. Метод Родитель возвращает родителя объекта метаданных, а не группу, в которой хранится вид характеристики.

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

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

Подготовка

  1. Создайте НОВУЮ пустую файловую базу и назовите корень конфигурации Учебная85. Не добавляйте учебные объекты в УТ/КА2/УНФ/БП и не подключайте расширения.

  2. Конфигуратор → Планы видов характеристик → Добавить: имя УчебныеСвойства, синоним Учебные свойства. Укажите длину кода 10, длину наименования 100, автонумерацию и контроль уникальности включите.

  3. Включите иерархию плана. В свойстве Тип выберите только Число (12 цифр, 2 дробных, неотрицательное) и Строка (30 символов, переменная длина). Дополнительные значения характеристик не назначайте.

  4. Реквизиты, табличные части, предопределённые элементы, формы, команды, макеты, характеристики и дополнительные индексы не создавайте. Модуль объекта и модуль менеджера оставьте пустыми; историю данных выключите.

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

  6. Код этого блока не вызывает Записать, не устанавливает блокировки и не меняет настройки метаданных. Учебные виды характеристик существуют только в памяти.

  7. В Конфигураторе у УчебныеСвойства задайте ПредставлениеОбъекта=Учебное свойство, ПредставлениеСписка=Учебные свойства, расширенные представления соответственно Описание учебного свойства и Учебные виды свойств.

  8. Пояснение=Упражнение без рабочих данных, Комментарий=Создано только для обучения. Обновите конфигурацию БД.

Если Метаданные.ПланыВидовХарактеристик.Найти("УчебныеСвойства") = Неопределено Тогда
    ВызватьИсключение "Создайте собственный план УчебныеСвойства по подготовке";
КонецЕсли;
Описание = Метаданные.ПланыВидовХарактеристик.УчебныеСвойства;
Сообщить(Описание.Синоним = "Учебные свойства");
Сообщить(Описание.ПредставлениеОбъекта = "Учебное свойство");
Сообщить(Описание.ПредставлениеСписка = "Учебные свойства");
Сообщить(Описание.РасширенноеПредставлениеОбъекта = "Описание учебного свойства");
Сообщить(Описание.РасширенноеПредставлениеСписка = "Учебные виды свойств");
Сообщить(Описание.Пояснение = "Упражнение без рабочих данных");
Сообщить(Описание.Комментарий = "Создано только для обучения");
Сообщить("Представление метаданных: " + Описание.Представление());
Сообщить("Полное имя: " + Описание.ПолноеИмя());
Сообщить("Основное представление: " + Строка(Описание.ОсновноеПредставление));
РодительМетаданных = Описание.Родитель();
Сообщить(РодительМетаданных.Имя = "Учебная85");

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

  1. Техническое имя УчебныеСвойства оставляем прежним, а пользовательские представления задаём вручную в подготовке.

  2. Четыре вида подписи и Пояснение сравниваем с ожидаемыми значениями. Комментарий — техническая заметка метаданных, не значение свойства товара.

  3. Представление и ПолноеИмя показывают представление/адрес объекта схемы. ОсновноеПредставление — выбранный режим, не фактическое имя вида свойства.

  4. Родитель() для описания плана относится к дереву конфигурации. У объекта вида свойства есть другое свойство Родитель — ссылка на группу данных.

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

  1. Восемь логических проверок дают Истина.

  2. Полное имя указывает собственный план, родитель метаданных имеет имя Учебная85.

  3. Ни один элемент или группа ПВХ не переименован: это только чтение схемы.

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

Разделены имена/подписи схемы и иерархия её пользовательских данных.

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

  1. Не переименовывайте техническое имя ради заголовка: это затрагивает обращения к объекту и интеграции.

  2. Родитель метода метаданных нельзя присваивать реквизиту Родитель объекта ПВХ: это разные типы и разные деревья.

  3. Если подписи не совпали, сначала проверьте подготовку и обновление конфигурации БД, а не изменяйте код проверок.

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

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

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

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

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

Подготовка

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

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

  3. Нужна учебная конфигурация с регистром бухгалтерии, например БП 3.0. Не предполагаем заранее имя Хозрасчетный.


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

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

  1. От регистра переходим к связанному плану счетов через описание метаданных, а не через произвольную строку имени.

  2. Корреспонденция — настройка структуры регистра; длины и маска относятся к кодам счетов.

  3. ПризнакиУчета относятся к счёту, ПризнакиУчетаСубконто — к аналитике. Это две разные коллекции.

  4. ВидыСубконто — описание плана видов характеристик. Его Тип задаёт допустимые типы значений аналитики, а не перечень уже введённых значений.

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

  1. ПланСчетов в свойствах выбранного регистра совпадает с полным именем, выведенным кодом.

  2. МаксКоличествоСубконто и списки признаков совпадают с Конфигуратором.

  3. Если дополнительный справочник характеристик не задан, его ПолноеИмя не вызывается.

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

Построена цепочка описаний схемы регистра, счетов и аналитик без чтения проводок.

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

  1. Настройки не доказывают правильность проводок и не являются рекомендацией по бухгалтерскому учёту.

  2. МаксКоличествоСубконто — ограничение для одного счёта, не число видов аналитики во всей базе.

  3. Для конкретного счёта состав субконто нужно изучать в его данных; этот пример работает только с метаданными.

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

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

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

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

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