Дерево в УФ

  1. 10 г. назад

    Нужно заполнить дерево и вывести его на форму.
    на форме есть реквизит дерево, со всеми колонками. кнопка, по которой дерево заполняется. код:

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

    вроде все верно, колонки программно созданного дерева и дерева на форме совпадают. отладчик на строчке с передачей значения в реквизит формы говорит, что мТекущаяНастройка - дерево и оно заполнено.
    а вот на самой передаче валится, грит

    Ошибка при вызове метода контекста (ЗаполнитьПоУмолчаниюНаСервере)
    ЗаполнитьПоУмолчаниюНаСервере()
    по причине:
    Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
    по причине:
    Ошибка преобразования данных XDTO:
    НачалоСвойства: v Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
    по причине:
    Ошибка отображения типов:
    Отсутствует отображение для типа '{http://v8.1c.ru/8.1/data/core}ValueTable'

    что за хрень? почему я на сервере программное дерево не могу загрузить в дерево реквизит формы??

  2. Stim почему я на сервере программное дерево не могу загрузить в дерево реквизит формы??

    скорее всего, на форме не ДЗ, а какая-нибудь КоллекцияЧегоТоТам

  3. разобралсо. на форме была ДЗ с колонками с типом произвольного значения.
    и ДЗ с сервера в него не загружалось, потому что у него колонки были строкового типа

или зарегистрируйтесь чтобы ответить!