ImplementationClass: String;
ImplementationClass: String;
Свойство ImplementationClass определяет наименование класса, в котором реализованы процедуры для обработки операций.
Указанный класс должен быть реализован в объекте среды разработки, который указан в свойстве ImplementationAssembly.
В классе должны быть реализованы методы, имеющие следующую сигнатуру:
Sub <ИдентификаторОбработчика>(<Параметр>: IMetabaseObjectDescriptor);
Если предполагается создание параметрических объектов, то также должны быть определены методы с постфиксом WithParams и следующей сигнатурой:
Sub <ИдентификаторОбработчика>WithParams(<Параметр1>: IMetabaseObjectDescriptor; <Параметр2>: IMetabaseObjectParamValues);
Примечание. При реализации обработчиков операций в .NET-сборке класс и методы должны быть объявлены с модификатором доступа Public. Наименование класса в свойстве ImplementationClass указывается вместе с пространством имен .NET-сборки: <Пространство имен>.<Класс>.
При выполнении в навигаторе объектов для объекта пользовательского класса какой-либо команды будет инициализирован экземпляр указанного класса (вызван конструктор Create) и для полученного экземпляра класса будет вызван соответствующий метод. В параметре метода будет передано описание объекта, для которого выполнена команда контекстного меню.
При создании операций для них будет сгенерирован идентификатор, который должен иметь метод-обработчик. Данный идентификатор указывается в таблице на вкладке «Операции». Для обработки общих операций объектов в классе должны быть реализованы методы со следующими зарезервированными идентификаторами:
Наименование операция | Идентификатор метода |
Открыть | Open (OpenWithParams для обработки открытия параметрических объектов) |
Редактировать | Edit (EditWithParams для обработки редактирования параметрических объектов) |
Пример использования приведен в описании свойства Operations.
См. также: