|
Количество подчинённых в дереве | ☑ | ||
---|---|---|---|---|
0
picom
12.11.21
✎
15:06
|
Коллеги, с пятницей!
Как быстренько получить количество подчиненных элементов в дереве значений (сервер)? |
|||
1
ДенисЧ
12.11.21
✎
15:12
|
Рекурсивненьким цикликом по строчкам.
Или в исходненьком источничечке даннышек. |
|||
2
picom
12.11.21
✎
15:15
|
А если не считать, а просто понять (и простить), есть там ветка или нет?
|
|||
3
ДенисЧ
12.11.21
✎
15:32
|
(2) Вот это можно. Это кошерно. Да и священник из ближней церкви тоже одобрил...
|
|||
4
МихаилМ
12.11.21
✎
15:32
|
(0)универсального способа нет.
для отдельной - перебором. для всех по аналогии задачи https://www.youtube.com/watch?v=mxCpEwXMrs8&list=PLCxkw0ZvwZaZOTdEmO80XzJHvf-DyHx87&index=2&t=425s |
|||
5
Ёпрст
12.11.21
✎
15:35
|
(2) ну и смотри, есть ли элементы в подчиненной коллекции Строки у узла дерева
|
|||
6
picom
12.11.21
✎
15:44
|
&НаСервере
Процедура РасчетХолостыхКомплектов (ДД); НомСтр = 0 ; Для Каждого стр Из ДД.Строки Цикл Если стр.Уровень() = 0 Тогда стр.СобратьНевозможно = ПоискПодчиненных (стр, 1) ; КонецЕсли; НомСтр = НомСтр + 1 ; КонецЦикла; КонецПроцедуры &НаСервере Функция ПоискПодчиненных (СтрокаДерева, уровень) Для Каждого стр Из СтрокаДерева.Строки Цикл Возврат ложь ; КонецЦикла; Возврат истина ; КонецФункции |
|||
7
Kassern
12.11.21
✎
15:47
|
(6) а смысл передавать уровень, если вы его не используете, да и зачем так цикл использовать?
В вашем примере достаточно: стр.СобратьНевозможно = ?(стр.Строки.Количество()=0,Истина,Ложь); |
|||
8
МихаилМ
12.11.21
✎
15:48
|
(6) Алгоритмический кретинизм
|
|||
9
1Сергей
12.11.21
✎
15:49
|
Функция ПоискПодчиненных (СтрокаДерева, уровень)
Возврат (СтрокаДерева.Строки.Количество()=0); КонецФункции |
|||
10
Малыш Джон
12.11.21
✎
15:49
|
(0) у коллекции строк есть функция Количество()
|
|||
11
picom
12.11.21
✎
15:50
|
(7) да, это на коленке
но эльфийский вопросительный знак конечно более зачётный, спасибо, буду использовать. |
|||
12
Kassern
12.11.21
✎
15:51
|
(11) Можете расписать "Если Тогда Иначе КонецЕсли", Если вам так удобнее
|
|||
13
МихаилМ
12.11.21
✎
16:01
|
вот решение
НайтиСтроки(<ПараметрыОтбора>, <ВключатьПодчиненные>) добавляете колонку по ней отбираете, кол-во строк массива = кол-во подчиненных |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |