В 1С существует удобный метод редактирования типовых конфигураций, без внесения изменений в базу. В статье описано как добавить свой код После, До или Вместо процедуры, при этом не меняя модуль конфигурации базы данных.
Пример задачи:
Требуется при записи заказа покупателя вывести сообщение «Привет мир». Изменять модуль объекта нельзя;
Решение задачи:
- Создать новое расширение;
- Добавить в расширение документ «Заказ покупателя»;
- Открыть модуль объекта «Заказ покупателя» в расширении;
- Создать процедуру, которая добавит свой программный код в модуль объекта — «При записи», документ — «Заказ покупателя» ;
// в процедуру должны быть скопированы параметры исходной процедуры // наименование процедуры в расширении должна отличаться от наименования исходной процедуры // пример запуска кода после исходной процедуры: &После("ПриЗаписи") Процедура _ПриЗаписи(Отказ) Сообщить("Привет мир"); КонецПроцедуры // пример запуска кода перед исходной процедуры: &Перед("ПриЗаписи") Процедура _ПриЗаписи(Отказ) Сообщить("Привет мир"); КонецПроцедуры // пример запуска кода вместо исходной процедуры: &Вместо("ПриЗаписи") Процедура _ПриЗаписи(Отказ) // если требуется копируем сюдя типовой программный код Сообщить("Привет мир"); КонецПроцедуры
Предпочтительно использовать запуск Перед или После типовой процедуры. Это обеспечит стабильность работы если после обновления поменяется программный код исходной процедуры.
В работе с функциями доступен только вызов «Вместо», в остальном все происходит по аналогии.
Ошибка в 3 м примере.
Должно быть Вместо, а не Перед
Спасибо, исправил)