Имя: Пароль:
1C
 
Отображение дерева на обычной форме (не хочет)
0 DES
 
17.11.23
21:41
на ОФ форма справочника сделал реквизит типа Дерево значение
Вывел на форму, заполняю реквизит , проверяю в Отладчике - вижу дерево.
ЭтаФорма.ЭлементыФормы.ДеревоЗначение.Значение = ДеревоЗначение;
ЭтаФорма.Обновить();

На  форме пусто! Не отображается.

В чем фишка есть ?
1 Tatitutu
 
17.11.23
21:54
Дерево -ВО ! Вот дубина, кто ж его посадит (с)

СоздатьКолонки()
2 DES
 
17.11.23
22:28
(1) Все создано и проверено в отладчике (написал же)
3 vis
 
17.11.23
22:49
Поищи пример в типовой форме.
4 DES
 
19.11.23
21:00
на форме списка справочника сделал поле ДеревоЗначений.
туда делаю
  Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |     Номенклатура.Родитель КАК Родитель,
   |     Номенклатура.Ссылка КАК Номенклатура  
   |ИЗ  
   |     Справочник.Номенклатура КАК Номенклатура  
   |ИТОГИ ПО  
   |     Родитель";    
   ПромДерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
ЭтаФорма.ЭлементыФормы.Дерево.Значение = ПромДерево;

ничего не выводится. Почему?

Или так:
  Дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);

все равно пустое поле на форме.
Как так то?
5 NorthWind
 
19.11.23
21:22
(4) Там на самом деле все загружается, но чтобы оно стало нормально показываться, надо сделать

ЭлементыФормы.Дерево.СоздатьКолонки();

и можно просто

Дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);

если в данных формы уже есть переменная Дерево с типом ДеревоЗначений, привязанная к элементу формы.
6 DES
 
19.11.23
21:23
Понял, колонки нужно заранее назначить
7 NorthWind
 
19.11.23
21:25
собственно, вам в (1) уже ответили, но вы почему-то проигнорировали...
8 NorthWind
 
19.11.23
21:26
Вот так надо сделать

Запрос = Новый Запрос;
   Запрос.Текст =
   "ВЫБРАТЬ
   |     Номенклатура.Родитель КАК Родитель,
   |     Номенклатура.Ссылка КАК Номенклатура  
   |ИЗ  
   |     Справочник.Номенклатура КАК Номенклатура  
   |ИТОГИ ПО  
   |     Родитель";    
  
   Дерево = Запрос.Выполнить().Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкамСИерархией);
  
   ЭлементыФормы.Дерево.СоздатьКолонки();
Ошибка? Это не ошибка, это системная функция.