Имя: Пароль:
1C
1С v8
Левое соединение, разыменование, и составной тип реквизита. Корректный вариант.
0 Lama12
 
14.07.20
15:50
Туплю. Вопрос как корректно написать запрос?

Пример целевой логики. Знаю разыминовывать составной тип в запросе не корректно.

ВЫБРАТЬ
    ДоговорыКонтрагентов.Ссылка КАК Ссылка,
    ДоговорыКонтрагентовДополнительныеРеквизиты.Значение.Наименование КАК Значение
ИЗ
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентовДополнительныеРеквизиты
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
        ПО (ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка = ДоговорыКонтрагентов.Ссылка)
        

Варианты.
        
Вариант 1.

ВЫБРАТЬ
    ДоговорыКонтрагентов.Ссылка КАК Ссылка,
    ЕСТЬNULL(ВЫРАЗИТЬ(ДоговорыКонтрагентовДополнительныеРеквизиты.Значение КАК Справочник.Номенклатура).Наименование, "") КАК Значение
ИЗ
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентовДополнительныеРеквизиты
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
        ПО (ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка = ДоговорыКонтрагентов.Ссылка)
        
        
Вариант 2.

ВЫБРАТЬ
    ДоговорыКонтрагентов.Ссылка КАК Ссылка,
    ВЫРАЗИТЬ(ЕСТЬNULL(ДоговорыКонтрагентовДополнительныеРеквизиты.Значение, ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)) КАК Справочник.Номенклатура).Наименование КАК Значение
ИЗ
    Справочник.ДоговорыКонтрагентов.ДополнительныеРеквизиты КАК ДоговорыКонтрагентовДополнительныеРеквизиты
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
        ПО (ДоговорыКонтрагентовДополнительныеРеквизиты.Ссылка = ДоговорыКонтрагентов.Ссылка)

Вопрос - какой вариант лучше? Ну или может есть еще лучше? :-)
1 Ненавижу 1С
 
гуру
14.07.20
15:54
где здесь составной тип?
2 Ненавижу 1С
 
гуру
14.07.20
15:56
ЕСТЬNULL(ВЫРАЗИТЬ(ДоговорыКонтрагентовДополнительныеРеквизиты.Значение КАК Справочник.Номенклатура).Наименование, "")
3 Lama12
 
14.07.20
16:05
(2) Спасибо.
4 Жан Пердежон
 
14.07.20
18:47
самый труъ вариант:
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК СправочникНоменклатура
ПО ДоговорыКонтрагентовДополнительныеРеквизиты.Значение = СправочникНоменклатура.Ссылка