Комплекс «M-3.SDK» состоит из следующих программных средств:
словаря данных, дополняющего системный словарь сервера и реализующего специально разработанные механизмы работы с базой данных;
объектно-ориентированного словаря клиентских форм, реализующего основные типы пользовательского интерфейса и механизмы модульной организации приложения (Репозитория);
набора визуальных и невизуальных компонентов Delphi для удобства работы с клиентским приложением;
развитой системы фильтрации информации;
развитой системы разделения доступа к информации.
Словарь данных
Серверный словарь данных состоит из набора таблиц, представлений и хранимых процедур системного назначения, реализующих следующие функции:
единый стандарт построения серверной части приложения по схеме Приложение - АРМ - Задача;
система настройки клиентских приложений через администрирование таблиц базы данных;
система разделения доступа к базе данных;
система автонумерации записей, включая такие алгоритмы, как автонумерация в заданных диапазонах значений, автонумерация без пропусков значений и их комбинации.
Репозиторий
Приложение, разрабатываемое в комплексе «M-3.SDK», представляет собой головной EXE-модуль и АРМы в DLL-формате. Репозиторий «M-3.SDK» представляет собой систему «родительских» форм (в терминах объектно-ориентированного программирования), осуществляющую следующие функции:
отработка загрузки и выгрузки DLL-АРМа;
отработка взаимодействия главного окна и загруженного АРМа;
обеспечение стандартизованного пользовательского интерфейса нескольких типов (списки, иерархические списки, строчные формы и их комбинации).
Компоненты
В комплекс «M-3.SDK» входит ряд компонентов Delphi, которые обеспечивают основы функционирования словаря базы данных и его взаимодействия с клиентской частью приложения, а также ряд сервисных функций для пользователя приложения. В число этих функций входят:
дополненный набор стандартных компонентов Delphi по доступу к базе данных. Система компонент по связи с системным словарем «M-3»;
удобный сервис, помогающий пользователю осуществлять поиск записи в открытом наборе данных и пересортировывать выводимую информацию в определяемом пользователем порядке;
сервис для обслуживания полей, информация в которые вводится из других таблиц (справочников);
представление информации в таблице в иерархическом виде (в случае, если таблица содержит внутреннюю иерархию, организованную по определенным правилам);
обслуживание системы фильтрации;
обслуживание печати экранных списков.
Система фильтрации информации
Система фильтрации информации построена на принципе, что фильтр над представлением может содержать любую комбинацию полей представления, построенную как по условию «и», так и по условию «или» с расстановкой скобок в случае необходимости. Система фильтрации «M-3» содержит набор компонентов и форм, предоставляющих пользователю возможность набирать условия фильтров при помощи понятных ему определений и терминов, с интуитивно-понятным интерфейсом.
Система фильтрации также предоставляет следующие сервисные возможности:
возможность сохранения условий фильтрации под определенными именами в базе данных и их последующего наложения, в том числе по умолчанию;
система наложения «жестких» и «мягких» фильтров для предотвращения доступа пользователя к нежелательным записям;
«списковые» фильтры.
Печать содержимого экранных списков
Содержимое любой списковой экраной формы с учетом наложенного фильтра может быть выведено на печать в виде форматированного отчета. Перед выводом пользователь может выбрать:
те поля, которые он хочет вывести;
те поля, по которым будет осуществлена группировка записей;
те поля, по которым будут подсчитаны промежуточные итоги.
Форма должна быть построена на основе компонентов данного SDK.
Система разделения доступа
Система разделения доступа «M-3» основывается на комбинации системы ролей Oracle и специальной организации системы представлений приложения. Она обеспечивает следующую систему разделения прав пользователей:
на уровне таблицы - ограничение на просмотр и/или изменение записей;
на уровне записей таблицы - ограничение на просмотр и/или изменение записей для всех пользователей одной роли по условиям, определяемым администратором;
на уровне полей таблицы - ограничение на просмотр и/или изменение внутри определенных полей всех записей для всех пользователей одной роли по условиям, определяемым администратором.
|