Всем привет.
Столкнулся с проблемой не могу понять как решить.
Решил перевести Бухгалтерию КОРП в расширение.
В конфигураций присутствует справочник "СтатьиЗатрат", в основную конфигурацию добавил реквизит "НаименованиеДляОтображения" Тип строка 150.
Вопрос в том, что в основной конфигурации нет процедуры "ОбработкаПолученияПредставления" и "ОбработкаПолученияПолейПредставления". Если добавляю данную процедуру в расширение модуля менеджера то ничего не выполняется. Пробовал писать и &Вместо и &После и вообще ничего. Результат один процедура не выполняется.
Если добавить эти процедура в основную конфигурацию то норм. Но я как раз и пытаюсь этого уйти.
Подскажите как быть. :(
---
День добрый, а ты имена вручную создавал или через конструктор типовых обработчиков событий? Если первое, то они у тебя просто не привязаны к событию и привяжутся только при выборе через конструктор.
Отсутствие в типовой не является обязательным:
"наличие типового обработчика этого события не является обязательным. Если типовой обработчик отсутствует, то будет вызван ваш перехватчик. Благодаря этой особенности вы можете назначать собственные обработчики тем событиям, которые не обрабатываются в типовой конфигурации"
Wonderlands
Раздел "Перехват обработчиков событий и собственные обработчики в модулях объектов, менеджеров и т.п."
---
СтандартнаяОбработка = Ложь; нужно добавить в обоих обработчиках.
---
попробуйте заменить ИзменениеИКонтроль на Вместо. От версии платформы может зависеть.
---
а процедура "ПолучениеПолейПредставления" точно подцепилась? Попробуй её пересоздать через события модуля.
---
Вопрос в том, что в основной конфигурации нет процедуры "ОбработкаПолученияПредставления" и "ОбработкаПолученияПолейПредставления". Если добавляю данную процедуру в расширение модуля менеджера то ничего не выполняется. Пробовал писать и &Вместо и &После и вообще ничего. Результат один процедура не выполняется.
Нужно не просто процедуру добавить, а выбрать из списка "Процедуры и функции" в модуле менеджера из предопределенных. Так они будут зарегистрированы как обработчики.
---
День добрый, а ты имена вручную создавал или через конструктор типовых обработчиков событий? Если первое, то они у тебя просто не привязаны к событию и привяжутся только при выборе через конструктор.
Отсутствие в типовой не является обязательным:
"наличие типового обработчика этого события не является обязательным. Если типовой обработчик отсутствует, то будет вызван ваш перехватчик. Благодаря этой особенности вы можете назначать собственные обработчики тем событиям, которые не обрабатываются в типовой конфигурации"
Wonderlands
Раздел "Перехват обработчиков событий и собственные обработчики в модулях объектов, менеджеров и т.п."
---
Попробовал сделать как вы описали. Но без Изменений
---
попробуйте заменить ИзменениеИКонтроль на Вместо. От версии платформы может зависеть.
---
Хотя нет. После этого стало ругать на расширение
---
"ОтобрОжение" это что-то с пивом связанное? Мб ошибку на что ругается скинешь?
---
то что-то с пивом связанное?
Нет. Это проблема с русским языком. Но вопрос не от этом!
---
ну тогда мы можем перейти к скриншоту с ошибкой
---
Я обознался нет ошибки. Просто игнорится данная процедура. Проверил расширение пишет, что проблем нет.
---
Поменял на Вместо и стало работать, но возникла другая проблема. Не видит поле :(
---
СтандартнаяОбработка = Ложь; нужно добавить в обоих обработчиках.
---
а процедура "ПолучениеПолейПредставления" точно подцепилась? Попробуй её пересоздать через события модуля.
---
Изменил как вы сказали и все заработало. Спасибо большое.
---
Если расширение подключено с признаком "Безопасный режим", то серверные процедуры расширения работать не будут. Поэтому для таких расширений, где используются "ОбработкаПолученияПредставления" и "ОбработкаПолученияПолейПредставления" необходимо убирать этот признак.
---
Если расширение подключено с признаком "Безопасный режим", то серверные процедуры расширения работать не будут. Поделитесь источником этой информации.
---
Информация с сайта ИТС (https://its.1c.ru/db/pubextensions/content/58/hdoc):
В обычном режиме исполнения встроенного языка будут расширяться все методы конфигурации – и клиентские, и серверные.

Если же прикладное решение работает в файловом варианте (как в нашем случае) или в клиент-серверном варианте без профилей безопасности, то при применении расширения в безопасном режиме исполнения встроенного языка будут расширяться только клиентские методы и серверные обработчики форм, которые установлены через панель свойств. К остальным серверным методам (в т. ч. и к аннотированным серверным методам модулей) расширение применяться не будет.

Стандартно расширение создается с установленным флажком Безопасный режим