ISharedEventHandler.Object

Синтаксис Fore

Object: IMetabaseObjectDescriptor;

Синтаксис Fore.NET

Object: Prognoz.Platform.Interop.Metabase.IMetabaseObjectDescriptor;

Описание

Свойство Object определяет объект, который будет использоваться для обработки событий.

Комментарии

Обработчиками событий могут являться только следующие объекты Fore:

Данное свойство актуально, если свойства ISharedEventHandler.Enabled принимает значение True.

Пример Fore

Для выполнения примера в репозитории необходимо наличие модуля с идентификатором «EXPRESS_EVENTS», который будет служить обработчиком событий экспресс-отчетов. Модуль содержит специальный класс EventsClass, описание которого приведено на странице «Обработка событий».

Добавьте ссылки на системные сборки: Fore, Metabase.

Sub UserPRoc;
Var
    MB: IMetabase;
    SParams: ISharedParams;
    ShPar: IMetabaseObjectDescriptor;
    EventHandlers: ISharedEventHandlers;
    EventHandler: ISharedEventHandler;
Begin
    // Получим репозиторий
    MB := MetabaseClass.Active;
    // Получим область глобальных переменных
    ShPar := MB.SpecialObject(MetabaseSpecialObject.SharedParams);
    // Получим параметры репозитория
    SParams := Shpar.Edit As ISharedParams;
    // Получим объект для работы с обработчиком событий отчетов
    EventHandlers := SParams.EventHandlers;
    // Будем использовать обработчик событий отчетов
    EventHandlers.Enabled := True;
    // Получим и активируем обработчик событий экспресс-отчетов
    EventHandler := EventHandlers.EventHandler(SharedEventHandlerType.ExpressReport);
    EventHandler.Enabled := True;
    // Подключим модуль для обработки событий
    EventHandler.Object := MB.ItemById("EXPRESS_EVENTS");
    // Установим класс модуля
    EventHandler.EventsClass := "EVENTSCLASS";
    // Сохраним изменения
    (SParams As ImetabaseObject).Save;
End Sub UserPRoc;

После выполнения примера для экспресс-отчетов будет установлен обработчик событий.

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.KeFore;

Public Shared Sub Main(Params: StartParams);
Var
    MB: IMetabase;
    SParams: ISharedParams;
    ShPar: IMetabaseObjectDescriptor;
    EventHandlers: ISharedEventHandlers;
    EventHandler: ISharedEventHandler;
Begin
    // Получим репозиторий
    MB := Params.Metabase;
    // Получим область глобальных переменных
    ShPar := MB.SpecialObject[MetabaseSpecialObject.msoSharedParams];
    // Получим параметры репозитория
    SParams := Shpar.Edit() As ISharedParams;
    // Получим объект для работы с обработчиком событий отчетов
    EventHandlers := SParams.EventHandlers;
    // Будем использовать обработчик событий отчетов
    EventHandlers.Enabled := True;
    // Получим и активируем обработчик событий экспресс-отчетов
    EventHandler := EventHandlers.EventHandler[SharedEventHandlerType.sehtExpressReport];
    EventHandler.Enabled := True;
    // Подключим модуль для обработки событий
    EventHandler.Object := MB.ItemById["EXPRESS_EVENTS"];
    // Установим класс модуля
    EventHandler.EventsClass := "EVENTSCLASS";
    // Сохраним изменения
    (SParams As ImetabaseObject).Save();
End Sub;

См. также:

ISharedEventHandler