Имя: Пароль:
1C
1С v8
Программно добавить и заполнить свою колонку в таблице на управляемой форме
,
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) Спасибо большое, все получается