Структура интерфейса — различия между версиями
Строка 16: | Строка 16: | ||
==Методы, необходимые для соответствия интерфейсу== | ==Методы, необходимые для соответствия интерфейсу== | ||
− | :<span style="color:blue">delegate string</span> PluginQueryInvoker ( <span style="color:blue">string</span> xml );<br> | + | :<span style="color:blue">delegate string</span> PluginQueryInvoker ( <span style="color:blue">string</span> xml ); |
+ | <br> | ||
:Guid GetId ( ); | :Guid GetId ( ); | ||
:<span style="color:blue">int</span> GetInterfaceVersion ( int lastknownversion ); | :<span style="color:blue">int</span> GetInterfaceVersion ( int lastknownversion ); |
Версия 11:02, 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 );