Структура интерфейса — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
(Новая страница: «Наверх В главной сборке plugin-программы приложением Oktell ищется к...»)
(нет различий)

Версия 11:00, 27 марта 2014

Наверх

В главной сборке plugin-программы приложением Oktell ищется класс, реализующий нижеприведенный перечень методов. Если при подключении возникают проблемы с сопоставлением, модуль регистрации plugin-программы подскажет, что именно и в каком методе не подходит и не соответствует ожидаемому интерфейсу.

Даже если plugin-программа не использует часть возможных механизмов и не заявляет об их использовании в возвращаемых значениях существующих для этого методов, для ее регистрации необходимо наличие и соответствие всех заявленных в интерфейсе методов. Так, если plugin-программа служит только для отображения форм в разделе внешних модулей, в ее управляющем объекте в любом случае должны присутствовать методы (заглушки в данном случае) для работы с диалоговыми формами.

Возможны варианты использования plugin-программ, осуществляющих невизуальную фоновую деятельность, или деятельность не связанную с режимами диалоговых сценариев и/или работы внешних модулей. В этом случае чаще всего требуется загрузка плагина на старте клиентского приложения. Момент загрузки настраивается администратором при регистрации plugin-программы в Oktell. Стоит отметить, что в этом случае в момент загрузки будет выполнен конструктор, а также метод DoQuery с функцией pluginloaded (20401). Без особой на то необходимости рекомендуется запускать внутренние объекты именно в реализации указанной функции метода DoQuery, а не в конструкторе, так как конструктор вызывается в любом случае, даже если plugin-программа подгружается в административных целях.

В этой статье приведен перечень методов, свойств и событий.

В следующей статье будет структурное описание назначения всех методов.

Структура и возможные варианты параметров и возвращаемых значений будут приведены в последующих разделах.


Методы, необходимые для соответствия интерфейсу

delegate string PluginQueryInvoker ( string xml );

Guid GetId ( ); int GetInterfaceVersion ( int lastknownversion ); string GetModuleVersion ( ); string GetModuleName ( ); string GetDBUpdate ( ); string GetForms ( );

string GetInputParams ( string xml ); string GetOutputParams ( string xml ); string ShowDesign ( string xml ); string PrepareShow ( string xml ); string GetCurrentFillInfo ( string xml ); string StopShow ( string xml ); string GetControlResult ( string xml );

System.Windows.Forms.Control CreateControl ( string xml );

event PluginQueryInvoker OnQuery; string DoQuery ( string xml );