Имя: Пароль:
1C
1С v8
Проблема при выводе в дерево значений
0 memogolik
 
23.12.13
11:33
Хочу вывести результат запроса в дерево значений используя метод ЗагрузитьКолонку. Но выводится пустое дерево, с лишь заполненной шапкой столбцов. Заранее спасибо за ответы


    // Вставить содержимое обработчика.
    Запрос = Новый Запрос;
    Запрос.Текст =
        "ВЫБРАТЬ
        |    ДоговорыКонтрагентов.Ссылка Договор
        |ИЗ
        |    Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
        |ГДЕ
        |    ДоговорыКонтрагентов.Владелец  В ИЕРАРХИИ(&Владелец)";

    Запрос.УстановитьПараметр("Владелец", ВыбКонтрагент);
    Результат = Запрос.Выполнить();
    Выборка = Результат.Выгрузить();
    Дерево = ЭлементыФормы.ТабличноеПоле.Значение;
    Дерево.Колонки.Очистить();
    МассивТипов = Новый Массив;
    МассивТипов.Добавить(Тип("СправочникСсылка.ДоговорыКонтрагентов"));
    ОписаниеТипов = Новый ОписаниеТипов(МассивТипов);
    Дерево.Колонки.Добавить("Договор",ОписаниеТипов);
    Дерево.Строки.ЗагрузитьКолонку(Выборка.ВыгрузитьКолонку(0),"Договор");
    ЭлементыФормы.ТабличноеПоле.Значение=Дерево;
    ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();


Выборка.ВыгрузитьКолонку(0)- вычисляется корректно - массив элементов справочника договоров контрагентов.
1 Asmody
 
23.12.13
11:35
к таб.полю изначально реквизит типа ДеревоЗначений привязан? вот и выгружай в него
2 memogolik
 
23.12.13
11:37
(1) ТабличноеПоле элемент с одноименным типом на форме, тип значения указан "ДеревоЗначений".
3 memogolik
 
23.12.13
11:41
Изменил вывод на

МассивТипов = Новый Массив;
    МассивТипов.Добавить(Тип("СправочникСсылка.ДоговорыКонтрагентов"));
    ОписаниеТипов = Новый ОписаниеТипов(МассивТипов);
    ЭлементыФормы.ТабличноеПоле.Значение.Колонки.Добавить("Договор",ОписаниеТипов);
    ЭлементыФормы.ТабличноеПоле.Значение.Строки.ЗагрузитьКолонку(Выборка.ВыгрузитьКолонку(0),"Договор");
    
    ЭлементыФормы.ТабличноеПоле.СоздатьКолонки();

Результат тотже.
4 Necessitudo
 
23.12.13
11:47
А если сделать ручками колонки в ДЗ и туда выгрузить результат   запроса?
5 Necessitudo
 
23.12.13
11:48
ну и не забудь ИТОГИ ПО Ссылка
6 memogolik
 
23.12.13
11:52
(4) так я ручками и делаю.
МассивТипов.Добавить(Тип("СправочникСсылка.ДоговорыКонтрагентов"));
    ОписаниеТипов = Новый ОписаниеТипов(МассивТипов);
    ЭлементыФормы.ТабличноеПоле.Значение.Колонки.Добавить("Договор",ОписаниеТипов);
7 memogolik
 
23.12.13
12:05
апп
8 Necessitudo
 
23.12.13
12:38
на форме я имею в виду
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.