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

```1c
    ТекстЗапроса = "ВЫБРАТЬ
    | спр.Ссылка КАК Номенклатура,
    | ЗначенияСвойствОбъектов.Свойство,
    | ЗначенияСвойствОбъектов.Значение
    |ИЗ
    | РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    | ПОЛНОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК спр
    | ПО ЗначенияСвойствОбъектов.Объект = спр.Ссылка
    |ГДЕ
    | НЕ спр.ЭтоГруппа
    |{ГДЕ
    | спр.Ссылка.* КАК Номенклатура,
    | ЗначенияСвойствОбъектов.Свойство.*,
    | ЗначенияСвойствОбъектов.Значение.*}";
    ОтборТовара.Текст = текстЗапроса;
    ОтборТовара.Отбор.Добавить("Номенклатура");
    ОтборТовара.Отбор.Добавить("Свойство");
    ОтборТовара.Отбор.Номенклатура.ВидСравнения = ВидСравнения.ВИерархии;
```
---
по сути нет

если я правильно понимаю задачу - нужны все свойства номенклатуры, даже если они не имеют значения
имеем по данным БД
- все свойства вообще, относящиеся к справочнику Номенклатура, соответственно перечислены в Дополнительных реквизитах и сведениях
- свойства, имеющие значения, привязаны к конкретному элементу справочника (объекту) и хранятся на регистре сведений
- свойства, не имеющие значения не привязаны к конкретной номенклатуре (объекту) и соответственно на регистре записи о них отсутствуют

итого
- отбираем все свойства, относящиеся к справочнику Номенклатура из Доп. реквизитов и сведений, помещаем их в ВР, здесь главное все свойства соединить со всей Номенклатурой (ну или с отбором по Номенклатуре) - это будут вообще все возможные свойства для Номенклатуры
- отбираем все свойства со значениями из регистра - это будут свойства конкретного элемента со значениями
- левым соединением с ВР по Объект = ВР.Номенклатура получаем оставшиеся из возможных свойства без значений
---
попробуйте добавить в связи ПВХ ДополнительныеРеквизитыИСведения
---
у меня УТ10,3 тут нет такого справочника( в УНФ я видел такой.
---
получить через Допрекивзиты и сведения все свойства, относящиеся к номенклатуре, запихнуть во временную таблицу
выбрать значения свойств номенклатуры, соединить с временной таблицей по свойству
все, что не имеет значения = 0
---
а свойства относящиеся к номенклатуре те свойства которые уже заполнены ) или я не правильно понял ?
---
по сути нет

если я правильно понимаю задачу - нужны все свойства номенклатуры, даже если они не имеют значения
имеем по данным БД
- все свойства вообще, относящиеся к справочнику Номенклатура, соответственно перечислены в Дополнительных реквизитах и сведениях
- свойства, имеющие значения, привязаны к конкретному элементу справочника (объекту) и хранятся на регистре сведений
- свойства, не имеющие значения не привязаны к конкретной номенклатуре (объекту) и соответственно на регистре записи о них отсутствуют

итого
- отбираем все свойства, относящиеся к справочнику Номенклатура из Доп. реквизитов и сведений, помещаем их в ВР, здесь главное все свойства соединить со всей Номенклатурой (ну или с отбором по Номенклатуре) - это будут вообще все возможные свойства для Номенклатуры
- отбираем все свойства со значениями из регистра - это будут свойства конкретного элемента со значениями
- левым соединением с ВР по Объект = ВР.Номенклатура получаем оставшиеся из возможных свойства без значений
---
у меня 1с УТ10.3, там нет этого справочника. Есть хранилище доп информации. Дополнительные реквизиты и сведения я не нашел.
---
в УТ 10.3 это можно сделать через регистр НазначениеСвойтсвОбъектов
там есть и Объект и Свойство - выбираем все свойства по Объекту (тип справочник Номенклатура)
---
У меня получилось двумя запросами выгрузить сначало все свойства а потом значения. Еще чуть чуть и вопрос решится) спасибо Вам
---
Остался вопрос как выгрузить именно свойства номенклатуры?
---
через ограничение по типу, например через Ссылка
что-то типа НазначениеСвойствОбъектов.Объект ССЫЛКА Спраовник.Номенклатура
---
Выводит все заполненные свойства всей номенклатуры. (
---
СКД запрос спр.номенклатура с левым соед.к РС.ЗСО и вывод через кросстаблицу
---
Я так сделал изначально, свойства выгружаются но только заполненные, левое правое любое соединение.
---
Делаю простую обработку через которую можно будет посмотреть что именно не заполнено у группы товара. Вот не получается пустые свойства вывести. Выводятся только заполненные!
---
Я понимаю что запрос выбирает привязанные к номенклатуре свойства. А нужно чтобы все свойства выгружались а значения именно привязанные
---
```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ЗначенияСвойствОбъектов.Свойство КАК Свойство,
    Номенклатура.Ссылка КАК Ссылка
    ПОМЕСТИТЬ ВременнаяТаблица
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов,
    Справочник.Номенклатура КАК Номенклатура
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВременнаяТаблица.Ссылка КАК Ссылка,
    ВременнаяТаблица.Свойство КАК Свойство,
    Естьnull(ЗначенияСвойствОбъектов.Значение, 0) КАК Значение
    ИЗ
    ВременнаяТаблица КАК ВременнаяТаблица
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО ВременнаяТаблица.Ссылка = ЗначенияСвойствОбъектов.Объект И
    ВременнаяТаблица.Свойство = ЗначенияСвойствОбъектов.Свойство
```
---
Этот запрос все свойства отобразит ?
---
Вообще в идеале было бы если свойства как колонки пошли а значения как строки. Но так по моему нельзя сделать!
---
Да, если значения у свойства нет, то он выведет к примеру: номенклатура - ложка, свойство - вес, значение 0, прилагаю скрины
---
Благодарю! Сейчас у себя проверю.
---
в Ут 10,3 по моему такое не работает
---
Не получается, временнаяТаблица.ССылка не найдено
---
Номенклатура левое соединение к РС. В любом случае будет вся номенклатура независимо от заполненности свойства
---
у меня отбор, я могу выбрать группу.
---
Странно. Попробуйте вот так еще

```1c
    ВЫБРАТЬ РАЗЛИЧНЫЕ
    ЗначенияСвойствОбъектов.Свойство КАК Свойство,
    Номенклатура.Ссылка КАК Ссылка
    ПОМЕСТИТЬ ВременнаяТаблица
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов,
    Справочник.Номенклатура КАК Номенклатура
    ГДЕ
    ТИПЗНАЧЕНИЯ(ЗначенияСвойствОбъектов.Объект) = ТИП(Справочник.Номенклатура)
    ;

    ////////////////////////////////////////////////////////////­////////////////////
    ВЫБРАТЬ
    ВременнаяТаблица.Ссылка КАК Ссылка,
    ВременнаяТаблица.Свойство КАК Свойство,
    ЕСТЬNULL(ЗначенияСвойствОбъектов.Значение, 0) КАК Значение
    ИЗ
    ВременнаяТаблица КАК ВременнаяТаблица
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ПО ВременнаяТаблица.Ссылка = ЗначенияСвойствОбъектов.Объект
    И ВременнаяТаблица.Свойство = ЗначенияСвойствОбъектов.Свойство
```
---
А может кто знает как из выгрузки разнести именно значения по созданным колонкам в ТЗ на форме.
---
Не правильно выгружает
---
ВЫБРАТЬ РАЗЛИЧНЫЕ отбирает различные по всем полям в выборке !
Поэтому в первом запросе поместите во временную таблицу без поля Ссылка.
---
надо исправить запрос
---
А точно методически правильно в регистр лезть я бы из пвх по назначению искал ...
```1c
    ВЫБРАТЬ
    СвойстваОбъектов.НазначениеСвойства,
    СвойстваОбъектов.Ссылка
    ИЗ
    ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов где......
```