Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовая работа (текст), Кашина Ю.С., ПИ-23.docx
Скачиваний:
13
Добавлен:
27.09.2019
Размер:
715.87 Кб
Скачать

2.2. Общий вид и особенности работы приложения Разработка базы данных «Аптека»

Было решено создать базу данных для приложения в СУБД MSAccess, она получила название Аптека.mdb (рис. 8). В Delphi можно работать только с базами формата .mdb, поэтому пришлось выполнять разработку БД в MSAccess версии 2003 года.

Рис. 8. Создание новой базы данных

Для фрагмента информационной системы «Аптека» на основе полученных знаний из предметной области были созданы следующие таблицы:

Таблица «Персонал» базы данных «Аптека» (рис. 9)

Рис. 9. Таблица «Персонал». Содержание записей

Таблица «Поставщики» базы данных «Аптека» (рис. 10)

Рис. 10. Таблица «Поставщики». Содержание записей

Таблица «Товары» базы данных «Аптека» (рис. 11)

Рис. 11. Таблица «Товары». Содержание записей

Схема данных базы данных «Аптека»

Таблицы были связаны между собой связью «один-ко-многим» (рис. 12).

Рис.12. Схема данных БД «Аптека»

Работа над базой данных была завершена; был начат этап разработки приложения в среде программирования Delphi.

Процесс разработки пользовательского интерфейса приложения

Используя знания, полученные в процессе изучения технологии ADO и компонентов Delphi для работы с базой данных, был создан фрагмент информационной системы. Было решено, что программа должна обеспечить работу с таблицами БД и редактирование записей в отдельных текстовых полях.

Таким образом, был создан интерфейс для работы с приложением, который можно увидеть ниже.

Для удобства работы с тремя таблицами был использован компонент PageControl ( ), содержащийся во вкладке Win32. Он позволяет избавить приложение от перегруженности компонентов и решил нашу проблему с размещением таблиц. Для того чтобы создать новую вкладку компонента PageControl, размещенного на форме, необходимо в выпадающем меню щелчком правой кнопкой мыши выбрать пункт New page; на вкладках можно располагать все необходимые компоненты.

На каждую страницу PageControl были помещены DBGrid, DBNavigator и необходимое количество полей для редактирования (DBEdit, DBMemo), а также несколько компонентов Label и кнопка Button, которая отвечает за процесс редактирования записей.

Сразу оговоримся о назначении и свойствах этих компонентов.

Компоненты DBEdit и DBMemo обеспечивают просмотр и редактирование полей записи базы данных. Они позволяет отображать и редактировать данные полей различных типов: строка, число, булева величина.

Свойства компонентов DBEdit и DBMemo, обеспечивающие связь с данными:

  • DataSource – источник данных типа TDataSource;

  • DataField – имя поля, с которым связан компонент;

  • Field – объект этого поля (только для чтения).

Компонент TDBGrid обеспечивает табличный способ отображения на экране строк данных из компонентов TTable или TQuery. Приложение может использовать TDBGrid для отображения, вставки, уничтожения, редактирования данных БД. Обычно DBGrid используется в сочетании с DBNavigator, хотя можно использовать и другие интерфейсные элементы, включив в их обработчики событий методы First, Last, Next, Ptior, Insert, Delete, Edit, Append, Post, Cancel компонента TTable.

Свойства компонента, обеспечивающие связь с данными:

  • Name - имя компонента;

  • DataSource - источник отображаемых в таблице данных (компонент DataSource);

  • Columns - массив объектов типа TColumn, каждый из которых определяет колонку таблицы и отображаемую в ней информацию.

Компонент DBNavigator (рис. 13) обеспечивает перемещение указателя текущей записи, активизацию режима редактирования, добавление и удаление записей. Компонент представляет собой совокупность командных кнопок (таблица 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. Вкладка «Персонал». Интерфейс