Описание системного ядра
Версия 1.0 alpha
В настоящем документе дается общее описание приложений и компонент ядра ORE (Object-Relational Engine).
Универсальное рабочее место FOREver (Forms for Object-Relational Engine)
Универсальный сервер приложений UFO (Universal Finacial Object)
Список элементов разделяемого множества
Универсальное рабочее место FOREver (Forms for Object-Relational Engine)
Является клиентским приложением для исполнения прикладных задач посредством интерактивной обработки экранных форм ввода-вывода данных. Предназначено как для конечного прикладного пользователя , так и для администратора прикладной системы. Особенностью данного приложения является то, что оно может функционировать не иначе как посредством исполнения экранных форм, описанных на ORL в файле начальной загрузки, включенных в него файлах или формах, загруженных из
удаленных рабочих областей или внешних источников данных.Универсальное рабочее включает в себя следующие компоненты.
Все компоненты системы управления объектами.
Все компоненты
системы хранения данных.Все компоненты
системы распределенной обработки в варианте клиента.Все компоненты
системы обработки языка.Все компоненты
системы пользовательского интерфейса.Основное меню
Предоставляет следующие функциональные возможности.
File
New
Open
- открыть новый исходный ORL-файл в текущей рабочей области.Print Preview
- просмотр печатного представления текущей экранной формы.Exit
- завершить работу с программой.View
Toolbar
Status bar
- Включение-выключение показыва строки состояния.Список открытых экранных форм - выбор экранной формы в рабочее поле.
Cлужит для быстрого доcтупа к функциям меню.
Содержит текущую открытую экранную форму и позволяет ее обработку.
Файл начальной загрузки является исходным текстом на языке ORL. Он должен содержать информацию, необходимую для наполнения рабочей области данными и ее функционирования. В файле начальной загрузки обязательно наличие описания и вызова на исполнение как минимум одной экранной формы.
Универсальный сервер приложений UFO (Universal Finacial Object)
Является одновременно клиентским и серверным приложением для просмотра и редактирования структуры системных и прикладных данных, а также исполнения системных и прикладных методов. Предназначено для администратора прикладной системы.
Универсальный сервер приложений включает в себя следующие компоненты.
Все компоненты
Все компоненты
системы хранения данных.Все компоненты
системы распределенной обработки в варианте клиента и сервера.Все компоненты
системы обработки языка.
Предоставляет следующие функциональные возможности.
File
New
Open
- открыть новый исходный ORL-файл в текущей рабочей области.Exit
- завершить работу с программой.View
Toolbar
Status bar
- Включение-выключение показыва строки состояния.
Cлужит для быстрого доcтупа к функциям меню а также предоставляет следующие дополнительные возможности.
Обновить дерево клссов - обновить дерево классов в соответствии с произведенными изменениями.
Длинные-короткие имена классов - включить в дереве классов показ коротких имен классов в латинском регистре либо длинных имен классов.
Autocommit - включить-отключить режим завершения транзакции после каждого изменения.
Commit - завершить транзакцию.
Rollback - отменить транзакцию и аннулировать все изменения, сделанные с момента завершения предыдущей транзакции.
Автоматический выбор ширины колонок - включить-отключить автоматический выбор имен колонок в таблицах, просматриваемых в рабочем поле.
Экземпляры - установить режим показа в рабочем поле таблиц экземпляров класса, выбранного в дереве классов.
Атрибуты - установить режим показа в рабочем поле таблиц атрибутов класса, выбранного в дереве классов.
Методы - установить режим показа в рабочем поле таблиц методов класса, выбранного в дереве классов.
Показывать системные атрибуты - включить-отключить показ атрибутов, унаследованных от класса OBJECT, при просмотре экземпляров класса, выбранного в дереве классов.
Обновить список объектов - обновить список объектов и значений их атрибутов в таблице рабочего поля, с учетом изменений, произведенных при исполнении методов или произошедших во внешенем источнике данных или удаленной рабочей области.
Запрос - установить фильтр, ограничивающий список объектов выбранного класса в таблице его экземпляров.
Тест - вызвать системную консоль (монитор).
Предназначено для визуализации дерева иерархии всех системных и прикладных классов, загруженных в рабочую область. Дерево классов строится на основании значений атрибута OWNER (PARENT) класса CLASS, то есть, не учитывает множественного наследования. В дереве классов возможны просмотр и редактирование значений атрибутов выбранного класса - для этого двойным нажатием левой кнопки мыши на выбранном классе вызывается соответствующая форма редактирования.
В рабочей области показывается таблица экземпляров, атрибутов или методов класса, выбранного в дереве классов, в зависимости от режима, выбранного в
рабочей панели.Таблица, показывающая список всех экземпляров данного класса в виде списка экземпляров.
Таблица, показывающая список всех атрибутов данного класса в виде списка элементов владеемого множества.
Таблица, показывающая список всех методов данного класса в виде списка элементов владеемого множества.
Возникает при нажатии правой кнопки мыши на выбранной строчке таблицы рабочего поля. Позволяет применить к объекту данного класса определенные для него методы.
Предназначена для вывода системных сообщений, возникающих в ходе работы системы, а также для интерактивного ввода команд на языках ORL, VB Script и Java Script, и вывода результатов исполнения этих команд.
Системная консоль имеет следующие элементы.
Панель вывода сообщений.
Окно ввода команд.
Переключатель командного языка (ORL/VB Script/Java Script).
Run
- кнопка исполнения команды.Очистить монитор - кнопка очистки панели вывода сообщений.
Ok
- кнопка закрытия системной консоли.Cancel
- кнопка закрытия системной консоли.
Файл начальной загрузки является исходным текстом на языке ORL. Он должен содержать информацию, необходимую для наполнения рабочей области данными и ее функционирования.
Используются всеми приложениями, реализующими системное ядро. Большинство форм использует
универсальные таблицы.Универсальная форма предназначенная для просмотра и редактирования конкретного объекта. Форма является модальным диалогом, имеет фиксированную ширину и неограниченную высоту.
Внизу формы расположены две следующие кнопки.
Ok (Да) - ввести сделанные изменения
Cancel (Отменить) - отменить сделанные изменения.
В основной части формы распологаются: в левой половине - длинные имена атрибутов классов, реализуемых объектом, в правой - поля значений этих атрибутов и кнопки, необходимые для их изменения. Различаются следующие три типа комбинаций полей и кнопок, в зависимости от типа атрибута.
Поле редактирования - для одиночных значений, "входящих" в объект.
Поле просмотра с кнопкой выбора - для ссылок.
В случае "владеющего" атрибута, при нажатии кнопки ссылки на "владеемый" объект происходит вызов формы редактирования "владеемого" объекта.
В случае "разделяемого" атрибута, при нажатии кнопки ссылки на объект происходит вызов списка экземпляров класса, для выбора объекта для ссылки.
Кнопка вызова - для множеств.
В случае "владеющего" атрибута, при нажатии кнопки "владеемого" множества объектов происходит вызов списка элементов владеемого множества.
В случае "разделяемого" атрибута, при нажатии кнопки "разделяемого" множества объектов происходит вызов
списка элементов разделяемого множества.
Таблица, предназначенная для визуализации множества всех экземпляров данного класса, или некоторого их подмножества, ограниченного некоторым запросом. Над таблицей допускаются следующие операции.
Добавление объекта.
Удаление объекта.
Редактирование объекта.
Вызов формы редактирования объекта.
Вызов контекстного меню для объекта.
Список элементов разделяемого множества
Таблица, предназначенная для визуализации множества всех объектов - элементов разделяемого множества, принадлежащего определенному объекту, или их подмножества, ограниченного некоторым запросом. Над таблицей допускаются следующие операции.
Добавление элемента во множество.
Удаление элемента из множества.
Редактирование объекта.
Вызов формы редактирования объекта.
Вызов контекстного меню для объекта.
Список элементов владеемого множества
Таблица, предназначнная для визуализации множества всех объектов - элементов владеемого множества, принадлежащего определенному объекту, или их подмножества, ограниченного некоторым запросом. Над таблицей допускаются следующие операции.
Добавление объекта.
Удаление объекта.
Редактирование объекта.
Вызов формы редактирования объекта.
Вызов контекстного меню для объекта.
Предназначены для визуализации множеств объектов - экземпляров классов или элементов владеемых или разделяемых множеств. Таблица может содержать четыре зоны.
Селекторы колонок - расположена в верхней части таблицы и определяет атрибуты, значения которых выводятся в ячейках таблицы. Определяются классом, экземпляры которого просматриваются в таблице, или областью значений атрибута, множество значений которого просматривается. Также, селекторы колонок могут быть переопределены при описании формы.
Селекторы строк - расположены в левой части таблицы и определяют текущий элемент таблицы, выбранный для совершения над ним некоторых операций. Каждая строка соответствует одному элементу или объекту.
Ячейки таблицы - занимают основное пространство таблицы и представляют значения атрибутов объектов построчно.
Строка ввода - последняя, нижняя строка в таблице, предназначена для ввода новых элементов или объектов.
Над таблицей могут быть допустимы следующие операции.
Добавление объекта - ввод значений в строке ввода (последней строке).
Удаление объекта - нажатие клавиши
Добавление элемента во множество - выбор нового элемента из списка экземпляров класса, являющегося областью значений атрибута, множество значений которого просматривается - вызовом
списка экземпляров класса в крайней левой ячейке строки ввода (последней строки).Удаление элемента из множества - нажатие клавиши
Delete при выделенном элементе.Редактирование объекта - позиционирование выбранной ячейки стрелками клавиатуры или мышью и изменение значений в данной ячейке.
Вызов
формы редактирования объекта - двойное нажатие левой кнопки мыши на выбранном элементе.Вызов контекстного меню для объекта - нажатие правой кнопки мыши на выбранном элементе.