Листингпрограммногомодуля:
if (Edit1.Text <> '') or (MaskEdit1.Text <> '') then
begin
dat:= FormatDateTime('ddmmyyhhmm',Now);
SQLString:='insert into tickets values("'+FormatDateTime('ddmmyyhhmm',Now)+'","'+Edit1.Text+'","'+MaskEdit1.Text+'","'+Label2.Caption+'","'+Label10.Caption+'","'+Label11.Caption+'","'+Label19.Caption+'","'+Label6.Caption+'","'+Label15.Caption+'","'+Label17.Caption+'","'+Label13.Caption+'","'+StringReplace(Label27.Caption,',','.',[rfReplaceAll])+'")';
if ExecuteSQL(SQLString) then
begin
GetDir(0,Path);
with TIniFile.Create(Path+'\zd.ini') do
try
SQLString:= 'insert into prices values("'+Label21.Caption+'","'+Label23.Caption+'","'+Label25.Caption+'","'+StringReplace(ReadString('cash',Label13.Caption,'no values'),',','.',[rfReplaceAll])+'","'+StringReplace(ReadString('cash','сбор','no values'),',','.',[rfReplaceAll])+'","'+StringReplace(FloatToStr(priceway),',','.',[rfReplaceAll])+'")';
finally
Free;
end;
ExecuteSQL('delete from prices');
if ExecuteSQL(SQLString) then
begin
// ShowMessage('Успешнаярегистрация');
FormTicket.Close;
SQLString:= 'select * from tickets, prices where tickets.no_ticket="'+dat+'"';
QReport.SQL.Clear;
QReport.SQL.Add(SQLString);
QReport.Open;
frReport1.LoadFromFile(Path+'\ticket.frf');
frReport1.ShowReport;
with FormPay do
begin
ComboBox1.Text:= '';
ComboBox2.Text:= '';
RzDateTimeEdit1.Text:= '';
// RzToolButton1Click(sender);
with StringGrid1 do
begin
RowCount:= 2;
ColCount:=55;
for i:=1 to ColCount-1 do
begin
ColWidths[i]:=20;
Cells[i,0]:=IntToStr(i);
end;
end;
end;
end;
end;
end else ShowMessage('Не введены обязательные данные!');
3.3 Описание интерфейса пользователя
При запуске программы на выполнение на экране компьютера появляется следующее меню изображённое на рисунке 3.
Рисунок 3 – Главное окно
Меню состоит из пунктов «Продажа билетов», «Администратор». При выборе пункта меню «Продажа билетов» появляется следующее подменю, изображённое на рисунке 4.
Рисунок 4 – Форма продажи билетов
На форме указаны «Номер рейса», «Пункт отправления», «Пункт назначения», «Дата отправления» - это поля, которые заполняются оператором; поля «Рейсы», «Состав» - отображаются сразу после запроса. Как только информация отобразилась, оператор приступает к регистрации пассажира, рисунок 5.
Рисунок 5 – Форма регистрации пассажира
После регистрации идёт оформление документа, представленного на рисунке 6.
Рисунок 6 – Проездной документ
При выборе пункта меню «Администратор», необходимо ввести пароль. Так как обычный оператор не вправе что-либо менять или исправлять в самой базе данных. Вид окошка представлен на рисунке 7.
Рисунок 7 – Ввод пароля
Появляется форма администратора с вкладками «Станции», «Рейсы», «Стоимость класса вагона», «Поезда», «Стоимость участка пути», форма изображена на рисунке 8.
Рисунок 8 – Форма администратора (вкладка «Станции»)
При выборе команды «Рейсы» на экране появляется новое окно, отображённое на рисунке 9.
В данном окне администратор может добавлять новые рейсы, внося их номер и полный путь, а название рейса формируется автоматически – из начальной заданной станции и конечной прописанной в пути.
Рисунок 9 – Рейсы (добавление)
В списке, изображенных в окне, отражаются все операции, произведенные по каждому рейсу, будь то добавление, редактирование или удаление станций и его номера. Кнопка «Добавить» предназначена для добавления из списка станций нового маршрута, содержащего полный путь рейса. Если после какой-либо корректировки данных кнопка не будет нажата, рейс не будет добавлен. При нажатии на кнопку на кнопку «Отмена» происходит возврат в предыдущее окно без сохранения. После выбора вкладки «Стоимость класса вагона» появляется новое окно, изображённое на рисунке 10.
Рисунок 10 – Вкладка «Стоимость класса вагона»
Вносятся необходимые изменения, и нажимается кнопка «Применить».
Рассмотрим вкладку «Поезда», представленную на рисунке 10. Здесь отмечаются сколько вагонов находится в составе и под каким номером какие типы вагонов. После нажатия кнопки «Применить», информация заносится в таблицу.
Рисунок 11 – Вкладка «Поезда»
На вкладке «Стоимость участка пути», изображённой на рисунке 11, администратор вносит необходимые данные: время в пути, время прибытия, стоянка, время отправления, стоимость участка. После нажатия кнопки «Применить», вне-сённые данные отображаются в верхней таблице.
Рисунок 11 – Вкладка «Стоимость пути»
Заключение
Разработанный нами программный продукт является удобным и надежным средством для быстрой регистрации пассажиров для проезда на железнодорожном транспорте.
Программный продукт выполняет следующие функции:
- возможность заказа билета из любой точки мира при наличии подключения к внутренней компьютерной сети;
- возможность добавления и редактирования маршрутов, цен на билеты.
- заказ билета на любую дату.
- быстрый расчет времени в пути.
Возможные улучшения:
- выбор пассажиром места в вагоне (верхняя, нижняя полка)
- выдача рекомендаций по оптимальному с точки зрения времени, проведенному в пути и стоимости билета, маршруту между двумя пунктами.
Список литературы:
1. ГОСТ 2.105-95 ЕСКД – общие требования к текстовым документам;
2. ГОСТ 2.304-81 ЕСКД – шрифты чертёжные;
3. ГОСТ 2.106-68 ЕСКД – текстовые документы;
4. Общие требования и правила оформления выпускных квалификационных работ, курсовых проектов, отчетов ОГУ;
5. Программирование на Delphi 6, Глушаков С.В.