Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 мар 2024, 13:39

Элементы Формы (Программное создание таблицы на форме и ручное заполнение)

Автор SpiriTMan777, 02 авг 2011, 08:21

0 Пользователей и 1 гость просматривают эту тему.

SpiriTMan777

Всем драсти и Доброго времени суток) вопрос мой более менее сложный,т.к приблизительных ответов я даже не нашел.

Есть Код:
ПолеРегистра=ЭлементыФормы.Добавить(Тип("ТабличноеПоле"),"Таблица",Истина,ЭлементыФормы.Страницы); 

ПолеРегистра.Верх = 30;
ПолеРегистра.Лево = 6;
ПолеРегистра.Ширина = ЭлементыФормы.Страницы.Ширина - 14;
ПолеРегистра.Высота = ЭлементыФормы.Страницы.Высота - 56;
ПолеРегистра.ТолькоПросмотр = Ложь;
ПолеРегистра.ИзменятьПорядокСтрок = Истина;
ПолеРегистра.ИзменятьСоставСтрок = Истина;
ПолеРегистра.СоздатьКолонки();

ПолеРегистра.Колонки.Добавить("Колонка1");
ПолеРегистра.Колонки.Добавить("Колонка2");

ПолеРегистра.ДобавитьСТроку();
//ПолеРегистра.Колонки["Колонка1"].Данные="ываыаы";
//полеРегистра.Колонки["Колонка2"].Данные="цуке";

Проблема в том что последние две строки не заполняют табличное поле данными, как в обычном способе НоваяСтрока=ТП.Добавить(); не работатет... а как в этом случае
даже не знаю как быть, помогите плиз))

SpiriTMan777

ПолеРегистра=ЭлементыФормы.Добавить(Тип("ТабличноеПоле"),"Таблица",Истина,ЭлементыФормы.Страницы); 
//
ПолеРегистра.Верх = 30;
ПолеРегистра.Лево = 6;
ПолеРегистра.Ширина = ЭлементыФормы.Страницы.Ширина - 14;
ПолеРегистра.Высота = ЭлементыФормы.Страницы.Высота - 56;
ПолеРегистра.ТолькоПросмотр = Ложь;
ПолеРегистра.ИзменятьПорядокСтрок = Истина;
ПолеРегистра.ИзменятьСоставСтрок = Истина;
//
ПолеРегистра.СоздатьКолонки();
//
ПолеРегистра.Колонки.Добавить("Колонка1");
ПолеРегистра.Колонки.Добавить("Колонка2");
//
ПолеРегистра.ДобавитьСТроку();
ПолеРегистра.Колонки["Колонка1"].Данные="ываыаы";
полеРегистра.Колонки["Колонка2"].Данные="цуке";

sergejK74

Если ты добавишь на форму табличное поле вручную, то увидишь у него свойство "Данные". Эти данные и отображает поле. Для примера можешь добавить в реквизиты формы Таблицу Значений  - тзПолеРегистра и выполнить этот код.
ЭлементыФормы.Добавить(Тип("ТабличноеПоле"),"ПолеРегистра",Истина); 

тзПолеРегистра.Колонки.Добавить("Колонка1");
тзПолеРегистра.Колонки.Добавить("Колонка2");

ЭлементыФормы.ПолеРегистра.Данные = "тзПолеРегистра";

ЭлементыФормы.ПолеРегистра.Верх = 30;
ЭлементыФормы.ПолеРегистра.Лево = 6;
ЭлементыФормы.ПолеРегистра.Ширина =1000;
ЭлементыФормы.ПолеРегистра.Высота = 500;

ЭлементыФормы.ПолеРегистра.ТолькоПросмотр = Ложь;
ЭлементыФормы.ПолеРегистра.ИзменятьПорядокСтрок = Истина;
ЭлементыФормы.ПолеРегистра.ИзменятьСоставСтрок = Истина;
ЭлементыФормы.ПолеРегистра.СоздатьКолонки();

НоваяСтрока = тзПолеРегистра.Добавить();
НоваяСтрока.Колонка1="ываыаы";
НоваяСтрока.Колонка2="цуке";

НоваяСтрока = тзПолеРегистра.Добавить();
НоваяСтрока.Колонка1="ываыаы2";
НоваяСтрока.Колонка2="цуке2";

Увидишь что в табличном поле добавятся две строчки.
Кнопочка Спасибо - слева!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск