Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Получить запросом элементы справочника без родителя

Получить запросом элементы справочника без родителя
Я
   prilforreal
 
04.10.18 - 16:14
Добрый день! Нужно запросом получить элементы справочника без родителей, но на выходе получаю пустую выборку.

ПС=Справочники.Контрагент.ПустаяСсылка();
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |    Контрагент.Ссылка КАК Дилер,
        |    Контрагент.ЭлПочта КАК ЭлПочта
        |ИЗ
        |    Справочник.Контрагент КАК Контрагент
        |ГДЕ
        |    НЕ Контрагент.ЭлПочта = """"
        |    И Контрагент.Родитель.Ссылка = &ПС
        |
        |УПОРЯДОЧИТЬ ПО
        |    Контрагент.Наименование";
    
    Запрос.УстановитьПараметр("ПС", ПС);
    РезультатЗапроса = Запрос.Выполнить();
    
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи

        ТЗ=ТЗдилеры.Добавить();
        ТЗ.Дилер = ВыборкаДетальныеЗаписи.Дилер;
        ТЗ.ЭлПочта = ВыборкаДетальныеЗаписи.ЭлПочта;
    КонецЦикла;
 
 
   asady
 
1 - 04.10.18 - 16:16
ВЫБРАТЬ
        |    Контрагент.Ссылка КАК Дилер,
        |    Контрагент.ЭлПочта КАК ЭлПочта
        |ИЗ
        |    Справочник.Контрагент КАК Контрагент ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагент КАК КА_Родитель По Контрагент.Родитель = КА_Родитель.Ссылка
        |ГДЕ
        |    НЕ Контрагент.ЭлПочта = """"
        |    И КА_Родитель.Ссылка ЕСТЬ NULL
        |
        |УПОРЯДОЧИТЬ ПО
        |    Контрагент.Наименование";
   xXeNoNx
 
2 - 04.10.18 - 16:17
(1) фи...
   aleks_default
 
3 - 04.10.18 - 16:17
Справочник из одного контрагента? Оригинальненько...
   Ненавижу 1С
 
4 - 04.10.18 - 16:21
"ВЫБРАТЬ
        |    Контрагент.Ссылка КАК Дилер,
        |    Контрагент.ЭлПочта КАК ЭлПочта
        |ИЗ
        |    Справочник.Контрагент КАК Контрагент
        |ГДЕ
        | Контрагент.Родитель = ЗНАЧЕНИЕ(Справочник.Контрагент.ПустаяСсылка)
        |
        |УПОРЯДОЧИТЬ ПО
        |    Контрагент.Наименование";
   lodger
 
5 - 04.10.18 - 16:25
(0) сократи условие:
        |ГДЕ
        |    Контрагент.ЭлПочта <> """"
        |    И Контрагент.Родитель = ЗНАЧЕНИЕ(Справочник.Контрагент.ПустаяСсылка)
   cons24
 
6 - 04.10.18 - 16:39
Проверять надо Не "Родитель.Ссылка", а "Родитель".
Иначе запрос получает Родитель=ПустаяСсылка, а у неё свойство Ссылка=NULL.
   prilforreal
 
7 - 04.10.18 - 16:43
(4) (5) Спасибо большое, все заработало!) А почему не работало с моим условием?

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует