|
Запрос в ДеревоЗначений
| ☑ |
0
Вася Теркин
25.10.16
✎
12:43
|
Не хочу рекурсию писать, хотя могу.))) Хочу запросом сделать.
Есть ДеревоЗначений много уровней на форме, на нем галки ставят в колонке Знак. Дальше нужно получить в список значений все значения номенклатуры из всех отмеченных веток (без подчиненных) если у них реквизит реальная равен истина. Отмечена может быть и не реальная, её не надо возвращать. В запросе список отмеченой реальной номенклатуры. со всех уровней дерева. А как в запросе к ветке дерева обращаться?
Колонки дерева
Знак - Булево, данные флажка Знак, выставляется интерактивно
Номенклатура - Справочник
Реальная - Булево, заполняется программно при формировании дерева.
Дерево запросом можно перебрать?
|
|
1
Лефмихалыч
25.10.16
✎
12:46
|
добавь третью колонку, которую заполняй истиной при включении-выключении галок так, как надо. А потом просто НайтиСТроки(, истина)
|
|
2
МихаилМ
25.10.16
✎
12:47
|
у дз есть найтистроки.
|
|
3
Лефмихалыч
25.10.16
✎
12:51
|
(2) я так понял, что проблема в том, что у него условие "ИЛИ", а не И и НайтиСтроки не подходит по этому.
|
|
4
Вася Теркин
25.10.16
✎
12:53
|
А обычным запросом дерево реально обходить?
|
|
5
Лефмихалыч
25.10.16
✎
13:16
|
(4) нет
|
|
6
Лефмихалыч
25.10.16
✎
13:17
|
+(5) толи там только первого уровня строки будут, то ли это вообще не возможно - не помню точно
|
|
7
МихаилМ
25.10.16
✎
13:18
|
первого уровня в построителе запроса
|
|
8
DrShad
25.10.16
✎
13:19
|
можно дерево в ТЗ конвертнуть
|
|
9
shpioleg
25.10.16
✎
13:24
|
(0) Да ты не очкуй рекурсию. Я 100 раз так делал ©
&НаКлиенте
Процедура ЗаполнитьТЧизДерева (Знач Элементы)
ЭлементыДерева = Элементы.ПолучитьЭлементы();
Для каждого стр из ЭлементыДерева Цикл
ЗаполнитьТЧизДерева (стр);
Если НЕ стр.ЭтоГруппа И стр.Сумма Тогда
нс = Объект.Статьи.Добавить();
....
КонецЕсли;
КонецЦикла;
КонецПроцедуры
|
|