Модули клиенских приложений

Описания клиентских приложений и их модулей хранятся в схеме ядра в следующих таблицах:

CLIENT_APPS – клиентские приложения;

CLIENT_MODULES – модули приложений;

CLIENT_APP_MODULES – взаимосвязи модулей и клиентских приложений;

CLIENT_ASSEMBLIES – сборки модулей.

Модель данных выглядит следующим образом:

Modules_Tables

table В таблице CLIENT_APPS хранится перечень клиентских приложений. Например, может быть приложение для настольного ПК, приложение для ПК с сенсорным экраном или для мобильного устройства:

NAME – название приложения;

DESCRIPTION – описание приложения.

table В таблице CLIENT_MODULES хранится перечень модулей клиентских приложений:

NAME – название модуля;

DESCRIPTION – описание модуля;

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

table В таблице CLIENT_APP_MODULES хранятся взаимосвязи модулей и клиентских приложений. Каждому клиентскому приложению может соответствовать несколько модулей, как и каждому модулю может соответствовать несколько приложений:

APP_OBJ_ID (FK) – модуль, связанный с клиентским приложением;

MODULE_OBJ_ID (FK) – приложение, с которым связан модуль.

table С точки зрения реализации каждый модуль представляет собой одну и более библиотеку. Совокупность этих библиотек называется сборкой модуля и описывается в таблице CLIENT_ASSEMBLIES:

FILE_NAME – название файла библиотеки, входящего в сборку;

FILE_DATA – файл библиотеки;

FILE_SIZE – размер файла библиотеки в байтах;

FILE_HASH – хэш файла;

MODULE_OBJ_ID (FK) – модуль, с которым связана библиотека.