|
Программно добавить и заполнить свою колонку в таблице на управляемой форме
| ☑ |
0
AvtorVoprosa
23.06.17
✎
11:18
|
Имеется документ, у которого есть табчасть Товары, смог добавить свою колонку при открытии формы так:
&НаКлиенте
Процедура ПриОткрытии(Отказ)
МенеджерОборудованияКлиент.ПодключитьОборудованиеПриОткрытииФормы(ЭтаФорма, "СканерШтрихкода"); // это тут было уже
ДобавитьКолонкуОстатокНаСервере();
КонецПроцедуры
&НаСервере
Процедура ДобавитьКолонкуОстатокНаСервере()
//Добавляем реквизит в табчасть Товары
нРеквизиты = Новый Массив;
нРеквизиты.Добавить(Новый РеквизитФормы("Остаток", Новый ОписаниеТипов("Число"), "Объект.Товары", "Остаток", Истина));
ИзменитьРеквизиты(нРеквизиты);
//Выводим на форме
нЭлемент = Элементы.Добавить("Остаток", Тип("ПолеФормы"), Элементы.Товары);
нЭлемент.Вид = ВидПоляФормы.ПолеВвода;
нЭлемент.ПутьКДанным = "Объект.Товары.Остаток";
КонецПроцедуры
Теперь надо как-то добавлять туда значения для каждой строки этой таблицы, собственно проблема в том, что не знаю в каком событии (процедуре) это делается на управляемых формах и как. Заранее спасибо.
|
|
1
leonidk
23.06.17
✎
11:28
|
Как вариант
&наСервере
Процедура заполнитьЗнач(Форма)
ТЗДанные = НекийЗапрос(Форма.Объект.ссылка);
Для каждого стр из ТЗДанные цикл
СтрокаФормы = Форма.Объект.Товары[стр.НомерСтроки-1];
СтрокаФормы = стр.НекоеЗначение
КонецЦикла;
КонецПроцедуры
|
|
2
leonidk
23.06.17
✎
11:29
|
//СтрокаФормы = стр.НекоеЗначение
СтрокаФормы.добавленныйреквизит = стр.НекоеЗначение
|
|
3
AvtorVoprosa
23.06.17
✎
11:31
|
(2) А где это все написать, как вызвать это?
|
|
4
AvtorVoprosa
23.06.17
✎
11:38
|
(1) И совсем не понятно, что вы имели ввиду под функцией
НекийЗапрос()
|
|
5
Мыш
23.06.17
✎
11:41
|
(0) Реквизиты добавлять предпочтительнее в процедуре "ПриСозданииНаСервере()"
|
|
6
Мыш
23.06.17
✎
11:44
|
(3) ПриЧтенииНаСервере()
Для каждого СтрокаДанных из Объект.Товары Цикл
СтрокаДанных.Остаток = 100500;
КонецЦикла;
|
|
7
AvtorVoprosa
23.06.17
✎
11:56
|
(6) Поле Остаток не обнаружено
|
|
8
Мыш
23.06.17
✎
12:58
|
(7) Тогда туда же, в "ПриСозданииНаСервере". Плюс обработчики изменения таблицы. Для новых строк.
|
|
9
Cyberhawk
23.06.17
✎
13:00
|
А ты там кем?
|
|
10
AvtorVoprosa
23.06.17
✎
13:17
|
(8) "обработчики изменения таблицы. Для новых строк"
Это где?
|
|
11
AvtorVoprosa
23.06.17
✎
13:19
|
(8) Спасибо большое, все получается
|
|