ОбъектМетаданных: Справочник.ОсновноеПредставление

Свойства · DefaultPresentation

Тип: ОсновноеПредставлениеСправочника. Описывает вид основного представления объектов базы данных (например, ВВидеКода, ВВидеНаименования).

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

ОбъектМетаданных: Справочник.ОсновноеПредставление (MetadataObject: Catalog.DefaultPresentation)

ОбъектМетаданных: Справочник (MetadataObject: Catalog)

ОсновноеПредставление (DefaultPresentation)

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

Использование:
Только чтение.
Описание:
Тип: ОсновноеПредставлениеСправочника.
Описывает вид основного представления объектов базы данных (например, ВВидеКода, ВВидеНаименования).
Доступность:

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

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

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

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

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

Различить техническое имя и подписи карточки/списка

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

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

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

Подготовка

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

  2. Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.

  3. Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.

  4. Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.

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

  6. Все проверки этого блока только читают метаданные собственного справочника. Изменения настроек из подготовки выполняйте вручную в Конфигураторе только новой базы Учебная85, затем обновляйте конфигурацию БД.

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

  8. В свойствах УчебныеТовары задайте Представление объекта = Учебный товар, Представление списка = Учебные товары, Расширенное представление объекта = Карточка учебного товара, Расширенное представление списка = Учебный список товаров, Пояснение = Упражнение без рабочих данных. Основное представление выберите по наименованию. Обновите БД.


Если Метаданные.Справочники.Найти("УчебныеТовары") = Неопределено Тогда
    ВызватьИсключение "Сначала создайте учебный справочник по подготовке";
КонецЕсли;

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

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

  1. Техническое имя УчебныеТовары используется в коде/запросах. Представления описывают пользовательские подписи.

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

  3. ОсновноеПредставление управляет представлением ссылки, например по наименованию. Это не содержимое Наименование конкретного товара.

  4. Сравниваем настройки, а не утверждаем заголовок любого открытого окна: прикладная форма может менять свой заголовок отдельно.

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

  1. Шесть проверок дают Истина, затем показан фактический режим основного представления.

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

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

Разбор назначения подписей без смешения их с именем метаданных и значениями товаров.

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

  1. Локализованные представления зависят от языка; подготовка и проверки рассчитаны на русский интерфейс.

  2. Значение свойства не подтверждает, что конкретный обработчик формы использует его без переопределения.

  3. Не заменяйте имя в программных обращениях строкой заголовка.

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

Определить тип кода номенклатуры до преобразования входящей строки

В КА2 Progress код Номенклатура строковый. Учебный внешний код 000123 сохраняем как строку: превращение в число убирает ведущие нули.

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

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

Подготовка

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

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

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

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

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

Варианты = Метаданные.СвойстваОбъектов;
Описание = Метаданные.Справочники.Найти("Номенклатура");
Если Описание = Неопределено Тогда
    ВызватьИсключение "В учебной конфигурации отсутствует Справочники.Номенклатура";
КонецЕсли;
КодИзОбмена = "000123";
Если Описание.ТипКода = Варианты.ТипКодаСправочника.Строка Тогда
    КодДляПоиска = КодИзОбмена;
    Сообщить("Строковый код: ведущие нули сохранены");
ИначеЕсли Описание.ТипКода = Варианты.ТипКодаСправочника.Число Тогда
    КодДляПоиска = Число(КодИзОбмена);
    Сообщить("Числовой код: формат строки не является значением");
Иначе
    ВызватьИсключение "Неожиданный тип кода: изучите метаданные перед обменом";
КонецЕсли;
Сообщить(Описание.ТипКода = Варианты.ТипКодаСправочника.Строка);
Сообщить(КодДляПоиска = "000123");
Сообщить(Число(КодИзОбмена) = 123);
Сообщить(Описание.СерииКодов = Варианты.СерииКодовСправочника.ВоВсемСправочнике);
Сообщить("Основное представление: " + Строка(Описание.ОсновноеПредставление));
Если Описание.ОсновноеПредставление = Варианты.ОсновноеПредставлениеСправочника.ВВидеНаименования Тогда
    Сообщить("Пользователь видит наименование, но поиск по коду остаётся отдельной операцией");
КонецЕсли;

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

  1. Находим реальное описание Номенклатура из предоставленного XML и проверяем наличие.

  2. СвойстваОбъектов предоставляет типизированные системные значения метаданных, не пользовательское перечисление товаров.

  3. Выбираем преобразование по фактическому ТипКода; текущий строковый код оставляем без преобразования.

  4. СерииКодов определяет область уникальности, ОсновноеПредставление — видимое представление; это разные свойства.

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

  1. В предоставленном XML четыре сравнения Истина: строковый код, сохранённое 000123, отдельно полученное число 123 и серия всего справочника.

  2. В другой версии конфигурации сначала сверяйте ТипКода и СерииКодов; пример не ищет и не создаёт товар.

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

Подготовлена корректная типизация входящего кода без потери ведущих нулей.

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

  1. Не передавайте число 123 вместо строкового кода 000123 по привычке.

  2. Совпадение кода в данной серии ещё не является внешним идентификатором Avito или другого сервиса.

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

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

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

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

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