К статьям

Представление поля

2 мин


Описание

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

К примеру возьмем тип Ссылка. Сама по себе ссылка это уникальный идентификатор хранящийся в базе в виде набора символов, например вот так "cc3f632e-d4e6-11ec-9252-1c1b0de598e0", пользователю эта информация ничего не даст, и нужно показывать ее в терминах бизнес-сущностей с которыми пользователь работает. Например, эту ссылку платформа 1С автоматически преобразует в "Поступление товаров и услуг 000000002 от 16.05.2022 10:30:32", это преобразование и называется получением представления объекта. Это представление мы видим, так как пытаемся вывести значение ссылки на экран. Но тип значения остается ссылочный, и обрабатывается в дальнейшем платформой соответственно. Внутри программного кода платформа оперирует всё тем же уникальным идентификатором. Потому если нам нужна ссылка только для вывода представления корректно будет получить его сразу в запросе. 

Примеры


В языке запросов существует два способа получения представления поля:
Через точку с указанием поля Представление например: 

ВЫБРАТЬ

     Товары.Номенклатура.Представление КАК Номенклатура

ИЗ

    Документ.ПоступлениеТоваровУслуг.Товары КАК Товары  


С помощью функции ПРЕДСТАВЛЕНИЕ например:

 ВЫБРАТЬ

    Представление(Товары.Номенклатура) КАК Номенклатура

ИЗ

    Документ.ПоступлениеТоваровУслуг.Товары КАК Товары

Применять функцию ПРЕДСТАВЛЕНИЕ можно и для ссылочных, и для примитивных типов. Получая представление ссылочных типов, результат будет полностью идентичен получению поля "Представление" от ссылки через точку. Примитивные типы (Строка, Число, Булево ....) преобразуются в строку как есть из значения, которое было передано в параметр функции. 

Важно понимать разницу между функцией языка запросов ПРЕДСТАВЛЕНИЕ и полем Представление у ссылочных типов полей. В случае, когда в поле имеет составной тип данных и в нем могут использоваться и ссылочные типы и примитивные функция ПРЕДСТАВЛЕНИЕ сработает всегда, а получение представления из поля Представление для примитивных типов выдаст ошибку.

Задачи на эту тему: