Имя: Пароль:
1C
1С v8
перегрузка массива в колонку табличного поля
0 LivingStar
 
21.08.13
14:00
Выбираю запрос, хочу выгрузить колонку запроса в табличное поле расположенное на форме. Выгружаю колонку в массив, загружаю, выходит ошибка "Метод объекта не обнаружен". Подскажите кому не трудно что я не так делаю?

    Запрос          = Новый Запрос;
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    Номенклатура.Ссылка КАК Номенклатура,
        |    Номенклатура.Наименование,
        |    Номенклатура.ОсновнойПоставщик
        |ИЗ
        |    Справочник.Номенклатура КАК Номенклатура
        |ГДЕ
        |    Номенклатура.ОсновнойПоставщик = &ОснПоставщик
        |
        |УПОРЯДОЧИТЬ ПО
        |    Наименование";
    Запрос.УстановитьПараметр("ОснПоставщик", Поставщик);
    Рез = Запрос.Выполнить();
    Если Не Рез.Пустой() Тогда
        Тз = Рез.Выгрузить();
        НоменклатураПоставщика.ЗагрузитьКолонку(Тз.ВыгрузитьКолонку("Номенклатура"),"Номенклатура");    
    КонецЕсли;
1 Wobland
 
21.08.13
14:01
пытаешься вызвать какой-то метод у того, у кого его нет
2 osa1C
 
21.08.13
14:04
Тз.ВыгрузитьКолонку("Номенклатура") куда выгрузить?
3 Wobland
 
21.08.13
14:07
(2) в ЗагрузитьКолонку()
4 osa1C
 
21.08.13
14:12
(3) Колонка = Тз.ВыгрузитьКолонку("Номенклатура")
НоменклатураПоставщика.ЗагрузитьКолонку(Колонка("Номенклатура"),"Номенклатура");
5 Wobland
 
21.08.13
14:12
(4) и чо?
6 osa1C
 
21.08.13
14:13
+ (4) НоменклатураПоставщика.ЗагрузитьКолонку(Колонка,"Номенклатура"); т.е вот так
7 osa1C
 
21.08.13
14:14
(5) найдёшь свой потерянный метод
8 Wobland
 
21.08.13
14:15
(7) монопенисуально
9 LivingStar
 
23.08.13
13:02
(6) На форме есть табличное поле, типа таблица значений обработки. Вот этот код отрабатывает, не выдает ошибки, но и значений в табличное поле не добавляет! Почему?

    Если Не Рез.Пустой() Тогда
        Тз = Рез.Выгрузить();
        Колонка = Тз.ВыгрузитьКолонку("Номенклатура");
        НоменклатураПоставщика.ЗагрузитьКолонку(Колонка,"Номенклатура");
        //НоменклатураПоставщика.ЗагрузитьКолонку(Тз.ВыгрузитьКолонку("Номенклатура"),"Номенклатура");    
    КонецЕсли;
10 LivingStar
 
23.08.13
13:04
что перебором что ли придется заполнять табличную часть!!!
11 LivingStar
 
23.08.13
13:05
(4) в (0) почти то же самое
12 Wobland
 
23.08.13
13:07
(9) не добавляет или не обновляет?
13 LivingStar
 
23.08.13
13:09
(12) что нужно обновить? в (0) я ничего не обновляю
14 LivingStar
 
23.08.13
13:11
(12) табличная часть без значений остается
сделал поле, при его изменении должна заполняться Тч
она не заполняется
15 Wobland
 
23.08.13
13:17
(13) элемент формы с вожделенными изменениями
16 LivingStar
 
23.08.13
13:20
элементы и так не появляются в поле!!!!

    Если Не Рез.Пустой() Тогда
        Выборка = Рез.Выбрать();
        Пока Выборка.Следующий() Цикл
            НоваяСтрока = ЭтотОбъект.НоменклатураПоставщика.Добавить();
            НоваяСтрока = Выборка.Номенклатура;
        КонецЦикла;
        //Тз = Рез.Выгрузить();
        //Колонка = Тз.ВыгрузитьКолонку("Номенклатура");
        //НоменклатураПоставщика.ЗагрузитьКолонку(Колонка,"Номенклатура");
        //НоменклатураПоставщика.ЗагрузитьКолонку(Тз.ВыгрузитьКолонку("Номенклатура"),"Номенклатура");    
    КонецЕсли;
17 LivingStar
 
23.08.13
13:20
(15) как его обновить то?
18 LivingStar
 
23.08.13
13:21
это не обновляет ЭлементыФормы.НоменклатураПоставщика.ОбновитьСтроки();
19 Wobland
 
23.08.13
13:22
даж не знаю.. мож, есть какой метод типа Перерисовать()?
20 LivingStar
 
23.08.13
13:22
(19) ничего подобного не должно быть!!!!
21 Wobland
 
23.08.13
13:23
(18) ну тогда смотри, что у тебя в НоменклатуреПоставщика
(20) с чего бы?
22 LivingStar
 
23.08.13
13:32
(21) блин у меня там табличное поле висело
поменял на таблицу значений вот это сработало

        Выборка = Рез.Выбрать();
        Пока Выборка.Следующий() Цикл
            НоваяСтрока = НоменклатураПоставщика.Добавить();
            НоваяСтрока.Номенклатура = Выборка.Номенклатура;
        КонецЦикла;

а вот ЗагрузитьКолонку так и ничего не показало (
Ошибка? Это не ошибка, это системная функция.