Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 13:15

Как самому заполнить дерево значений?

Автор ППП, 26 ноя 2009, 00:19

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

ППП

Нужна обработка данных иерархически поэтому нужно заполнять (а главное сначала создать) данные в каталоге "дерева". Но при запросе, данные перекидывеются на рандоме из таблицы, а как самостоятельно выбирать и заполнять нужные элементы дерева?

Buh777

1. создаем обработку
далее следует запись данных в дерево значений
ЦитироватьПроцедура ЗаполнениеДерева(Кнопка)

   Дерево.Колонки.Очистить();
   Дерево.Колонки.Добавить("ИмяКолонки");

   // Создать первую строку. Правильнее сказать – создать элемент коллекции.
   // Он помещается в переменную "СтрокаВерхнегоУровня".
   СтрокаВерхнегоУровня = Дерево.Строки.Добавить();

   // В колонку "ИмяКолонки" записать значение "Старшая".
   СтрокаВерхнегоУровня.ИмяКолонки = "Старшая";
   
   // Создать строку, подчиненную "Старшей".
   ПодчиненнаяСтрока = СтрокаВерхнегоУровня.Строки.Добавить();
   ПодчиненнаяСтрока.ИмяКолонки = "Первая подчиненная";
   
   ПодчиненнаяВторогоУровня = ПодчиненнаяСтрока.Строки.Добавить();
   ПодчиненнаяВторогоУровня.ИмяКолонки = "Первая нижняя";
   
   ПодчиненнаяВторогоУровня = ПодчиненнаяСтрока.Строки.Добавить();
   ПодчиненнаяВторогоУровня.ИмяКолонки = "Вторая нижняя";
   
   ПодчиненнаяСтрока = СтрокаВерхнегоУровня.Строки.Добавить();
   ПодчиненнаяСтрока.ИмяКолонки = "Вторая подчиненная";

   // Использование метода позволит увидеть результат работы
   // с деревом значений в табличном поле.
   ЭлементыФормы.Дерево.СоздатьКолонки();

КонецПроцедуры


++++!!!! :befhbt: :befhbt: :befhbt: :befhbt:
не забываем установить текущее значение
ЦитироватьПроцедура ОткрытиеВетки(Кнопка)

   // Сделать текущим именно элемент коллекции "Строки".
   РезультатПоиска = Дерево.Строки.Найти("Первая нижняя", "ИмяКолонки", Истина);

   Если РезультатПоиска <> Неопределено Тогда
      ЭлементыФормы.Дерево.ТекущаяСтрока = РезультатПоиска;   

   КонецЕсли;   

КонецПроцедуры

Теги:

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

Рейтинг@Mail.ru

Поиск