Создание классов слоя бизнес-логики
Структура классов бизнес логики представлена на рисунке 6.7.

Рисунок 6.7 – Структура классов слоя Бизнес-логика
Класс TDataPrepare
Класс TDataPrepare является базовым классом слоя бизнес-логики. Поля класса представлены в таблице 6.17.
Таблица 6.17
Поля класса TDataPrepare
| Название | Описание |
| fexecute: TExecuteObject | Объект, используемый для выполнения запросов, не возвращающих набор данных. |
| fSelect: TExecuteObject; | Объект, используемый для выполнения запросов, возвращающих набор данных. |
Свойства класса представлены в таблице 6.18.
Таблица 6.18
Свойства класса TDataPrepare
| Название | Описание |
| DataSource: TDataSource | Источник данных, используемый для отображения списка объектов. |
| id: integer | Поле, используемое для хранения поля уникально идентифицирующего объект в БД. |
Данный класс имеет следующие виртуальные методы (см. Таблица 6.19).
Таблица 6.19
Методы класса TDataPrepare
| Название | Описание |
| Add | Добавляет объект в БД |
| Update | Изменяет атрибуты объекта в БД |
| Delete | Удаляет объект из БД |
| Select | Выбирает список объектов для отображения. |
| LoadCurrent | Загружает в поля класса атрибуты текущего объекта |
| Refresh | Обновляет список объектов |
| Create (Connection: TConnection; Transaction: TTransactionObject=nil) | Конструктор класса |
Классы, порожденные от класса TDataPrepare
В этих классах необходимо переопределить все виртуальные методы класса TDataPrepare и создать свойства согласно таблицам 6.20 – 6.22.
Таблица 6.20
Свойства класса TBook
| Название | Описание |
| Author: string | Автор книги |
| Name: string | Название книги |
Таблица 6.21
Свойства класса TStudentBook
| Название | Описание |
| Fk_book: integer | Ссылка на книгу выданную студенту |
| Fk_student: integer | Ссылка на студента, которому выдали книгу |
Таблица 6.22
Свойства класса TStudents
| Название | Описание |
| Family: string | Фамилия студента |
| Name: string | Имя студента |
| SecondName: string | Отчество студента |
| Num: integer | Номер зачетной книжки студента |
| Group: string | Группу студента |
Невизуальные компоненты интерфейса используемые в примере
TimageList
TimageList предназначен для хранения и последующего использования различных изображений.
Для использования этого компонента поместите его на форму и двойным щелчком мыши запустите мастер создания изображений (см. Рисунок 6.8).
В мастере создания изображений можно добавлять, редактировать и удалять изображения формата иконок.
TActionManager
TActionManager – менеджер действий. Применяется для управления действиями, повторно используемыми в проекте. Для установки изображений отображаемых в действиях нужно настроить свойство Images. Для этого щёлкните два раза по компоненту (см. Рисунок 6.9).

Рисунок 6.8 – Мастер создания изображений в TImageList

Рисунок 6.9 – Окно настройки действий компонента TActionManager
Для добавления действия нажмите клавишу Ins. В списке Actions появится новое действие. Для настройки свойств и событий действия используйте область инспектора. Свойства, которые можно настраивать у действия, представлены в таблице 6.23.
Таблица 6.23
Свойства действий
| Название | Описание |
| Caption | Отображаемое название действия |
| Name | Имя действия |
| ImageIndex | Номер рисунка ассоциируемого с действием |
| Visible | Видимость действия |
События действий описаны в таблице 6.24
Таблица 6.24
События действий