5.3.3 Модуль данных DataModule1 и модуль DBUnit

Модуль данных DataModule1 типа TdataModule является контейнером для невизуальных компонентов, связанных с БД. Также он включает в себя методы для установления параметров, уровня доступа и соединения с БД, вызова хранимых процедур и фильтрации БД. Ниже рассмотрим все данные методы и объекты.

Метод TDataModule1.Connect производит соединение с БД. Сначала Определяются параметры соединения (диалект SQL, кодировка символов, имя и пароль пользователя, путь к базе данных), затем непосредственно осуществляется соединение.

Метод TDataModule1.InitDBParams начальную инициализацию параметров соединения с БД и далее вызывает метод TDataModule1.Connect для осуществления соединения. Параметры берутся из командной строки, а если они отсутствуют, то из файла инициализации программы.

Метод TDataModule1.SetAccess осуществляет установку уровня доступа пользователя (возможность просмотра/изменения или только возможность просмотра данных ДБ) путём вызова хранимой процедуры IsWriter. В случае, если не возникает исключения, то пользователь обладает полным доступом, в ином случае – только просмотр.

Три следующих метода TDataModule1.CallInsertBook, TDataModule1.CallDeleteBook и TDataModule1.CallUpdateBook осуществляют соответственно вставку нового источника, удаления существующего источника или редактирования существующего источника посредством вызова хранимых на стороне сервера процедур InsertBook, DeleteBook и UpdateBook.

Метод TDataModule1.SetFilter устанавливает заданные параметры фильтрации записей БД и включает режим локальной фильтрации.

Метод TDataModule1.IsFieldContainStr проверяет, содержит ли заданное поле заданную подстроку.

Объект IBTransaction1 типа TIBTransaction предназначен для осуществления транзакций БД. Он связывается с компонентом БД посредством задания его свойству DefaultDatabase значения IBDatabase1.

Объект IBDatabase1 типа TIBDatabase предназначен для осуществления соединений с БД. Он связывается с компонентом транзакций посредством задания его свойству DefaultTransaction значения IBTransaction1.

Компонент IBDataSet1 типа TIBDataSet предназначен для манипулирования набором данных, получаемом посредством SQL-запроса к БД. Для соединения с БД свойству компонента Database присваивается имя IBDatabase1. Он связывается с компонентом транзакций посредством задания его свойству Transaction значения IBTransaction1. Объект имеет два определённых обработчика событий AfterScroll и OnFilterRecord.

Компонент IBStoredProc1 типа TIBStoredProc предназначена для вызова хранимых на сервере процедур вставки, удаления источников и проверки доступа. Компонент связан с объектами IBDatabase1 и IBTransaction посредством задания соответствующих свойств.

Компонент DataSource1 типа TDataSource предназначен для связи набора данных БД с таблицей БД, то есть является источником данных для таблицы MainForm.DBGrid1. Используется набор данных IBDataSet1.

5.3.4 Форма EditForm и модуль Edit

Форма EditForm представляет собой диалоговое окно, предназначенное для задания пользователем атрибутов новой или редактируемой записи. Форма является контейнером для визуальных компонентов и одного невизуального компонента OpenDialogArc типа TOpenDialog. Он является стандартным диалогом Delphi для открытия файла и предназначен для выбора архива, содержащего файлы источника.

При активизации формы, выполняется метод EditForm.FormActivate, который в свою очередь для каждого комбинированного списка вызывает метод TEditForm.SetComboBox, в котором он заполняется соответствующими значениями из БД.

Ниже рассматриваются все визуальные компоненты формы.

На форме располагаются две панели типа TPanel: Panel1 и Panel2. Они выполняют роль контейнеров для других визуальных элементов и предназначены для облегчения проектирования формы и улучшения её дизайна. На панели Panel1 расположены управляющие кнопки окна, а на панели Panel2 поля ввода, метки к ним и переключатели.

Управляющие кнопки окна представляют собой компоненты BOK и BCancel типа TbitBtn и предназначены для подтверждения (внесения в БД) или отмены введённых в полях ввода данных. Они я являются кнопками предопределенных типов. Свойству Kind этих компонентов присвоены значения bkOK и bkCancel соответственно. Кнопка BOK генерирует результат закрытия формы mrOK, а BCancel mrCancel, которые обрабатываются в соответствующих процедурах.

На панели Panel2 располагаются GroupBoxData типа TGroupBox, GroupBoxSection типа TGroupBox, RadioGroupSource типа TRadioGroup и GroupBoxPath типа TGroupBox.

Компонент GroupBoxData предназначен для выделения компонентов ввода параметров источника и является контейнером для комбинированных списков ввода параметров (типа TComboBox) и меток к ним (типа TLabel): ComboBoxAut и LabelAut – автор источника, ComboBoxTit и Labeltit – название источника, ComboBoxLan и LabelLan – язык источника.

Компонент GroupBoxSource предназначен для выделения поля ввода/редактирования тем, связанных с источником, Memo1 типа TMemo и является контейнером для него.

Компонент RadioGroupSource предназначен для выбора физического расположения файлов источника (дисковый каталог, файл архива или одиночный файл).

Компонент GroupBoxPath предназначен для выделения компонентов ввода путей к файлу (файлам) источника и является контейнером для меток к полям редактирования типа TLabel, полей ввода типа TEdit и кнопок типа TBitBtn для активизации диалогов поиска элементов ввода.


Информация о работе «Разработка базы данных»
Раздел: Информатика, программирование
Количество знаков с пробелами: 192006
Количество таблиц: 8
Количество изображений: 14

Похожие работы

Скачать
8227
2
24

... Таблица «Счет» Таблица «Товар» Таблица «Товар по счету» Таблица «Товарные группы» Лабораторная работа № 2. Разработка запросов отбора данных и вычислений Цель работы приобретение навыков в описании запросов к базе данных на языке QBE (Query by Example). Выборка неоплаченных счетов Результат выполнения: Выборка поставок Результат выполнения: Поиск ...

Скачать
29742
2
5

... : pered=record st:array[1..12] of string; m:byte; {количество строк в меню} end; temr,tt1,tt2,tt3,tt4:cc – Таблицы базы данных. Тут tt1 – таблица с данными о студентах, tt2 – предметы, tt3 – преподаватели, tt4 – оценки (успеваемость). Temr – временная таблица. Все эти переменные являются динамическими списками. Они описаны в файле tips.pas: tabl2=record {Сама ...

Скачать
45741
9
1

... от используемых в дальнейшем программных средств [1]. Для описания инфологической модели были использованы графические средства. Описание связи «объект-свойство» изображено на рис. 2.2.1 графического материала. База данных «Кадры» разрабатывается для хранения текстовой информации (хотя для удобства ввода некоторые поля таблиц – числовые), поэтому в приложении не будут применены вычисления ...

Скачать
17300
10
0

... проекта 1. Введение. Целью данного курсового проекта является структурирование данных и разработка пользовательского интерфейса. В курсовом проекте рассмотрены следующие теоретические вопросы и практические задания: ü  проведен системно-комплексный анализ выбранного объекта автоматизации ü  разработана структура пользовательского интерфейса автоматизированной системы &# ...

0 комментариев


Наверх