Имя: Пароль:
1C
1С v8
Структура справочника через запрос с итогами
0 Topol-M
 
24.04.16
17:23
Что-то совсем засада.
Процедура от "Гения-1С", линк Книга знаний: Получение дерева групп справочниками запросом

Функция обУбратьОшибкиИтоговПоИерархии(Строки, Поле="Ссылка", Родитель=Неопределено) Экспорт
    //Убираем все элементы, равные текущему
    Всего=Строки.Количество();
    Для Инд=1 По Всего Цикл
        Стр=Строки[Всего-Инд];
        Зн=Стр[Поле];
        Если Родитель<>Неопределено И Зн=Родитель Тогда
            Строки.Удалить(Стр);
        Иначе
            обУбратьОшибкиИтоговПоИерархии(Стр.Строки, Поле, Зн);
        КонецЕсли;
    КонецЦикла;
КонецФункции

ВычСправочникДерево=Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
обУбратьОшибкиИтоговПоИерархии(ВычСправочникДерево.Строки);


Если получать справочник вот таким запросом:

ВЫБРАТЬ
    Номенклатура.Ссылка КАК Ссылка
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    Номенклатура.ЭтоГруппа = ИСТИНА
ИТОГИ ПО
    Ссылка ТОЛЬКО ИЕРАРХИЯ

То после этой гениальной процедуры пропадают группы, например

- Товары 1
  - Субтовары 1
  - Субтовары 2
    - Субтовары 2.2

Вот группа Субтовары 1 исчезает совсем из выборки.

Похоже всё дело в
Если Родитель<>Неопределено И Зн=Родитель Тогда
            Строки.Удалить(Стр);
Иначе

Видимо удаляется родительский каталог и все его дети тоже удаляются.
А как можно их поднять на уровень вверх?
Запросом тут не вырулить, надо как-то уже со строками в дереве значений извращаться.
1 Topol-M
 
25.04.16
06:26
Давайте соберемся... понимаю вопрос оччч сложный!
2 hhhh
 
25.04.16
06:29
не заметил дату? 2007-й год.
3 1Сергей
 
25.04.16
06:43
Задача какая? построить дерево справочника и всё?
4 Topol-M
 
25.04.16
06:46
(3) Да, верно, собрать только сами группы без элементов. Но чтобы группы не пропадали. А то остаются только у которых по 2 уровня вложенности.
5 Topol-M
 
25.04.16
06:47
(2) как и что от этого меняется?
6 hhhh
 
25.04.16
06:55
(5) ну, уже тогда поделия Гения пользовались дурной славой, а теперь уж точно никто туда не полезет. Вам нравится ковыряться в окаменелом дерьме, вы и ковыряйтесь, другим-то это зачем.
7 1Сергей
 
25.04.16
06:58
убери Итоги и допиши:

УПОРЯДОЧИТЬ ПО
    Ссылка ИЕРАРХИЯ
8 Topol-M
 
25.04.16
07:08
(7) Спасибо Вам большое добрый человек!