0
pessok
03.03.15
✎
15:28
|
Коллеги, привет. Помнится, раньше устанавливать действие из общего модуля было нельзя. Что-нибудт поменялось на этом фронте с выходом УФ?
Собственно - в справочник договоров хочу добавить набор записей регистров:
&НаСервере
Процедура СоздатьТаблицуРегистра(Форма, ИмяТаблицы, ПредставлениеИмениТаблицы, ИмяРегистра, ОтборНабора, ИсключаемыеКолонки = Неопределено)
//добавляем реквизиты формы
ДобавляемыеРеквизиты = Новый Массив;
Реквизит = Новый РеквизитФормы(ИмяТаблицы, Новый ОписаниеТипов("РегистрСведенийНаборЗаписей."+ИмяРегистра));
ДобавляемыеРеквизиты.Добавить(Реквизит);
Форма.ИзменитьРеквизиты(ДобавляемыеРеквизиты);
НаборДанных = Форма.РеквизитФормыВЗначение(ИмяТаблицы);
Для Каждого ЭлементОтбора Из ОтборНабора Цикл
НаборДанных.Отбор[ЭлементОтбора.Ключ].Установить(ЭлементОтбора.Значение);
КонецЦикла;
НаборДанных.Прочитать();
Форма.ЗначениеВРеквизитФормы(НаборДанных, ИмяТаблицы);
//добавляем таблицу на форму
НоваяТаблицаФормы = Форма.Элементы.Добавить(ИмяТаблицы, Тип("ТаблицаФормы"), Форма);
НоваяТаблицаФормы.ПутьКДанным = ИмяТаблицы;
НоваяТаблицаФормы.Заголовок = ПредставлениеИмениТаблицы;
НоваяТаблицаФормы.ПоложениеЗаголовка = ПоложениеЗаголовкаЭлементаФормы.Верх;
//колонки таблицы получим из метаданных
МетаданныеРегистра = Метаданные.РегистрыСведений[ИмяРегистра];
//добавляем колонки
Для Каждого Измерение Из МетаданныеРегистра.Измерения Цикл
Если ЗначениеЗаполнено(ИсключаемыеКолонки) Тогда
Если ИсключаемыеКолонки.Найти(Измерение.Имя) <> Неопределено Тогда
Продолжить;
КонецЕсли;
КонецЕсли;
ИмяКолонки = Измерение.Имя;
ТипКолонки = Измерение.Тип;
НоваяКолонкаТаблицы = Форма.Элементы.Добавить(ИмяТаблицы+ИмяКолонки, Тип("ПолеФормы"), НоваяТаблицаФормы);
НоваяКолонкаТаблицы.ПутьКДанным = ИмяТаблицы+"."+ИмяКолонки;
НоваяКолонкаТаблицы.Вид = ВидПоляФормы.ПолеВвода;
КонецЦикла;
НоваяТаблицаФормы.АвтоВводНовойСтроки = Ложь;
НоваяТаблицаФормы.УстановитьДействие("ПриИзменении", "ПриИзмененииТаблицыРегистра");
КонецПроцедуры
&НаКлиенте
Процедура ПриИзмененииТаблицыРегистра(Элемент) Экспорт
Сообщить("Я работаю!");
КонецПроцедуры
Обработчик ПриИзменении не срабатывает. Если поместить в форму справочника, то, есессно, все работает.
Может уже кто-то придумал какие-то костыли? :)
|
|
2
Адский плющ
03.03.15
✎
15:53
|
Нету такой возможности. Типовые вызывают в событиях формы МодификацияКонфигурацииПереопределяемый (не везде, правда), а вот затычку для событий поленились сделать.
|
|