Имя: Пароль:
1C
 
Как программно назначить обработчик события в колонке табличного поля?
0 Skylark
 
22.03.10
10:57
У меня есть документ, у которого в табличной части очень много реквизитов. Не хочу щелкать в каждый и устанавливать обработчик ПриИзменении.
Подскажите, как это сделать программно.
Пытаюсь пока вот так, не получается:

ПриИзмененииКолонкиДвиженияДС = Новый Действие("ПересчетДС");
Для каждого КолонкаТЧ из ЭлементыФормы.ДвиженияДС.Колонки Цикл
  КолонкаТЧ.УстановитьДействие("ПриИзменении", ПриИзмененииКолонкиДвиженияДС);
КонецЦикла;

ПриИзмененииКолонкиДвиженияДС = Новый Действие("ПересчетДС");
Для каждого КолонкаТЧ из ЭлементыФормы.ДвиженияДС.Колонки Цикл
  КолонкаТЧ.ЭлементУправления.УстановитьДействие("ПриИзменении", ПриИзмененииКолонкиДвиженияДС);
КонецЦикла;
1 Лефмихалыч
 
22.03.10
11:00
"не получается" - это что?
2 Skylark
 
22.03.10
11:01
В первом случае пишет "Метод объекта не обнаружен (УстановитьДействие)"

Во втором "Значение не является значением объектного типа (УстановитьДействие)"
3 Defender aka LINN
 
22.03.10
11:02
(2) У тебя во всех колонках поля ввода?
4 Лефмихалыч
 
22.03.10
11:03
(2) в попытку заверни - не у всех твоих колонок ЭУ ==ПолеВвода
5 Mkonst
 
22.03.10
11:04
пример:
   //--- создаем новую закладку
   тмпСтраницы = ЭлементыФормы.ОсновнаяПанель.Страницы;
   СтраницаПанелиОПЗС = тмпСтраницы.Добавить("Производство", "Производство");
   ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница = СтраницаПанелиОПЗС;
   ПолеДокументов = ЭлементыФормы.Добавить(Тип("ТабличноеПоле"), "ап_Призводство", Истина, ЭлементыФормы.ОсновнаяПанель);
   ПолеДокументов.Данные = "ап_Производство";
   ПолеДокументов.УстановитьДействие("ПередУдалением", Новый Действие("апПроизводствоПередУдалением"));
   ПолеДокументов.УстановитьДействие("ПередНачаломДобавления", Новый Действие("апПроизводствоПередНачаломДобавления"));
   ПолеДокументов.УстановитьДействие("ПриПолученииДанных", Новый Действие("апПроизводствоПриПолученииДанных"));
6 Defender aka LINN
 
22.03.10
11:05
Лучше через ТипЗнч() проверять
7 butterbean
 
22.03.10
11:05
(3,4) а для флажков разве не работает??
8 Skylark
 
22.03.10
11:07
(3) круто! так и есть - это был НомерСтроки, у всех остальных ПолеВвода

Спасибо всем!
9 Defender aka LINN
 
22.03.10
11:07
(7) Там элемента управления нет