Структура интерфейса
В главной сборке 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 );