|   |   | 
| 
 | v7: Запрос, левое соединение | ☑ | ||
|---|---|---|---|---|
| 0
    
        salvator 07.04.22✎ 12:22 | 
        Доброго дня!
 Напомните, пожалуйста, как в 7.7 сделать левое соединение? К примеру, мне к таблице справочника нужно присоединить таблицу остатков из регистра, если остатка нет, то в соответствующей строке выводить 0. То ест нужны все элементы справочника, а не только те, где есть остатки. | |||
| 1
    
        Андрей_Андреич naïve 07.04.22✎ 12:24 | 
        Что-то типа Товар=Справочник.Номенклатура.ТекущийЭлемент,Регистр.Останки.Номенклатура     | |||
| 2
    
        Builder 07.04.22✎ 12:31 | 
        (1) Вообще то проще 
 Группировка Номенклатура Все | |||
| 3
    
        salvator 07.04.22✎ 12:35 | 
        (2) Вроде то, что нужно. В этом случае только элементы выведутся, без групп? Группы мне не нужны.     | |||
| 4
    
        Builder 07.04.22✎ 12:38 | 
        (3) Группировка Номенклатура Все Без Групп     | |||
| 5
    
        salvator 07.04.22✎ 12:41 | 
        (4) Отлично, спасибо!     | |||
| 6
    
        salvator 07.04.22✎ 12:54 | 
        Дополню вопрос еще одним.
 Сейчас я вывожу элемент номенклатуры и остаток. Нужно добавить условие: что элемент номенклатуры не принадлежит определенной группе. Как добавить условие? Запрос сейчас такой: Период с НачДата по КонДата; Товар = Справочник.Номенклатура.ТекущийЭлемент, Регистр.ОстаткиТоваров.Товар; Количество = Регистр.ОстаткиТоваров.ОстатокТовара; Функция КонОст = КонОст(Количество); Группировка Товар Без Групп Все; | |||
| 7
    
        Builder 07.04.22✎ 13:08 | 
        (6) 
 Как то так вроде Период с НачДата по КонДата; Товар = Регистр.ОстаткиТоваров.Товар; Количество = Регистр.ОстаткиТоваров.ОстатокТовара; Функция КонОст = КонОст(Количество); Условие (НЕ (Товар в ВыбГруппа)) Группировка Товар Без Групп Все; | |||
| 8
    
        salvator 07.04.22✎ 13:23 | 
        (7) Не работает, выводятся позиции из выбранной группы. Может, как-то условие на родителя нужно накладывать, а не на "Товар"?     | |||
| 9
    
        Builder 07.04.22✎ 14:10 | 
        (8) Ну так у тебя условие стоит Все, вот они все и выводятся.
 Попробуй так Период с НачДата по КонДата; Товар = Справочник.Номенклатура.ТекущийЭлемент, Регистр.ОстаткиТоваров.Товар; Количество = Регистр.ОстаткиТоваров.ОстатокТовара; Функция КонОст = КонОст(Количество); Условие (НЕ (Товар в ВыбГруппа)) Группировка Товар Без Групп; | |||
| 10
    
        salvator 07.04.22✎ 14:13 | 
        (9) Ну тогда позиции без остатков не выведутся     | |||
| 11
    
        Builder 07.04.22✎ 14:16 | 
        (10) Выведутся, поверь :)     | |||
| 12
    
        salvator 07.04.22✎ 15:11 | 
        (11) Проверил, не выводятся.     | |||
| 13
    
        Ёпрст гуру 07.04.22✎ 15:17 | 
        (0) открой ужо наконец, прямые запросы к бд.
 Там всё понятнее и прозрачнее. И быстрее | |||
| 14
    
        salvator 07.04.22✎ 18:20 | 
        (13) Да мне нужно было быстренько обработку сделать и забыть про 7.7) Разобрался, в условии Товар.Родитель указал и все получилось.     | |||
| 15
    
        Злопчинский 07.04.22✎ 23:15 | 
        (7) "Условие (НЕ (Товар в ВыбГруппа))"
 - с такими условиями поосторожнее, в скульном варианте есть косяки с условием НЕ лучше |Условие (Товар.ПринадлежитГруппе(ВыбГруппа)=0); | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |