Имя: Пароль:
1C
1С v8
Расширение - перехват клиентской процедуры
0 ildary
 
14.02.18
08:41
Уважаемые специалисты, скажите пожалуйста, что я делаю не так:
делаю расширение для УТ11.4, в основном всё получается, но не удалось перехватить процедуру КарточкаНоменклатурыОбработкаРасшифровки в форме Справочник.Номенклатура.ФормаЭлемента.

Делаю так - добавил в расширение ФормаЭлемента и в её модуле:

&НаКлиенте
&Перед("КарточкаНоменклатурыОбработкаРасшифровки")
Процедура Общ_КарточкаНоменклатурыОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка) Экспорт
  
   А = 1; //досюда не доходит.
    
КонецПроцедуры

При этом сама процедура КарточкаНоменклатурыОбработкаРасшифровки() отрабатывает. И другие процедуры, но серверные перехватываются успешно. Скажите пожалуйста, где я недоделал?
1 mszsuz
 
14.02.18
11:08
Подписку на событие элемента надо устанавливать через палитру свойств этого элемента.
2 ildary
 
14.02.18
11:15
(1) Спасибо за ответ!
Простите мне мою глупость, а где надо искать эту подписку? У макета?
3 mszsuz
 
14.02.18
11:17
у элемента формы в расширении
4 mszsuz
 
14.02.18
11:23
5 ildary
 
14.02.18
12:54
(4) огромное спасибо, нашёл. Единственное - мне пришлось сделать обработчик не &Перед, а &Вместо, потому что я не понял, как прервать выполнение последующего кода. Сделал примерно так:

&НаКлиенте
Процедура Общ_КарточкаНоменклатурыОбработкаРасшифровкиВместо(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
//чтобы работала расшифровка по документу поступления (добавлено в Номенклатура.МодульМенеджера.Общ_ТабличныйДокументКарточкиНоменклатуры()
    
    Если ТипЗнч( Расшифровка ) = Тип( "ДокументСсылка.ПриобретениеТоваровУслуг" ) Тогда
        
        СтандартнаяОбработка = Ложь;
        ПоказатьЗначение( , Расшифровка );
        Возврат;
        
    КонецЕсли;
    
    ПродолжитьВызов( Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры );
    
КонецПроцедуры

p.s. Хочу сказать огромное спасибо автору процедуры отбора в ТЗ по значению для 7.7. Ваш код до сих пор применяется в ряде организаций.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn