|
Иерархия по произвольному полю в запросе |
☑ |
0
alexshape
26.06.23
✎
11:17
|
Привет, товарищи программисты. хотелось бы узнать, как получить иерархию по определенному полю в запросе, если конечно такое возможно.
Абстракная упрощенная задача:
Есть справочник "Номенклатура" он иерархический. В то же время есть свое поле "ГлавныйРодитель", который имеет тип тоже номенклатура. Как из запроса вытащить данные, в виде
| ГлавныйРодитель
____|ГлавныйРодитель
___________|ГлавныйРодитель
В стандартном варианте получается вот так
| ГлавныйРодитель
____|Родитель
___________|Родитель
|
|
1
Asmody
26.06.23
✎
11:41
|
(0) ничего не понятно, но СКД умеет строить произвольные иерархии
|
|
2
alexshape
26.06.23
✎
11:45
|
(1) не СКД, обычный запрос. В СКД я думаю подобработка присутсвует
|
|
3
rphosts
26.06.23
✎
11:57
|
(2) тебе религия запрещает результат работы скд в таблицу выгрузить или не умеешь?
|
|
4
vde69
26.06.23
✎
12:21
|
(0) а ты уверен, что твой "Главный родитель" не зациклен?
прежде чем городить в запросах левые иерархии сначала озаботся корректностью данных, в противном случае сервак завалишь.... Ну а если не уверен, то пользуйся только типовым функционалом
|
|
5
lodger
26.06.23
✎
12:38
|
(2) емнип, Запрос умеет иерархии только иерархических объектов метаданных.
|
|
6
lodger
26.06.23
✎
12:39
|
хочешь кастома - учись тискать СКД, или выгружай в ТЗ и обходи кодом каждую строчку сам.
|
|
7
alexshape
26.06.23
✎
13:10
|
Спасибо. (5)
(6) все же пришел к выводу, что самый правильный вариант это делать отдельный справочник "Главные родители номенклатуры" с соответствующей ссылкой, но так чтобы для пользователя это было максимально незаметно.
|
|
8
АгентБезопасной Нацио
26.06.23
✎
13:58
|
(7) ключевые слова: "инфостарт", "ildarovich", "транзитивное замыкание"
|
|
9
АгентБезопасной Нацио
26.06.23
✎
13:59
|
(5) запрос умеет почти всё. просто не все умеют запрос.
|
|
10
Смотрящий
26.06.23
✎
15:49
|
(8) Транзитивное замыкание это не про его задачу
(0) ИТОГИ ПО ГлавныйРодитель выведет тебе твою иерархию
|
|
11
АгентБезопасной Нацио
26.06.23
✎
15:52
|
(10) может быть. пример бы исходных данных, и результата - от ТС'а...
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший