| 
    
            
         
         | 
    
  | 
Как получить список самых верхних уровней списка справочника | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        serg-lom89    
     17.02.16 
            ✎
    14:13 
 | 
         
        Есть список элементов справочника по определенному отбору.
 
        Как получить список самых верхних уровней этого списка из запроса?  | 
|||
| 
    1
    
        mikecool    
     17.02.16 
            ✎
    14:30 
 | 
         
        Где Родитель = ПУстаяСсылка     
         | 
|||
| 
    2
    
        Fragster    
     гуру 
    17.02.16 
            ✎
    14:34 
 | 
         
        в СКД? или в коде?     
         | 
|||
| 
    3
    
        Александр Б    
     17.02.16 
            ✎
    14:37 
 | 
         
        ВЫБОР КОГДА Родитель = Значение(Справочник.ИмяСправочника.ПустаяСсылка) ТОГДА Ссылка
 
        КОГДА Родитель.Родитель = Значение(Справочник.ИмяСправочника.ПустаяСсылка) ТОГДА Родитель КОГДА Родитель.Родитель.Родитель = Значение(Справочник.ИмяСправочника.ПустаяСсылка) ТОГДА Родитель.Родитель И так далее сколько нужно до максимального количества уровней в иерархии. Работать будет быстро и надёжно.  | 
|||
| 
    4
    
        serg-lom89    
     17.02.16 
            ✎
    14:38 
 | 
         
        (3) долго писать..решил обойтись как нить обходом результата запроса     
         | 
|||
| 
    5
    
        serg-lom89    
     17.02.16 
            ✎
    14:39 
 | 
         
        (2) в коде     
         | 
|||
| 
    6
    
        Александр Б    
     17.02.16 
            ✎
    14:40 
 | 
         
        (4) плохое решение     
         | 
|||
| 
    7
    
        Кир Пластелинин    
     17.02.16 
            ✎
    14:44 
 | 
         
        (6) а в (3) хорошее?     
         | 
|||
| 
    8
    
        Александр Б    
     17.02.16 
            ✎
    14:45 
 | 
         
        (6) лучшее. Предложи лучше     
         | 
|||
| 
    9
    
        Александр Б    
     17.02.16 
            ✎
    14:45 
 | 
         
        (8) к (7)     
         | 
|||
| 
    10
    
        Маратыч    
     17.02.16 
            ✎
    14:45 
 | 
         
        (8) В (1) же предложили, зачем велосипед изобретать?     
         | 
|||
| 
    11
    
        Маратыч    
     17.02.16 
            ✎
    14:46 
 | 
         
        +(10) А, понял, условие не сразу вкурил, сорри.     
         | 
|||
| 
    12
    
        serg-lom89    
     17.02.16 
            ✎
    14:55 
 | 
         
        (10) так если я установлю отбор по пустому родителю и еще какой нить отбор то будет пустой запрос.разве не так?     
         | 
|||
| 
    13
    
        Маратыч    
     17.02.16 
            ✎
    14:57 
 | 
         
        (12) Там фигня получится, ага.
 
        Во, не так давно на эту страницу натыкался: v8: Из справочника вернуть Родителя Самого Верхнего уровня.  | 
|||
| 
    14
    
        Александр Б    
     17.02.16 
            ✎
    15:06 
 | 
         
        (12) и такое нет проблем сделать.
 
        Решение в (3) проверено на практике. При огромном количестве номенклатуры (>100тыс.) и большом количестве вложенности (до 10) запросы с функцией "В ИЕРАРХИИ" просто вешали сервер на длительное неизвестное время. Решение же в (3) выдаёт результат за несколько секунд.  | 
|||
| 
    15
    
        Александр Б    
     17.02.16 
            ✎
    15:07 
 | 
         
        +(14) а некоторые решения, предложенные в теме из (13) так вообще предполагают рекурсивные запросы. Боюсь представить, сколько времени будут отрабатывать код у них.     
         | 
|||
| 
    16
    
        lera01    
     17.02.16 
            ✎
    15:11 
 | 
         
        А если номенклатуру по отобранному списку (Таблица1) соединить с ранее отобранным списком групп верхнего уровня (Таблица2), написав в условии связи что Элемент из 1 таблицы в иерархии элемента из 2 таблицы?     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |