Имя: Пароль:
1C
1С v8
СКД (Иерархия -> Дерево). Как узнать группировка по какому полю в каком узле дерева?
0 live in sky dreams
 
25.09.19
17:18
Добрый день.

Делаю иерархическую выборку (ТипГруппировкиКомпоновкиДанных.Иерархия) с помощью СКД. Результат выгружаю в дерево значений.

Дерево получается, все хорошо. Но после мне это дерево необходимо перебрать по всем строкам и подчиненным строкам и я понял, что не хватает информации к какому полю группировки относится тот или иной "текущий" узел дерева.
Как-то можно в СКД пометить группировки?
1 runoff_runoff
 
25.09.19
17:22
Родитель
2 live in sky dreams
 
25.09.19
17:42
(1)Эммм... логика прослеживается, но родитель строки с колонками - строка с колонками
3 runoff_runoff
 
25.09.19
17:49
(2) у верхних группировок поля нижних группировок будут равны NULL..
4 live in sky dreams
 
25.09.19
17:52
(3)К примеру, я в каком то n-ом уровне группировки..
Те группировки, которые еще ниже (подчиненные) я узнаю по null. Которые уже выведены по НЕ ЗначениеПоля = Null.
А текущую то как узнать?
5 live in sky dreams
 
25.09.19
17:53
Если к примеру у меня полей 5 выводится и только 1 из них не равно Null? На какой я группировке сейчас из 4-х?
6 runoff_runoff
 
25.09.19
17:57
Уровень()
7 runoff_runoff
 
25.09.19
18:00
(5) неплохоб ы озвучить структуру в компоновке.. например..
Контрагент (иерархия) / Номенклатура (иерархия)
8 live in sky dreams
 
25.09.19
18:00
(6)Вот тут использовано 2 группировки по иерархии

Группа1
-Подгруппа1
--ПодПодГруппа1
---ПодПодПодгруппа1 | К приемру, я вот тут в дереве. Уровень() = 4
----Группа2
-----ПодГруппа2
------ПодПодГруппа2

Из примера выше видно, что уровень может быть и 4, а по сути группировка №2
9 live in sky dreams
 
25.09.19
18:03
(7)
Структура может быть разная. Группировок может быть как 2, так и 5 и 7. СКД строится программно в зависимости от заданных пользователем группировок. (Пользователь дерево натсраивает для формы для удобного просмотра справочника)

Если реквизит справочника участвующий в группировке, Иерархический, то выводится иерархически, как указано в (7). Если реквизит иного типа, то просто как реквизит, без иерархии
10 live in sky dreams
 
25.09.19
18:05
(8) поправка.
", а по сути группировка №2" читать как ", а по сути группировка №1"
11 runoff_runoff
 
25.09.19
18:05
(9) пользователь задал группировки.. пользователь получил ДанныеФормыДерево соответствующими своим ожиданиям.. что еще требуется?.. дерево же уже отобразилось.. он увидел и успокоился..
12 runoff_runoff
 
25.09.19
18:08
(9) да и группировки можно делать прям в динамическом списке.. без всяких промежуточных СКД..
13 live in sky dreams
 
25.09.19
18:08
(11) а потом он жмакнул по элементу дерева и получил соответствующий отбор в списке справа от дерева))
14 live in sky dreams
 
25.09.19
18:09
(12)там иерархии не добиться
15 runoff_runoff
 
25.09.19
18:10
(13) а у списка справа от дерева какая основная таблица?
16 live in sky dreams
 
25.09.19
18:15
Справочник.Номенклатура
17 live in sky dreams
 
25.09.19
18:16
+(16) его собственная иерархия не интересна...
18 runoff_runoff
 
25.09.19
18:18
(16) пусть у нас в дереве "Контрагент (иерархия) / Номенклатура (иерархия)"
стоя на контрагенте, какой отбор должен быть справа?..
19 live in sky dreams
 
26.09.19
09:04
(18) Более реальный пример давайте для справочника Номенклатура группировки: "Вид товара (Иерархия) / Номенклатурная группа (Иерархия)"
Стоя на элементе номенклатурной группы должен быть отбор по значению реквизита "Вид товара"(В ГРУППЕ или равно последнему раскрытому в дереве значению), "Номенклатурная группа" (В ГРУППЕ или равно последнему раскрытому в дереве значению)
20 toypaul
 
гуру
26.09.19
09:11
если СКД строится программно, то в выбранные поля можно добавить поле которое будет специфично только для этой группировки. количество колонок конечно при этом увеличится
21 live in sky dreams
 
26.09.19
09:14
(20)увеличение кол-во колонок не страшно. Скажите что именно вы имеете ввиду? Я не знаю просто что можно добавить, чтобы и в иерархии это выводилось. Напрашиваются "итоги по иерархии" по какому-нибудь ресурсу, но пока не представляю  как по значению этого ресурса в итоге идентифицировть а что же было выше в дереве?
22 live in sky dreams
 
26.09.19
09:54
Ну, похоже через СКД просто задача не решается. Придется обрабатывать дерево перед выводом.
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс