Имя: Пароль:
1C
1С v8
Помогите с запросом
,
0 AnisaL
 
28.08.18
18:28
Доброго вечера, друзья )
Подскажите, пожалуйста, запрос выдает и элементы, помеченные на удаление. Как его поправить, чтобы не считались помеченные на удаление?

ВЫБРАТЬ
    _Таблица.Родитель КАК Родитель,
    КОЛИЧЕСТВО(_Таблица.Артикул) КАК Артикул
ПОМЕСТИТЬ ВТ
ИЗ
    Справочник.Номенклатура КАК _Таблица
ГДЕ
    _Таблица.ЭтоГруппа = ЛОЖЬ
    И _Таблица.ПометкаУдаления = ЛОЖЬ
    И _Таблица.Ссылка.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель.Родитель.Родитель = &Родитель

СГРУППИРОВАТЬ ПО
    _Таблица.Родитель,
    _Таблица.Ссылка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ.Родитель КАК Родитель,
    СУММА(ВТ.Артикул) КАК Артикул
ИЗ
    ВТ КАК ВТ

СГРУППИРОВАТЬ ПО ВТ.Родитель

УПОРЯДОЧИТЬ ПО ВТ.Родитель.Наименование
ИТОГИ ПО ОБЩИЕ
1 MrStomak
 
28.08.18
18:35
(0) НЕ Вт.Родитель.ПометкаУдаления

Что за сумма артикулов?
Почему не "В иерархии"?
2 MrStomak
 
28.08.18
18:36
приоритет "И" и "ИЛИ" еще нужно подучить, сейчас оно явно не так работает, как вы ожидаете
3 AnisaL
 
28.08.18
18:38
(0) + вот результат, он в принципе правильный, только еще считает помеченные, хотя стоит условие

http://www.fotolink.su/v.php?id=c1af402d5e386bc847768aecedeaf427
4 AnisaL
 
28.08.18
18:40
(2) сейчас запрос выдает все все группы и подгруппы, и считает в них количество элементов, если 0 элементов в группе тоже выдает
5 Cool_Profi
 
28.08.18
18:40
ВЫБРАТЬ
    _Таблица.Родитель КАК Родитель,
    КОЛИЧЕСТВО(_Таблица.Артикул) КАК Артикул
ПОМЕСТИТЬ ВТ
ИЗ
    Справочник.Номенклатура КАК _Таблица
ГДЕ
    _Таблица.ЭтоГруппа = ЛОЖЬ
    И _Таблица.ПометкаУдаления = ЛОЖЬ
    И (_Таблица.Ссылка.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель.Родитель = &Родитель
    ИЛИ _Таблица.Ссылка.Родитель.Родитель.Родитель.Родитель = &Родитель)

СГРУППИРОВАТЬ ПО
    _Таблица.Родитель,
    _Таблица.Ссылка
;
6 MrStomak
 
28.08.18
18:42
_Таблица.ЭтоГруппа = ЛОЖЬ
    И _Таблица.ПометкаУдаления = ЛОЖЬ
    И _Таблица.Ссылка В ИЕРАРХИИ (&Родитель)
7 AnisaL
 
28.08.18
18:43
(5) спасибо! точно скобки не так стояли! ))
8 AnisaL
 
28.08.18
18:46
(6) спасибо) и так тоже сработало ;)
9 AnisaL
 
28.08.18
18:56
(6) к сожалению, пропали группы с количеством элементов 0 ! то есть так не работает (
10 AnisaL
 
28.08.18
18:58
11 AnisaL
 
28.08.18
19:37
(7) так тоже к сожалению пропали пустые группы, не знаете как сделать чтобы они выводились?
12 catena
 
29.08.18
04:56
(9)Если вам нужны группы, для чего вы пишите "ЭтоГруппа=Ложь"?
13 AnisaL
 
29.08.18
09:55
(12) мне не то чтобы группы нужны, мне нужно посчитать, сколько в какой группе элементов, и чтобы выводились группы, в которых нет элементов. А это условие ЭтоГруппа=Ложь означает, что нужно считать только элементы в группах, а не группы тоже.
14 dezss
 
29.08.18
10:01
(13) тогда сперва бери все группы и к ним присоединяй элементы...
15 AnisaL
 
29.08.18
10:04
(14) через левое соединение?
16 dezss
 
29.08.18
10:11
(15) ну да...и считай количество...
только отборы на элементы делай в самом соединении, а не в ГДЕ
17 AnisaL
 
29.08.18
10:13
(16) это как?
18 dezss
 
29.08.18
10:15
...
ИЗ
    Справочник.Номенклатура КАК _Таблица
      Левое соединение Справочник.Номенклатура как ном
         где _Таблица.Ссылка = ном.Родитель
            и не ном.ЭтоГруппа
            и не ном.ПометкаУдаления



что-то вроде этого
19 dezss
 
29.08.18
10:16
(18) + а в Где указжи
_Таблица.ЭтоГруппа
20 AnisaL
 
29.08.18
13:57
(19) понятно! спасибо )
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой