|
Дерево значений. |
☑ |
0
antihacker
20.07.18
✎
07:52
|
Всем привет! Есть дерево значений. Как можно выбрать все строки по отбору
СтруктурныйОбзорДЗ_РФЗ = РеквизитФормыВЗначение("СтруктурныйОбзорДЗ");
ОтборВыбранные = Новый Структура;
ОтборВыбранные.Вставить("Выбрать",Истина);
Одним махом ? Мне сейчас придется опускаться на уровень и там применить этот отбор еще раз. И так далее.
|
|
1
1Сергей
20.07.18
✎
08:02
|
Что с ними делать потом?
так, рекурсией можно
|
|
2
antihacker
20.07.18
✎
08:11
|
Да рекурсией можно
Процедура ОбходДереваДетально(ПереданноеДер)
Для Каждого СтрПолученногоДерева Из ПереданноеДер.Строки Цикл
Если СтрПолученногоДерева.Выбрать Тогда
Сообщить(СтрПолученногоДерева.Организация);
КонецЕсли;
Если СтрПолученногоДерева.Строки.Количество()>0 Тогда
Если СтрПолученногоДерева.Выбрать Тогда
Сообщить(СтрПолученногоДерева.Организация);
КонецЕсли;
ОбходДереваДетально(СтрПолученногоДерева);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Но рекурсия не нравиться тем, что надо обходить все строки. А мне хочется на текущем уровне выбрать только по условиям отбора.
|
|
3
Lexey_
20.07.18
✎
08:12
|
(2) сейчас как ищешь?
|
|
4
antihacker
20.07.18
✎
08:13
|
И еще вторая проблема. Если текущая строки не удовлетворяет условию. то не означает что у нее есть подстрока которая удовлетворяет условию. Можно прозевать эти подстроки.
Сейчас пока рекурсия.
|
|
5
antihacker
20.07.18
✎
08:14
|
Ой. " то не означает что у нее НЕТ подстрока которая удовлетворяет"
|
|
6
Lexey_
20.07.18
✎
08:14
|
(4) НайтиСтроки() чем не устраивает?
|
|
7
antihacker
20.07.18
✎
08:15
|
Lexey_, чуть выше ответил. Можно прозевать подстроки, которые удовлетворяют отбор
|
|
8
Lexey_
20.07.18
✎
08:17
|
(7) не прозеваешь
|
|
9
Dvoe4nik
20.07.18
✎
08:17
|
(7) выгрузить дерево В ТЗ взапрос и потом обратно в дерево..
|
|
10
Dvoe4nik
20.07.18
✎
08:18
|
+ (9) муторно правда
|
|
11
antihacker
20.07.18
✎
08:32
|
Lexey_. как не прозеваешь ? У строка1 есть подстроки, которые удовлетворяют условию. Вот их будем прозевать так как родитель выпал из отбора
|
|
12
Ненавижу 1С
гуру
20.07.18
✎
08:35
|
(11) НайтиСтроки смотри второй параметр
|
|
13
antihacker
20.07.18
✎
08:44
|
Ога вот это новость. Работает. Спасибо !
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший