Имя: Пароль:
1C
1С v8
Проблема с выводом выборки в макет внешней обработки
0 corbeau
 
14.07.13
15:23
Процедура НовыйТабДокНажатие(Элемент)
   ТабДок = Новый ТабличныйДокумент;
   ВыбСпр = Справочники.Номенклатура.Выбрать();
   Пока ВыбСпр.Следующий() Цикл
       ПеремМакет = ЭтотОбъект.ПолучитьМакет("Макет");
       ПеремОблМакета = ПеремМакет.ПолучитьОбласть("Область1");
       ПеремОблМакета.Параметры.Заполнить(ВыбСпр.Наименование);
       ТабДок.Вывести(ПеремОблМакета);
   КонецЦикла;
   ТабДок.ОтображатьСетку = Истина;
   ТабДок.Показать();
КонецПроцедуры



{Форма.Форма.Форма(7)}: Ошибка при вызове метода контекста (Заполнить)
       ПеремОблМакета.Параметры.Заполнить(ВыбСпр.Наименование);
по причине:
Несоответствие типов (параметр номер '1')
1 corbeau
 
14.07.13
15:24
Внешняя обработка из файла
2 Фокусник
 
14.07.13
15:51
(0) ПеремОблМакета.Параметры.Заполнить(
выполняет заполнение ВСЕХ параметров области из переданного в неё "параметра номер 1".

В контексте этого, что ожидаешь от передачи в неё параметра с типом СТРОКА ? :)
3 Vexcel
 
14.07.13
16:06
ПеремОблМакета.Параметры.ИМЯ_ПАРАМЕТРА = ВыбСпр.Наименование;
или
ПеремОблМакета.Параметры.Заполнить(ВыбСпр);
4 corbeau
 
14.07.13
18:45
Спасибо большое (2), (3)!
5 Tatitutu
 
14.07.13
23:34
вот так, но лучше запросом, и проверка на группу добавить нужно

Процедура НовыйТабДокНажатие(Элемент)
   ТабДок = Новый ТабличныйДокумент;
   ПеремМакет = ЭтотОбъект.ПолучитьМакет("Макет");
   ПеремОблМакета = ПеремМакет.ПолучитьОбласть("Область1");

   ВыбСпр = Справочники.Номенклатура.Выбрать();
   Пока ВыбСпр.Следующий() Цикл
       ПеремОблМакета.Параметры.Заполнить(ВыбСпр);
       ТабДок.Вывести(ПеремОблМакета);
   КонецЦикла;
   ТабДок.ОтображатьСетку = Истина; //это можно убрать по умолчанию итак Истина
   ТабДок.Показать("Моя табличка");
КонецПроцедуры
Основная теорема систематики: Новые системы плодят новые проблемы.