Имя: Пароль:
1C
1С v8
колнки с неизвестным количеством колонок.
,
0 asder117
 
01.12.13
18:32
Уважаемые есть вопрос. Имеется на форме табличное поле с изменяемым количеством колонок. Как можно на макете создать теже колонки, что и в табличном поле на форме. Пытаюсь сделать так:
Процедура КнопкаВыполнитьНажатие(Кнопка)
Таб=Новый ТабличныйДокумент;
Макет=ПолучитьМакет("Макет");
ОбластьШапка = Макет.Область("Товары|Данные");
Для н=1 По ТабличноеПоле1.Колонки.Количество()-1 цикл
Кол=ТабличноеПоле1.Колонки[н].Заголовок;
ОбластьШапка.Параметр.имяКолонки=Кол;
Если н=1 Тогда
Таб.Вывести(ОбластьШапка);
Иначе
Таб.Присоединить(ОбластьШапка);
КонецЕсли;
КонецЦикла;
Таб.Показать();

Но что-то е выходит подскажите что я не ак делаю.
Колонки не строются, ругается на
{Форма.Форма.Форма(10)}: Ошибка при вызове метода контекста (Вывести)
Таб.Вывести(ОбластьМесяцыШапка);
по причине:
Несоответствие типов (параметр номер '1')

Если я указываю ОбластьШапка.Параметр.ИмяКолонки=Кол; то у меня он ругается на значение не является значением объектного типа(ИмяКолонки).
1 Wobland
 
01.12.13
18:35
одна из черепашек врёт
2 Wobland
 
01.12.13
18:36
а во втором случае платформа говорит правду - нету параметра
3 Wobland
 
01.12.13
18:36
(2) нету свойства Параметр у области
4 m-serg74
 
01.12.13
18:54
(1) я ему на ИСе тоже самое написал)))
5 m-serg74
 
01.12.13
18:54
(3) нету области - ОбластьМесяцыШапка
6 Wobland
 
01.12.13
18:57
(5) по-другому ж ругался бы
7 Wobland
 
01.12.13
18:57
+(6) я про второй случай
8 Wobland
 
01.12.13
18:58
а в первом ругалось бы на неизвестную переменную ОбластьМесяцыШапка
9 m-serg74
 
01.12.13
18:59
(7)  там все запутано то ОбластьШапка, то ОбластьМесяцыШапка,
что на самом деле ХЗ
10 Wobland
 
01.12.13
19:00
что на самом деле, автору рассказывает платформа.
объявляется конкурс на звание лучшего человека-эмулятора платформы
11 asder117
 
01.12.13
19:02
(9) (10) полный код
роцедура КнопкаВыполнитьНажатие(Кнопка)
    Таб=Новый ТабличныйДокумент;
    Макет=ПолучитьМакет("Макет");
        ОбластьМесяцыШапка = Макет.Область("Товары|Данные");
Для н=1 По ТабличноеПоле1.Колонки.Количество()-1 цикл
    Кол=ТабличноеПоле1.Колонки[н].Заголовок;
    ОбластьМесяцыШапка.Параметр.ИмяМес=Кол;
    Если н=1 Тогда
        Таб.Вывести(ОбластьМесяцыШапка);
    Иначе
        Таб.Присоединить(ОбластьМесяцыШапка);
    КонецЕсли;
    
       //Сообщить(ТабличноеПоле1[4][0]);
КонецЦикла;
  Таб.Показать();

КонецПроцедуры
звиняйте если что
12 asder117
 
01.12.13
19:02
(9) отправил данные на тв
13 Wobland
 
01.12.13
19:03
(11) читай (3) до просветления
14 Мимохожий Однако
 
01.12.13
19:06
(12)Напиши в ООН
15 Wobland
 
01.12.13
19:14
(4) дай ссылку на трансляцию, плз
16 m-serg74
 
01.12.13
19:23
(15) тв - тим вьюер
17 asder117
 
01.12.13
19:58
(16) спасибь