Клиентский компонент шлюза
Клиентский компонент шлюза представляет собой стандартный COM-компонент, реализующий ряд предопределённых интерфейсов, в частности:
-
Интерфейс
IObjectUI
— стандартный для всех клиентских объектов СУБП (функций и шлюзов) интерфейс, который определяет наличие у объекта идентификатора, названия, иконки и хранимых данных. -
Интерфейс
IGateUI
— стандартный интерфейс клиентского компонента шлюза. Реализует свойства и методы для работы с доступными типами переменных (объектов шлюза). Например, шлюз к файловой системе может обрабатывать два типа переменных — файлы и папки файловой системы. -
Интерфейс
IDVObjectUI
(необязательный) — стандартный интерфейс для компонент, использующих объекты Docsvision. Позволяет получить доступ к текущей сессии и окну Windows-клиента.
-
GetObjectTypes
— возвращает коллекцию описаний регистрируемых шлюзом типов переменных. -
GetMethods
— возвращает коллекцию описаний методов, предоставляемых шлюзом для манипуляций над объектами. -
SelectObject
— выбор значения переменной указанного типа. Обычно, вызов данного метода влечет за собой открытие одного или нескольких диалоговых окон. -
GetObjectDisplayValue
— возвращает отображаемое значение переменной указанного типа по её числовому значению.
Шлюз может иметь собственные хранимые данные (например, настройки соединения с внешней системой или иные необходимые настройки), которые могут меняться в зависимости от того, в каком процессе используется шлюз. В таком случае эти данные передаются и возвращаются при помощи свойства Data
интерфейса IObjectUI
и сохраняются в базе данных Docsvision. Пользовательский интерфейс для изменения этих настроек (в случае необходимости) также реализуется клиентским компонентом шлюза с помощью страниц свойств.
Для передачи шлюзу настроек, общих для всех экземпляров шлюза одного типа, также предусмотрен интерфейс IGateInit
. В существующих шлюзах он используется для установки xml-описания шлюза.
Для разработки страниц свойств рекомендуется использовать компонент Property Page Designer (DDPropPageD.ocx
), входящий в комплект поставки Docsvision.
Настройки (данные) шлюза используются в дальнейшем в серверном компоненте шлюза при его инициализации.
При занесении шлюза в справочник необходимо указать программный идентификатор (ProgID
) разработанного клиентского компонента.
Клиентский компонент может быть разработан с использованием Visual Basic или Visual C++.