Здравствуйте!
Ситуация такая: есть регистр сведений с измерениями "Пользователь" (группа из справочника "Пользователи") и процент. Надо в СКД получить список пользователей, которые находятся в группах РС и по каждому показать процент. Как это можно сделать?
---
так пример же вам написали, добавьте пару команд....

```1c
    выбрать
    рег.Процент,
    спр.Ссылка как Пользователь
    из
    регистрсведений.ВашРегСПроц рег
    внутреннее соединение Справочник.Пользователи спр
    по рег.Пользователь = спр.Родитель //связь по группе
    или рег.Пользователь = спр.Родитель.Родитель //связь по группе 2
    или рег.Пользователь = спр.Родитель.Родитель.Родитель //связь по группе 3
```

и т.д. что тут сложного?
---
в типовых вроде справочник Пользователи не иерархический, а реализовано через отдельный справочник и регистр
---
База УТ, там ещё иерархический справочник
---
Тогда соединением, разве не дает соединить по иерархии?
---
Пытался, не даёт. Или я что-то не так делаю. Да и на просторах интернета пишут, что 1С две таблицы по иерархии соединять не умеет. Думал, может есть какой-то выход
---
Да, действительно не даёт
---
Сообщение было скрыто модератором.
---
Может где-то про это читал, но так как никогда не использовал в соединении иерархию, то забыл наверное
---
Сообщение было скрыто модератором.
---
Извините, ошибся. Процент- это реквизит
---
запрос, однако, писать надо!

примерно такой

```1c
    выбрать
    рег.Процент,
    спр.Ссылка как Пользователь
    из
    регистрсведений.ВашРегСПроц рег
    внутреннее соединение Справочник.Пользователи спр
    по рег.Пользователь = спр.Родитель //связь по группе
```
---
Я насчёт запроса согласен. Но ваш проблемы не решает. Дело в том, что уровень иерархии там разный - может быть от 2 до 4 уровней вложенности относительно указанной группы.
---
Сообщение было скрыто модератором.
---
В общем, в (8) есть более-менее правильный ответ, хотя и не очень красивый
---
так пример же вам написали, добавьте пару команд....

```1c
    выбрать
    рег.Процент,
    спр.Ссылка как Пользователь
    из
    регистрсведений.ВашРегСПроц рег
    внутреннее соединение Справочник.Пользователи спр
    по рег.Пользователь = спр.Родитель //связь по группе
    или рег.Пользователь = спр.Родитель.Родитель //связь по группе 2
    или рег.Пользователь = спр.Родитель.Родитель.Родитель //связь по группе 3
```

и т.д. что тут сложного?
---
Сообщение было скрыто модератором.
---
В моей задаче безразлично, сколько уровней, главное, получить элемент
---
В том-то и проблема, что не хотелось плодить таких монстров. Хотя да, это вариант, но не очень красивый.
---
Покрасивее можно реализовать в СКД. И, если очень надо инфу в код, то сгенерить в дерево или таблицу значений.
---
вы не поверите можно сразу в запросе 100 строчек таких забить
хотя реально используется 5
(остальные на вырост!!!)

вот с бесконечность действительно проблема! (ну, на то она и бесконечность!)
---
А чито, "выбрать * из Х где Н в иерархии (выбрать х из Т)" не работает?
---
так тут нужен ещё процент из регистра
---
нужен ещё процент из регистра*
---
ну Х у вас справочник, а Т регистр, при чем тут *
---
Честно говоря, не совсем понятно, какая буква что означает
---
Не в буквах дело, а в их количестве )))
---
похоже что нет!
в иерархии, она (1С) только параметр понимает
---
в условии ГДЕ работает, проверил

Но все равно это не поможет ТС
---
Про ТС - согласен, у него пока с абстрактным мышлением не сильно хорошо )))
---
Главное не буква! а сочетание букв!