Капитально об программе 1С 8.0-8.3-8.4, 7.7

ВЫРАЗИТЬ в запросе

Кроме преобразования строк и числа функция применяется для выделения одного типа в составных реквизитах.

Зачем использовать ВЫРАЗИТЬ для полей составного типа?

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

В случае, когда такое поле не заполнено в нём хранится НЕОПРЕДЕЛЕНО, с которым не совсем удобно работать на выходе:

Пример №1: 

Есть реквизит составного типа: Число+Перечисление

Если выполнить ВЫРАЗИТЬ(Реквизит как ЧИСЛО(15,0)) тогда на выходе получится NULL, что ничем не лучше.

Если вызвать ВЫРАЗИТЬ(Реквизит КАК Перечисление.ВидыЗаявок), в результате получится значение Перечисления.ВидыЗаявок.Пустая(), что вполне удобно.


Вышестоящий пример я привел для ситуации, когда удобство не так заметно.

Пример №2:

Реквизит составного типа: Справочник.ФизическиеЛица+Справочник.Сотрудники

Если вы сделаете отбор в запросе: 

ГДЕ
    Сотрудник ССЫЛКА Справочник.Сотрудник

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

В случае использования конструкции 

ВЫРАЗИТЬ (Сотрудник как Справочник.Сотрудники) как ПолеСотрудник

В данном поле всегда будет значение ссылки и допустимо обращение к нему: в момент обработки результата запроса «ПолеСотрудник.Наименование», ПолеСотрудник.Пустая(), не вызывая ошибки.

Дополнительное преимущество такого использования:

В случае если составное поле имеет тип Справочник.Ссылка или Документ.Ссылка  (любой справочник и любой документ, совместно) при выполнении запроса 1С присоединит все  связанные таблицы:

Если же вы знаете, что там будет и ограничите значения функцией ВЫРАЗИТЬ, такого не происходит — и вы помогаете оптимизатору запросов, а для файловой версии это может оказаться критичным.

В типовых конфигурациях реквизит «ДокументОснование»,»ДокументОприходования», «Партия» или «Сделка»,  торговых документов чаще всего нуждается в таком преобразовании, т.к. составные поля используются редко: чаще разносят по различным реквизитам, которые видимы в зависимости от вида операции/ситуации.

Другие статьи про работу с ВЫРАЗИТЬ: