Разработка приложения пользователя - Автоматизация рабочего места кассира автовокзала

Разработка приложений баз данных осуществляется посредством использования среды программирования Delphi7.

Главная форма имеет семь кнопок управления: "Фильтрация", "Автобусы", "Водители", "Билеты", "Клиенты", "Статистика" и кнопка "Печать расписания". На рисунке 12 представлена главная форма.

главная форма

Рисунок 12 - Главная форма

Для того чтобы добавить новый рейс, необходимо добавить запись в поле "Рейсы выбранного маршрута". В этом поле располагается группа компонентов TTable, DataSource, DBGrid1и DBNavigator1.

Для того чтобы добавить расписание, необходимо добавить запись в поле "Расписания автобусов". В этом поле располагается группа компонентов TTable, DataSource, DBGrid1и DBNavigator1.

Для того чтобы добавить новый автобус, необходимо нажать кнопку "Автобусы". В этой форме располагается группа компонентов TTable, DataSource, DBGrid1и DBNavigator1. На рисунке 13 представлена форма "Avtobus".

форма

Рисунок 13 - Форма "Avtobus"

Для того, чтобы просмотреть все имеющиеся билеты необходимо нажать на кнопку "Билеты". В этой форме располагается группа компонентов BitBtn, DBGrid, DataSource, Query, СomboBox. Можно произвести сортировку билетов по № билета. На рисунке 15 представлена форма заказа билета.

форма заказа билета

Рисунок 14 - Форма заказа билета

Для Bilet в свойствах указывается DatabaseName, которая связывает наборы данных с псевдонимом BDE (имя псевдонима baza) и TableName задается Bilet. db. Далее активизируется компонент, т. е. Active=True.

Для DataSource в свойствах указывается DataSet = Table1 для связи визуальных компонентов с набором записей.

Компонент DBGrid1 отображает содержимое таблицы БД в виде сетки, в которой столбцы соответствуют полям, а строки - записям. По умолчанию пользователь может просматривать и редактировать данные. Компонент DBNavigator1 предоставляет возможность перемещаться по таблице, редактировать, вставлять и удалять записи. Компоненты DBGrid1 и DBNavigator1 связываются со своим источником данных - компонентом DataSourse1 через свои свойства DataSource.

По выбранному рейсу на форме заказа билета возможна печать электронного билета. На рисунке 15 представлен электронный билет.

электронный билет

Рисунок 15 - Электронный билет

Для того чтобы посмотреть информацию о всех водителях необходимо нажать на кнопку "Водители". Здесь располагается группа компонентов DBGrid1и Navigator1. Результат нажатия кнопки "Водители" представлен на рисунке 16.

после нажатия кнопки

Рисунок 16 - После нажатия кнопки "Водители"

Для того чтобы посмотреть информацию о всех клиентах необходимо нажать на кнопку "Клиенты". Здесь располагается группа компонентов DBGrid1, Navigator1, Edit и Label. Форма "Клиенты" представлена на рисунке 17.

форма

Рисунок 17 - Форма "Клиенты"

На этой же форме расположен поиск клиентов по ФИО, которому соответствует процедура Table3.Locate.

Для реализации поиска по значениям неиндексированных полей применяется метод Locate. Свойство Caption кнопки BitBtn1 устанавливается равным "Поиск". Далее в обработчике события OnClick кнопки BitBtn1 организуется вызов метода Locate.

Поиск по ФИО представлен на рисунке 18.

поиск клиента по фио

Рисунок 18 - Поиск клиента по ФИО.

Для того, чтобы построить график необходимо нажать на кнопку "Статистика". В этой форме располагается группа компонентов BitBtn, DBGrid, DataSource, Query, DateTimePicker, DBChart, SaveDialog. Статистика по продажам билетов представлена на рисунке 20.

статистика по продажам билетов

Рисунок 19 - Статистика по продажам билетов

Для настройки внешнего вида компоненты DBGrid1 используется встроенный редактор столбцов Columns Editor, который вызывается двойным щелчком по компоненту DBGrid1, команда Add All Fields контекстного меню, для каждого поля меняется значение на кириллицу.

Для реализации фильтрации по станции прибытия на форме располагаются компоненты BitBtn, Edit и Lable. Для Table3 установлено свойство Filtered=true, для Lable3 установлено свойство Caption=Станция прибытия. В Edit необходимо ввести станцию прибытия по которой нужно отфильтровать.

Фильтрация по станции прибытия представлена на рисунке 20.

фильтрация по станции прибытия

Рисунок 20 - Фильтрация по станции прибытия

Для Table1 в свойствах указывается DatabaseName, которая связывает наборы данных с псевдонимом BDE (имя псевдонима Lab3) и TableName задается Komnats. db. Далее активизируется компонент, т. е. Active=True.

Для DataSource в свойствах указывается DataSet=Table1 для связи визуальных компонентов с набором записей.

Для связи между таблицами "Расписания" и "Рейсы" по ключевому полю используются свойства MasterSource и MasterFields подчиненного набора данных. При этом в свойстве MasterSource подчиненного компонента Table1, который находится на главной форме в ней указывается источник данных Form1.DataSource1, соответствующей главной таблице, на записи которой ссылается подчиненная таблица( в данной базе всего шесть связей). При обращении в инспекторе объектов к свойству MasterFields подчиненного компонента Table1, который находится на главной форме, вызывается специальный редактор отношений, изображенный на рисунке 21.

редактор отношений

Рисунок 21 - Редактор отношений

На этой же форме применяется поиск методом Lookup. Двойным щелчком мыши на компоненте Table1, командой AddallFields/NewFields появляется окно, представленная на рисунке 23, в котором устанавливаются следующие значения:

    - поле Name - имя нового поля (avto); -поле Type - тип создаваемого поля (String); -поле Field type - значение lookup; -в выпадающем списке KeyFields выбирается ключевое поле (ID_avto); - в выпадающем списке Dataset выбирается - связываемый набор данных (Table2); - в выпадающем списке Lookup Keys выбирается ключевое поле (ID_avto); - в выпадающем списке Result Field выбирается просматриваемое поле (Gos_nom).

Аналогичным образом создается поиск методом Lookup для других полей.

окно newfields

Рисунок 22 - Окно NewFields

На форме "Статистика по рейсам" расположена таблица, которая осуществляется подсчет количества проданных билетов по рейсам. Подсчет производиться при помощи SQL-запроса.

Окно SQL-запроса представлен на рисунке 23.

окно sql запроса

Рисунок 23-Окно SQL запроса

При нажатии на "Печать расписания" осуществляется переход отчету (рисунок 24). На данной форме можно просмотреть возможное количество рейсов в выбранное направление. Основным компонентом, на котором строится весь отчет, является QuickRep. Он предоставляет ряд возможностей по управлению создаваемым отчетом, включая формирование заголовка.

Компонент QuickRep имеет ряд свойств, определяющих характеристики печати отчета:

    - Printer - задает число копий отчета и диапазон печатаемых страниц; - Page - задает размер страницы; - Zoom - масштаб печати в процентах.
форма

Рисунок 24 - Форма "Отчет"

Листинг программы представлен в приложении Б.

Похожие статьи




Разработка приложения пользователя - Автоматизация рабочего места кассира автовокзала

Предыдущая | Следующая