|
v8: УФ Как сделать таблицу значений на форме и обновлять ее |
☑ |
0
profman2012
18.07.12
✎
10:53
|
Вроде элементарная задача. есть обработка. На форме должна быть ТЗ, в которую я пережаю разные таблицы. Что бы посмотреть результат.
В 1с82 без УФ сделано и работает. Все просто:
сделал реквизит формы - Моя_ТЗ и связал его с табличным полем на форме. И когда надо передаю в Моя_ТЗ таблицу и пишу:
ЭлементыФормы.ТабличноеПоле1.ОбновитьСтроки();
ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
В УФ не прокатывает. Как не бился. Как я делал:
Сначала сделал так же реквизит формы - таблица значений. И передаю туда таблицу. Но пишет - типа изменять нельзя.
Тогда сделал переменную и сделал так:
&НаКлиенте
Перем МояТЗ Экспорт;
&НаКлиенте
Процедура ОбновитьТЗ(Команда)
ОбновитьТЗНаСервере(МояТЗ)
// Вставить содержимое обработчика.
КонецПроцедуры
&НаСервере
Процедура ОбновитьТЗНаСервере(МояТЗ)
МояТЗ = Новый ТаблицаЗначений;
МояТЗ.Колонки.Добавить("Колонка1");
КонецПроцедуры
Опять не получается.
Прошу помочь - подскажите как правильно и грамотно сделать
|
|
1
profman2012
18.07.12
✎
10:54
|
т.е. мне надо на УФ создать призвольную ТЗ и передавать туда для отображения произвольные таблицы.
На сервере я получаю ТЗ, но в клиенте не удается ее отобразить
|
|
2
profman2012
18.07.12
✎
11:39
|
неужели никто не делал?
|
|
3
sanja26
18.07.12
✎
11:44
|
НаКлиенте нет ТЗ, на тонком
Передавай коллекцтю колонок с сервера и присваивай потом табличному полю формы свою ТЗ
|
|
4
profman2012
18.07.12
✎
12:01
|
>> НаКлиенте нет ТЗ, на тонком
Это я понял
>>Передавай коллекцтю колонок с сервера и присваивай потом табличному полю формы свою ТЗ
А как передать коллекцию колонок - во что выгружать?
>> и присваивай потом табличному полю формы свою ТЗ
А как? На клиенте?
|
|
5
profman2012
18.07.12
✎
12:01
|
нет ли примера какого?
|
|
6
profman2012
18.07.12
✎
12:09
|
тип табличного поля формы какой?
таблица значений? Или табличный документ ?
|
|
7
profman2012
18.07.12
✎
13:06
|
апну ка
|
|
8
sanja26
18.07.12
✎
13:41
|
ЭлементыФормы.ТабличноеПоле.Колонки.Загрузить(КоллекцияКолонокТЗССервера);
или
Для каждого Колонка из КоллекцияКолонокТЗССервера цикл
ЭлементыФормы.ТабличноеПоле.Колонки.Добавуить();
тра-та-та
конецЦикла
ЭлементыФормы.ТабличноеПоле.Загрузить(ТЗ);
как-то так думаю
|
|
9
profman2012
18.07.12
✎
14:17
|
(8)а как выгрузить с сервера ?
И что значит ЭлементыФормы.ТабличноеПоле.Загрузить(ТЗ) - это к чему - после создания структуры загружаем ТЗ ?
но таблица значений не определена на клиенте.
Или это все на сервере делать?
|
|
10
profman2012
18.07.12
✎
14:58
|
друг! не пропадай
|
|
11
olegves
18.07.12
✎
15:32
|
можешь в реквизиты формы добавить реквизит с типом ТаблицаЗначений, кот будет тебе доступна в серверных и клиентских контекстных процедурах и функциях. Я только с программным добавлением колонок не игрался (там тип реквизита будет немного отличаться по методам, но Найти и НайтиСтроки доступно)
Кури в СинтПоме ДанныеФормыКоллекция
|
|
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший