Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
24 окт 2021, 10:19

Рекурсия - ЗаполнитьЗначенияСвойств в ДеревоЗначений - пропадает иерархия

Автор метис метис, 15 сен 2016, 12:12

0 Пользователей и 1 гость просматривают эту тему.

метис метис

1С 8.3 У.ф.: Рекурсией копирую значения свойств (ЗаполнитьЗначенияСвойств) из одного ДеревоЗначений в другое ДеревоЗначений (оба реквизиты формы, колонки реквизитов полностью совпадают) с условием:

Для Каждого СтрокаДерева Из Дерево Цикл
Если СтрокаДерева["Пометка"] = 1 Тогда
СтрокаНовая = ДеревоСПометкой.ПолучитьЭлементы().Добавить();
ЗаполнитьЗначенияСвойств(СтрокаНовая, СтрокаДерева);
КонецЕсли;

КоллекцияЭлементов = СтрокаДерева.ПолучитьЭлементы();

Если КоллекцияЭлементов.Количество() > 0 Тогда
ЗаполнениеНовогоДереваОбходом(КоллекцияЭлементов, ДеревоСПометкой);
КонецЕсли;
КонецЦикла;


Проблема в том, что в новом ДеревоЗначения (ДеревоСПометкой) пропадает иерархия, то есть, если его обходить рекурсией, то оно обходится как ТаблицаЗначений, то есть в коде:

КоллекцияЭлементов = СтрокаДереваCПометкой.ПолучитьЭлементы();
Если КоллекцияЭлементов.Количество() > 0 Тогда


далее КоллекцияЭлементов.Количество() никогда не становится больше нуля.
При этом преверял - все значения нового дерева заполнены, в т. ч. Родитель. Выдаются все элементы, но без иерархии.
Подскажите, пожалуйста, где я допустил ошибку?

ilyay

Лучше делать это на сервере с настоящим деревом (РеквизитФормыВЗначение и обратно).
Чтобы была иерархия, нужно создавать подчиненные элементы.

ЗаполнениеНовогоДереваОбходом(КоллекцияЭлементов, ДеревоСПометкой);
вместо ДеревоСПометкой поставить СтрокаНовая?

метис метис

Цитата: ilyay от 15 сен 2016, 12:38
ЗаполнениеНовогоДереваОбходом(КоллекцияЭлементов, ДеревоСПометкой);
вместо ДеревоСПометкой поставить СтрокаНовая?
Оно,(как стыдно-то), большое спасибо!

Теги:

Похожие темы (5)

68491

Ответов: 1
Просмотров: 1296

61465

Ответов: 15
Просмотров: 5393

35702

Ответов: 0
Просмотров: 1327

1961

Ответов: 2
Просмотров: 4592

Рейтинг@Mail.ru Rambler's Top100

Поиск