Имя: Пароль:
1C
1С v8
Подключить обработчик на програмно созданный объект
0 Borislav
 
14.05.15
11:39
Всем привет!
Вывожу отчет на табличный документ (не на форму) и пытаюсь подключить к нему стандартную процедуру расшифровки.

ДокументРезультат = Новый     ТабличныйДокумент;
//...
ДокументРезультат.Показать();

ПодключитьОбработчикИзмененияДанных("ДокументРезультат","РезультатОбработкаРасшифровки",);

//сама процедура

Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка)
    
    СтандартнаяОбработка=Ложь;
    ОбработкаРасшифровки = Новый ОбработкаРасшифровкиКомпоновкиДанных(ДанныеРасшифровки, Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));

    ПолеРасшифровки = ДанныеРасшифровки.Элементы[Расшифровка].ПолучитьПоля()[0];
    Если ПолеРасшифровки.Поле = "Номенклатура" ИЛИ
        ПолеРасшифровки.Поле = "Документ" Тогда  
        Ссылка = ПолеРасшифровки.Значение;
        ОткрытьЗначение(Ссылка);
    КонецЕсли;
    
КонецПроцедуры

как правильно сделать, сам никак не разберусь.
1 Lexey_
 
14.05.15
12:37
(0) обязательно нужен элемент формы
2 Borislav
 
14.05.15
12:51
(1) Т.е  как к отдельному объекту не получиться привязать.
Да печально - форма просто уже перегружена закладками таблицами, хотелось отдельно.

Ну нет так нет.
3 tznimble
 
14.05.15
13:09
(1) Не элемент, а реквизит.
(2) Попробуйте сделать ТД реквизитом формы
Однако:
1. Ваша процедура не подходит, т.к.
"Процедура должна иметь один параметр, в который при вызове процедуры будет передана строка - путь к измененным данным, по структуре аналогичная параметру <Имя данных>."
2. В какой момент по Вашему мнению должна срабатывать процедура?
4 Гёдза
 
14.05.15
13:11
на табличный документ вне формы расшифровку не назначить
5 Гёдза
 
14.05.15
13:11
Открывай форму с табличным документом
6 Lexey_
 
14.05.15
13:52
(3) у реквизитов формы нет событий
7 Lexey_
 
14.05.15
13:53
(3) нужен элемент формы + УстановитьДействие()
8 tznimble
 
14.05.15
16:13
(6) А у формы - есть. Изменение данных не есть изменение элемента формы
Независимо от того, куда вы едете — это в гору и против ветра!