Имя: Пароль:
1C
1С v8
По списку элементов сделать сопоставление элементов находящихся ниже по иерархии
0 iHell
 
08.06.14
22:28
У меня сегодня день тупых вопросов.
Народ подскажите как написать запрос.
На входе список элементов, надо для каждого элемента найти нижестоящие по иерархии.
На выходе должно получится что-то типа этого:
Элемент1 Подчиненный1
Элемент1 Подчиненный2
Элемент2 Подчиненный3
1 iHell
 
08.06.14
22:45
Наверное сделаю перебором через ПринадлежитЭлементу.
2 Dен
 
08.06.14
22:51
ВЫБРАТЬ
    ИерархическийСправочник.Родитель КАК Элемент,
    ИерархическийСправочник.Ссылка КАК Подчиненный
ИЗ
    Справочник.ИерархическийСправочник
ГДЕ
    ИерархическийСправочник.Родитель В (&СписокЭлементов)
3 iHell
 
08.06.14
22:53
(2) Несколько уровней иерархии.
4 Dен
 
08.06.14
22:55
А так

ВЫБРАТЬ
    ИерархическийСправочник.Родитель КАК Элемент,
    ИерархическийСправочник.Ссылка КАК Подчиненный
ИЗ
    Справочник.ИерархическийСправочник
ГДЕ
    ИерархическийСправочник.Родитель В ИЕРАРХИИ (&СписокЭлементов)
5 Dен
 
08.06.14
22:56
Правильнее будет

ВЫБРАТЬ
    ИерархическийСправочник.Родитель КАК Элемент,
    ИерархическийСправочник.Ссылка КАК Подчиненный
ИЗ
    Справочник.ИерархическийСправочник
ГДЕ
    ИерархическийСправочник.Ссылка В ИЕРАРХИИ (&СписокЭлементов)
6 iHell
 
08.06.14
22:57
(4) А так не выдаст нужный результат. Но за помощь спасибо)
7 Dен
 
08.06.14
22:58
А какой результат нужен?
8 iHell
 
08.06.14
22:59
В запросе (5) а качестве элементов будут не только те, которые в &СписокЭлементов.
9 Ахмадинежад
 
08.06.14
23:22
соединить спр сам с собой по Спр.Ссылка в иерархии(Спр1.Ссылка)
10 yavasya
 
08.06.14
23:29
может и непрофессионально , но работает

номенклатура.родитель или номенклатура.родитель.родитель или номенклатура.родитель.родитель

в этом духе перебрать , то получите нужные данные.

обычно групп неболее 3-ёх
11 iHell
 
09.06.14
23:33
(9) Нельзя.
Вообщем воспользовался я поиском, и данная задача насколько понял решается либо через (1), либо как-то через компоновку (не стал заморачиваться).
12 Defender aka LINN
 
09.06.14
23:36
А чем (2) то не устраивает?
13 iHell
 
09.06.14
23:39
(12) Не устраивает, тем что уровней иерархии заранее неизвестно.
14 Defender aka LINN
 
09.06.14
23:41
(13) Похоже, я задачу неправильно понял.
Тогда да, СКД или циклы в зубы и вперед.
15 iHell
 
09.06.14
23:41
(12) На входе у меня массив из подразделений, надо для каждого найти все нижестоящие по иерархии.