|   |   | 
| 
 | Запросом получить все группы с особенными элементами | ☑ | ||
|---|---|---|---|---|
| 0
    
        ДНН 04.01.19✎ 16:36 | 
        Доброго времени суток, коллеги.
 Есть иерархический справочник, иерархия групп и элементов. Может быть произвольное количество уровней иерархии. У элементов есть реквизит "Особенный" типа булево. Есть таблица значений с одной колонкой "Группа". В этой колонке группы данного справочника, причем произвольного уровня иерархии. Как группы первого уровня, так и 2-го, 3-го и т.д Нужно запросом получить таблицу из 2-х колонок: "Группа", "Есть особенный элемент" (не обязательно в этой группе, в том числе во вложенных группах, грубо говоря "в иерархии"). Именно запросом, без запроса сделать не проблема. Запрос не обязательно один, может быть пакет запросов. У кого какие мысли? Спасибо. | |||
| 1
    
        azernot 04.01.19✎ 16:50 | 
        Количество уровней иерархии фиксировано?
 Текст запроса можно программного скомпоновать? Идея в том, чтобы объединить несколько запросов, в которых получить разные уровни групп Для группы 1-го уровня конструкция такая: Выбрать Выбор когда МойСправочник.Владелец = Значение(Справочник.мойСправочник.ПустаяСсылка) ТОгда Значение(Справочник.мойСправочник.ПустаяСсылка) когда МойСправочник.Владелец.Владелец = Значение(Справочник.мойСправочник.ПустаяСсылка) ТОгда МойСправочник.Владелец когда МойСправочник.Владелец.Владелец = Значение(Справочник.мойСправочник.ПустаяСсылка) ТОгда МойСправочник.Владелец когда МойСправочник.Владелец.Владелец.Владелец = Значение(Справочник.мойСправочник.ПустаяСсылка) ТОгда МойСправочник.Владелец.Владелец ... Конец как Группа1Уровня Из Справочники.МойСправочник Где МойСправочник.Особенный | |||
| 2
    
        ДНН 04.01.19✎ 16:59 | 
        Количество уровней иерархии фиксировано?  - нет
 Текст запроса можно программного скомпоновать? - не желательно | |||
| 3
    
        Злопчинский 04.01.19✎ 17:19 | 
        задача мудачно поставлена
 "Нужно запросом получить таблицу из 2-х колонок: "Группа", "Есть особенный элемент" (не обязательно в этой группе, в том числе во вложенных группах, грубо говоря "в иерархии")." Группа21 Группа211 Группа2111 - здесь лежит особенный элемент. какая группа должна быть указана в таблице? Группа21 здесь лежит особенный элемент. Группа211 Группа2111 - здесь лежит особенный элемент. - какая группа/группы должны быть указаны в таблице? | |||
| 4
    
        MetaDon 04.01.19✎ 17:43 | 
        (0) используй ПолныйКод ;     | |||
| 5
    
        МихаилМ 05.01.19✎ 13:04 | 
        (0)
 ищите "транзитивное замыкание запросом" | |||
| 6
    
        Конструктор1С 05.01.19✎ 13:10 | 
        Кривое проектирование приводит к кривым задачам и кривым алгоритмам     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |