8.х Запрос по иерархическому справочнику

Тема в разделе "Система компоновки данных (СКД)", создана пользователем Yury, 5 июн 2014.

  1. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Добрый день!
    Вопрос не совсем по СКД, мне нужен просто запрос.

    Есть иерархический справочник, количество уровней не ограничено. Для некоторых элементов справочника установлен какой-то параметр. Можно ли запросом получить значения этого параметра для всех элементов в иерархии?
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    В принципе по группировке можно:) Вы задачу опишите.
  3. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Мне нужна на выходе плоская таблица, которую буду испорльзовать в дальнейших соединениях
    Таблица нужна такого типа:
    Элемент Значение


    А изначально таблица может выглядеть как-то так:
    upload_2014-6-5_16-16-43.png

    Хочу получить в качестве результата запроса вот такую таблицу
    upload_2014-6-5_16-18-40.png
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Т.е. посчитать количество в группе чтоль?
  5. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Нет,
    Для элемента верхнего уровня Болты установлено значение Норма, равное 5, надо вытащить для всех являющихся потомком этого элемента Болты, значение Нормы
  6. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Ну не знаю как на СКД, но программно написать можно.
  7. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Программно я тоже знаю - обход по группировкам.
    Мне надо быстро и сразу для всех.
  8. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Ну тогда Вычисляемое выражение используйте. Либо в запросе ВЫБОР КОГДА ТОГДА
    --- Объединение сообщений, 5 июн 2014 ---
    Еще в СКД можно попробывать использовать функцию Вычислить(), но я так до конца и не разобрался принцип ее действия:), но штука хорошая:)
  9. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    Если б заранее знать уровень иерархии (вложенности), да можно было бы по Родителю связать, но у Родителя может и не установлен параметр, а установлен у какаго нибудь дедушки-прадедушки....
  10. TopicStarter Overlay
    Yury
    Offline

    Yury Опытный в 1С

    Регистрация:
    22 дек 2011
    Сообщения:
    355
    Симпатии:
    4
    Баллы:
    29
    А где про нее можно почитать?
  11. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.771
    Симпатии:
    509
    Баллы:
    204
    Отправил в личку.
  12. nickpugachev
    Offline

    nickpugachev Профессионал в 1С Команда форума

    Регистрация:
    28 май 2012
    Сообщения:
    3.266
    Симпатии:
    131
    Баллы:
    104
    Вариант 1 - куча соединений с разыменованием родителей (Типа Элемент.Родитель.Родитель...Родитель.Норма<>0)

    Вариант 2 - норма в регистре сведений, при записи элемента норма распространяется на его детей в регистре (можно и напрямую в справочник, но в регистр по мне лучше)

Поделиться этой страницей