3. Универсальный браузер
В универсальном браузере всё взаимодействие с информационной системой предлагается реализовать через отображения (экранные формы). Главным системным отображением является отображение Проводник (рис. 4).
Рис. 4. Отображение Проводник
Любое отображение состоит в общем случае из дерева объектов (левая часть окна), дерева экземпляров объектов (правая часть окна) и панелей инструментов.
Верхняя панель инструментов содержит кнопки непосредственного выполнения действий и кнопки вызовов меню. Здесь в частности присутствуют кнопки ввода и удаления экземпляров, поиска, расчёта аналитики, построения диаграммы, пункты меню печать отображения, вызов аналитического отображения. Левая панель содержит кнопки навигации по дереву экземпляров, а также кнопки управления окнами. Панели инструментов могут частично или полностью отсутствовать – режим их вывода задается в описании отображения.
В левой части отображения располагается дерево объектов. Дерево объектов состоит из нескольких колонок. Колонка 0 содержит собственно дерево объектов текущего отображения с понятиями этих объектов. Колонки 1 и далее предназначены для задания условий поиска и аналитической обработки.
В дереве объектов системного отображения Проводник присутствуют следующие системные объекты:
%Отображение – содержит описания всех отображений (системных отображений инструмента и пользовательских отображений конкретной базы данных);
%Запрос – содержит описание всех созданных запросов;
%Пользователь – содержит учётные записи всех пользователей базы данных;
%Объект – содержит описание всех объектов (системных и пользовательских);
%Понятие – содержит описание всех понятий (системных и пользовательских);
%База содержит общее описание и настройки базы данных.
Конкретные отображения, запросы, пользователи, объекты, понятия являются экземплярами этих системных объектов и выводятся в дереве экземпляров. Дерево экземпляров располагается в правой части отображения. Состояние дерева экземпляров меняется при изменении состояния дерева объектов. Дерево экземпляров представляет собой дерево множеств экземпляров, соответствующее текущему состоянию дерева объектов.
Проектирование структуры базы и построение приложений
Редактирование отображений предлагается производить в специальном режиме. Экран редактирования представляет собой интерпретацию отображения как дерева-таблицы (рис. 5) и позволяет описывать как структуру дерева объектов, так и внешний вид дерева экземпляров.
Рис. 5. Экран редактирования отображения
В столбце Объекты выстраивается дерево объектов (иерархические связи между объектами). В колонках 0 и далее задаются понятия объектов (связи понятий и объектов) и описание внешнего вида дерева экземпляров.
Дерево объектов выстраивается последовательно, начиная от вершины. Добавление объектов производится через контекстное меню. Объект выбирается из множества заранее определённых объектов. Можно вставить объект сразу с набором его понятий или поддерево объекта с понятиями. При добавлении объекта порождается нулевая строка объекта и нулевая ячейка в этой строке.
Описание дерева экземпляров создаётся путём добавления строк и колонок к дереву-таблице. Описание экземпляра объекта может занимать несколько строк и колонок дерева-таблицы. Объекты нижнего уровня могут быть встроены в произвольные строки объектов верхнего уровня. В ячейках дерева экземпляров могут выводиться не только понятия, но и константы, и выражения.
Описание отображения создаётся в результате визуального проектирования и представляет собой такой же хранимый элемент базы данных как объекты и понятия.
При выходе из редактирования отображения описание отображения автоматически записывается в базу данных, также автоматически заполняются свойства описаний объектов Понятия, Потомки и Объектная ссылка. Таким образом, с использованием отображений строится схема базы.
Проектирование базы данных в qWORD-XML предлагается начинать c построения отображения или нескольких отображений, в которых объекты располагаются соответственно моделируемой иерархии. Вместе эти отображения будут определять схему базы данных как совокупность деревьев.
Горизонтальные связи в предложенной модели реализуются с помощью пользовательских потенциальных и внешних ключей. Горизонтальные связи могут быть представлены как иерархические с помощью дополнительных отображений с использованием ссылочных и виртуальных объектов.
Таким образом, в данной работе отображение предлагается использовать как средство описания структуры базы. Экранное представление базы данных может быть создано в виде отображения, описывающего общую схему базы данных или нескольких отображений, описывающих части общей схемы (рис. 6). Такой вариант удобен для аналитических задач.
Рис. 6. Отображение, опивающее схему базы данных
Вместе с тем отображение также предлагается использовать в качестве инструмента для построения приложений к базе данных. Так в описании отображения можно задать его размеры, пользовательское меню, панели инструментов, закладки, действия по входу и выходу из отображения. Для каждой колонки можно задать её размеры. Для каждой ячейки можно определить выравнивание, шрифт, размер шрифта, стиль шрифта, цвет фона, цвет символа, обрамление, вариант редактирования ячейки, стиль вывода в виде различных кнопок. Имеется возможность встраивание дочерних отображений в дерево экземпляров.
Таким образом, экранное представление базы данных может быть создано в виде отображений, представляющих собой экранные формы традиционного оперативного приложения (рис. 7).
