Имя: Пароль:
1C
 
Программное создание колонок в табличном поле
0 Fargoth
 
23.01.08
20:02
Создаю табличное поле с типом значения "Таблица значений". При открытии выполняется код:

Массив = Новый Массив;
Массив.Добавить("Колонка1");
Массив.Добавить("Колонка2");

Для Каждого ЭлементМассива Из Массив Цикл
   ЭлементыФормы.ТабличноеПоле.Колонки.Добавить(ЭлементМассива);
КонецЦикла;

Появляются новые колонки. Но вот вводимые в них данные не отображаются...
1 ТелепатБот
 
гуру
23.01.08
20:02
2 Garkin
 
23.01.08
20:16
Так они у тебя с данными не связаны.
3 Fargoth
 
23.01.08
20:20
(2) Я не хочу их с данными связывать. Я просто хочу в них вносить значения...
Когда я конструктором создаю новую колонку я ведь не связываю ее с данными?
4 shuhard
 
23.01.08
20:22
>Когда я конструктором создаю новую колонку я ведь не связываю ее с данными?
ты уверен ?
5 Garkin
 
23.01.08
20:25
(3) Ну и вноси, только если колонка не связана с данными то 1С негде хранить эти данные.
Конструктором? связываешь, связываешь. Посмотри свойство "Данные" у колонки после того как создал ее.
6 Fargoth
 
23.01.08
20:28
(5) И как тогда их связать? и с чем?
7 Garkin
 
23.01.08
20:32
Надо понять разницу между "ТаблицейЗначений" и "ТабличнымПолем" - которое лишь отображает ТаблицуЗначений.
8 Fargoth
 
23.01.08
20:36
Массив = Новый Массив;
Массив.Добавить("Колонка1");
Массив.Добавить("Колонка2");
ОписаниеТипов = Новый ОписаниеТипов("Число", Новый КвалификаторыЧисла(15, 2));

Для Каждого ЭлементМассива Из Массив Цикл
   НоваяКолонка = ЭлементыФормы.ТабличноеПоле.Колонки.Добавить(ЭлементМассива);
   ТабличноеПоле.Колонки.Добавить(ЭлементМассива, ОписаниеТипов);
   НоваяКолонка.Данные = НоваяКолонка.Имя;
КонецЦикла;
9 Garkin
 
23.01.08
20:44
(8) Поздравляю, Зачет! :)
Независимо от того, куда вы едете — это в гору и против ветра!