Разработка фрагмента информационной системы "Аптека" в среде Delphi с применением технологии ADO

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

ь командных кнопок (таблица 3).

 

Рис.13. Компонент DBNavigator

 

Таблица 3.

Кнопки компонента DBNavigator

КнопкаОбозначениеДействиеК первойnbFirstУказатель текущей записи перемещается к первой записи файла данныхК предыдущейnbPriorУказатель текущей записи перемещается к предыдущей записи файла данныхК следующейnbNextУказатель текущей записи перемещается к следующей записи файла данныхК последнейnbLastУказатель текущей записи перемещается к последней записи файла данныхДобавитьnblnsertВ файл данных добавляется новая записьУдалитьnbDeleteУдаляется текущая запись файла данныхРедактированиеnbEditУстанавливает режим редактирования текущей записиСохранитьnbPostИзменения, внесенные в текущую запись, записываются в файл данныхОтменитьCancelОтменяет внесенные в текущую запись измененияОбновитьnbRefreshЗаписывает внесенные изменения в файл

Свойства компонента DBNavigator:

-Name - имя компонента (используется для доступа к свойствам компонента);

-DataSource - имя компонента, являющегося источником данных (в качестве источника данных может выступать база данных (компонент Database), таблица (компонент Table) или результат выполнения запроса (компонент Query));

-VisibleButtons - видимые командные кнопки.

Рассмотрим подробнее каждую вкладку компонента PageControl.

Для таблицы Товары (рис. 14) на рабочей области были созданы пять компонентов DBEdit, которые должны выводить значение записи на экран, а также 2 компонента DBMemo для вывода объемной информации (Фармгруппа и Лекарственная форма). Для некоторых столбцов были добавлены компоненты Label, конкретизирующие информацию в текстовых полях, они отображают наименование столбца. Помимо этого добавлена кнопка Button с надписью Редактировать.

 

Рис. 14. Вкладка Товары. Интерфейс

 

Вкладка Поставщики (рис. 15) аналогично содержит таблицу, поля записей для каждого столбца и кнопку.

Рис. 15. Вкладка Поставщики. Интерфейс

 

Вкладка Персонал (рис. 16) аналогичным образом демонстрирует нам необходимые элементы для просмотра и редактирования данных таблицы.

 

Рис. 16. Вкладка Персонал. Интерфейс

2.2.4 Подключение базы данных Аптека к приложению

Для того чтобы подключить к нашему приложению и отобразить таблицы базы данных, на форме были размещены следующие компоненты: ADOConnection, DataSource и ADOTable - они не будут видны при запуске приложения. На рисунке 17 показано расположение компонентов на форме.

 

Рис. 17. Расположение невизуальных компонентов на форме

 

Компонент ADOConnection (в нашем случае ему присвоено имя apteka_ADOConnection) позволяет очень легко связать базу данных с нашим приложением. Для этого нужно в свойстве ConnectionString создать строку подключения. Программисту доступен удобный мастер по созданию этой строки:

.Выбираем свойство ConnectionString, кликаем по кнопке редактирования (рис. 18).

 

Рис. 18. Свойство ConnectionString компонента ADOConnection

 

.В появившейся форме мастера командной строки нажимаем на кнопку Build… (рис. 19).

Рис. 19. Мастер командной строки

 

3.Выбираем поставщика данных Microsoft Jet 4.0 OLE DB Provider для базы данных MS Access и щелкаем кнопку Далее (рис. 20).

Аналогичным образом к Delphi подключаются другие БД. Например, для подключения базы данных SQL сервера используется поставщик данных Microsoft OLE DB Provider for SQL server

 

Рис. 20. Вкладка Поставщик данных

 

.Теперь нужно выбрать нужную нам базу данных (если она сделана в MS Access, то должна иметь расширение *.mdb) и проверить соединение данных (рис. 21).

 

Рис. 21. Вкладка Соединение

 

.Нажимаем на ОК, строка доступа сгенерирована.

В свойстве Connected компонента ADOConnection должно стоять True. Это свидетельствует о том, что база данных подключена.

На форме было размещено 3 невизуальных компонента DataSource

(), отвечающих за каждую таблицу. Через свойство источника данных - DataSet - они были связаны с соответствующими компонентами ADOTable.

У каждого компонента ADOTable необходимо изменить следующие свойства:

1)Connection := apteka_ADOConnection;

2)TableName := Поставщики или Товары или Персонал (в зависимости от нужной таблицы);

3)Active := True.

Для того чтобы таблицы выводились на соответствующие компоненты DBGrid, необходимо и для них установить источник данных в свойстве DataSource - это один из трех компонентов DataSource. Таким же образом необходимо связать и компоненты DBNavigator.

Ниже на рис. 22 можно увидеть схему связи данных и компонентов технологии ADO.

 

Рис. 22. Схема связи данных и компонентов технологии ADO

 

Особенности программного кода

В связи с тем, что технология ADO инкапсулирует все процедуры, нет необходимости в объемном программном коде, поэтому все особенности кода заключаются лишь в организации удобства интерфейса приложения: подготовка программы к работе и функционирование кнопки Редактировать.

procedure Tapteka_form.FormActivate(Sender: TObject);:=0;:=0;:=0;_dbedit1.Enabled:=false;_dbedit2.Enabled:=false;_dbedit3.Enabled:=false;_dbedit4.Enabled:=false;_dbedit5.Enabled:=false;_dbmemo1.Enabled:=false;_dbmemo2.Enabled:=false;_dbedit1.Enabled:=false;_dbedit2.Enabled:=false;_dbedit3.Enabled:=false;_dbedit4.Enabled:=false;_dbmemo1.Enabled:=false;_dbedit1.Enabled:=false;_dbedit2.Enabled:=false;_dbedit3.Enabled:=false;_dbedit4.Enabled:=false;_dbedit5.Enabled:=false;_dbedit6.Enabled:=false;_dbedit7.Enabled:=false;_dbedit8.Enabled:=false;_dbedit9.Enabled:=false;_dbedit10.Enabled:=false;_dbmemo1.Enabled:=false;

end;

При активации приложения формируются начальные значения переменных и всем компонентам для работы с текстом присваивается значение False в свойстве Enabled во избежание случайного (непреднамеренного) редактирования запи