Вопрос

Изменение исходного кода объекта

Добрый день!

Подскажите, пожалуйста, как можно изменить исходный код объекта? В дизайнере объектов можно только посмотреть его, но не редактировать, при выгрузке в файловую систему создаются только .js-файлы объекта. Но в одном из объектов в нашей системе этот код был изменен сторонней компанией, выполнявшей доработки, значит, такая возможность существует.

Нравится

5 комментариев

Во встроенном процессе объекта. В дизайнере объекта нажмите Дополнительно -> открыть процесс. Исходный код будет храниться в метаданных объекта в экранированном виде, там можно смотреть все изменения из SVN.

Альмухаметов Булат,

у меня возникла проблема, может Вы мне сможете помочь?

Есть сторонний пакет, он закрыт для изменений. В нем в объект добавлен обработчик при добавлении записи, и он работает некорректно. Сам объект я изменить не могу, а если создать замещающий, то методы родительского выполнятся всё равно. Не подскажете, есть ли решение?

Добрый день. В замещающем объекте вы можете переопределить методы родителя и не вызывать базовую реализацию.

Кот Владимир Владимирович,

А подскажите, пожалуйста, каким образом я могу переопределить методы родителя в сущности типа "объект"?

В "Дополнительно -> Открыть процесс" я могу увидеть родительские методы, но не имею понятия как их переопределить.

Для этого необходимо выбрать нужный вам метод, и нажать галочку Переопределен. По умолчанию в переопределении будет вызов родителя. Например, я поставил эту галочку для метода TryProcessComplete, у которого есть параметр changeType, и получил следующий код:

base.TryProcessComplete(changeType);

Вместо этой строчки достаточно будет написать нужную вам функциональность. Реализация из родителя вызываться не будет.

Показать все комментарии