Имя: Пароль:
1C
1С v8
Если нужно программно назначить действие колонке таблицы,
0 Vika_Vika
 
18.01.12
05:53
в принципе работает такой код:

Если ТаблицаЦен.Колонки.Найти("Процент1") <> НеОпределено тогда
 мКолонкиТовары.Процент1.ЭлементУправления.УстановитьДействие("ПриИзменении", Новый Действие("ТаблицаЦенПроцент1ПриИзменении"));
КонецЕсли;

Но это только для колонки "Процент1", а там еще есть "Процент2", "Процент3", и так далее, сколько типов цен задаст пользователь. По идее, надо бы сделать цикл, но как задать в цикле "мКолонкиТовары.Процент1"? Или процент2. Или 3.
1 Гефест
 
18.01.12
06:02
Ну так-то да. По идее, так и надо сделать
2 Rie
 
18.01.12
06:03
(0) Есть замечательный оператор []. Или, на худой конец, метод Получить()
3 Vika_Vika
 
18.01.12
06:19
(2) Чуток поподробнее, плиз!
4 Rie
 
18.01.12
07:10
(3)
Для НомерПроцента=1 По ПоследнийНомерПроцента ЦИкл
   мКолонкиТовары["Процент"+НомерПроцента]....
5 Vika_Vika
 
18.01.12
07:30
Спасибо, это я уже поняла. Действие назначается. Оно стандартное для нескольких колонок. Процедура ПриИзменении.
Следующая проблема: Как определить, в какой именно колонке произошло изменение?
6 Rie
 
18.01.12
07:40
(5) Попробуй у табличного поля посмотреть ТекущаяКолонка
7 Vika_Vika
 
18.01.12
09:12
(6) Спасибо. Все получилось.