Файл: Программное обеспечение справочной службы аэропорта.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 25.05.2023

Просмотров: 1562

Скачиваний: 23

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

2.4 Описание пользовательского интерфейса приложения

Работа приложения начинается с отображения формы входа.

Здесь необходимо ввести логин и пароль пользователя.

Рисунок 2.9. Форма входа

После этого на экране отобразится главное окно программы.

Рисунок 2.10. Главное окно программы

Из этого окна с помощью специальных кнопок можно переходить к другим формам.

Форма ввода билетов выглядит следующим образом:

Рисунок 2.11. Форма ввода билетов

Форма ввода рейсов выглядит следующим образом:

Рисунок 2.12. Форма ввода рейсов

Форма ввода сотрудников выглядит следующим образом.

Рисунок 2.13. Форма ввода сотрудников

Форма ввода пассажиров выглядит следующим образом.

Рисунок 2.14. Форма ввода пассажиров

Остальные формы выполнены аналогичным образом.

Заключение

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

Для написания программы необходимо было освоить новые технологии, а именно язык программирования Delphi.

Разработанный программный продукт отвечает всем требованиям задания на дипломную работу. Интерфейс написан на современном языке программирования Delphi и имеет простую и понятную навигацию. При необходимости данная программа может быть легко модернизирована и расщирен ее функционал.

Список литературы

  1. Виллариал Б. Программирование Access 2012 в примерах. Пер с англ. – М.: Кудиц-Образ, 2015. – 496 с.
  2. Гайдамакин Н.А. Автоматизированные информационные системы, базы и банки данных. Вводный курс: Учебное пособие. – М.: Гелиос АРВ, 2015. – 368 с., ил.
  3. Гринченко Н.Н., Гусев Е.В., Макаров Н.П., Пылькин А.Н., Цуканова Н.И. Проектирование баз данных. СУБД Microsoft Access. Учебное пособие для ВУЗов. М.: Горячая линия-Телеком, 2014. – 240 с., ил.
  4. Дейт К.Дж. Введение в системы баз данных, 8-е издание. Пер с англ. М. ИД «Вильямс», 2015. – 1328 с., ил.
  5. Кауфельд Джон. Access 2003 для «чайников». Пер с англ. – М.: Вильямс, 2014. – 320 с., ил.
  6. Кошелев В.Е. Access 2017. М.: Бином-Пресс, 2017. – 592 с., ил.
  7. Культин Н. Основы программирования в Delphi XE. СПб.: БХВ, 2016. – 416 с.
  8. Маклаков С.В. Создание информационных систем с AllFusion Modelling Suite. – М.: Диалог-МИФИ, 2015. – 432 с.
  9. Осипов Д. Л. Базы данных и Delphi. Теория и практика. СПб.: BHV, 2015.
  10. Осипов Д. Delphi XE2. СПб.: БХВ, 2016. – 626 с.
  11. Петров В.Н. Информационные системы. Спб.: Питер, 2016. – 688 с., ил.
  12. Петкович Д. Microsoft SQL Server 2012. Руководство для начинающих. СПб.: БХВ, 2014. – 567 с.
  13. Понамарев В. Самоучитель Delphi XE8 Studio. СПб.: БХВ, 2016.
  14. Рудикова Л.В. Базы данных. Разработка приложений. СПб.: БХВ-Петербург, 2017. – 496 с.: ил.
  15. Хойтек А. Microsoft SQL Server 2018. Реализация и обслуживание. Учебный курс Microsoft. М.: Русская редакция, 2018. – 576 с.
  16. Станек У.Р. Microsoft SQL Server. Справочник администратора. СПб.: БХВ, 2016.
  17. Стивенс Р. Программирование баз данных. Изд. 2-е. Пер. с англ. – М.: Бином-Пресс, 2016. – 384 с., ил.
  18. Фараонов В. DELPHI. Программирование на языке высокого уровня: Учебник для вузов. СПб.: Питер, 2015.
  19. Фленов М. Библия Delphi. СПб.: БХВ, 2017. – 676 с.

Приложение А

Рейс

Код

Наименование

пункт назначени

номер рейса

дата начала

дата конца

название авиакомпании

стоимость билета

самолет

1

Рейс 1

1

1AF

14.02.2018

04.11.2018

1

10000

2

Рейс 2

2

2AF

15.07.2018

31.12.2018

2

12000

3

Рейс 3

1

3DD

21.07.2018

14.07.2018

3

5000

4

Рейс 4

2

4CD

02.05.2018

04.07.2018

3

7000

5

Рейс 5

3

2AD

14.02.2018

15.07.2010

1

2000

6

Рейс6

4

12DS

15.07.2018

31.12.2018

1

12000

7

Рейс 7

5

13DF

21.07.2018

14.07.2018

2

8000

8

Рейс 8

4

12DF

02.05.2018

01.04.2018

2

10000

9

Рейс 9

3

27BA

16.09.2018

31.12.2018

2

1391

10

Рейс 10

3

19CB

02.06.2018

25.12.2018

4

10095

11

Рейс 11

2

23DC

03.12.2008

24.08.2018

2

14502

12

Рейс 12

2

31ED

27.04.2018

05.01.2018

3

10359

13

Рейс 13

2

30FE

20.03.2018

31.12.2018

1

12999

14

Рейс 14

1

31AF

20.02.2018

22.08.2018

2

2142

15

Рейс 15

2

35BA

05.06.2018

23.03.2018

4

14955

Билет

Код

Рейс

Пассажир

Сотрудник

Номер

Вылет

1

5

3

2

1a11

25.07.2018

2

1

2

4

2a11

25.07.2018

3

1

3

4

3a11

25.07.2018

4

2

4

4

3a111

25.07.2018

5

1

5

4

5a11

25.07.2018

6

1

6

2

1б11

08.03.2018

7

2

2

2

1б11

08.03.2018

8

2

3

2

2б11

08.03.2018

9

2

4

2

3б11

08.03.2018

10

2

5

2

10A

08.03.2018

11

2

1

3

20B

08.03.2018

12

2

2

3

30C

22.03.2018

13

3

3

3

40A

22.03.2018

14

3

4

3

50B

22.03.2018

15

3

5

4

60C

22.03.2018

16

3

6

3

70A

22.03.2018

17

3

1

3

80B

22.03.2018

18

3

2

3

90C

22.03.2018

19

4

33

3

100A

22.03.2018

20

4

34

3

110B

22.03.2018

21

4

35

3

120C

06.10.2018

22

4

36

2

130A

06.10.2018

23

4

37

3

140B

06.10.2018

24

5

38

3

150C

06.10.2018

25

5

39

3

160A

06.10.2018


Пассажир

Код

Скидка

Фамилия

Имя

Отчество

Телефон

Адрес

Паспорт

1

1

Иванов

Иван

Иванович

123-456-789

улица Центральная 1

3425425

2

2

Петров

Петр

Петрович

3231-434-2134

проспект Космонавтов 213-12

632252342

3

Сидоров

Елена

Сергеевна

34-43-432

улица Мира 45-4

23421312

4

3

Сухов

Семен

Валентинович

340-454-3452

КОММУНИСТИЧЕСКАЯ 9-63

52234252

5

Николашин

Александр

Петрович

423534534

ВЯЗЕМСКОГО 25В-21

42456362134

6

4

Тимофеева

Елена

Сергеевна

63635225

МАРЕСЬЕВА 120-2

424252452

7

Гостева

Анна

Александровна

ТЕЛ 343720666

ОСТРОВСКОГО 10-40

10872939

8

1

Цыбочкин

Василий

Михайлович

ТЕЛ 351883004

ОСТРОВСКОГО 6-78

14144149

9

2

Легошина

Марина

Владимировна

ТЕЛ 360045342

ВЯЗЕМСКОГО 21-3

11393603

10

Пигалёва

Дина

Николаевна

ТЕЛ 368207680

КОММУНИСТИЧЕСКАЯ 36-27

14068078

11

Арбузова

Александра

Федоровна

ТЕЛ 376370018

КОММУНИСТИЧЕСКАЯ 38-4

14296566

12

Свистунова

Клавдия

Николаевна

ТЕЛ 384532356

БЕКЕШСКАЯ 8-6

13263457

13

Тараскина

Мария

Фёдоровна

ТЕЛ 392694694

ФУРМАНОВА 1-52

10125933

14

2

Гусева

Анна

Григорьевна

ТЕЛ 400857032

8 МАРТА 15-330

11953991

15

Каменева

Евгения

Леонидовна

ТЕЛ 409019370

КОММУНИСТИЧЕСКАЯ 9-33

12839325

16

3

Филатов

Сергей

Викторович

ТЕЛ 417181708

ВОРОШИЛОВА 18-37

14166642

17

3

Калмыкова

Мария

Ивановна

ТЕЛ 425344046

ВОРОШИЛОВА 24-54

12004875

18

4

Кособоков

Александр

Петрович

ТЕЛ 433506384

ВЯЗЕМСКОГО 31-9

14179782

19

Шафеева

Наиля

Асятовна

ТЕЛ 441668722

ВЕСЕННЯЯ 16

11703159

20

1

Мусаков

Петр

Сергеевич

ТЕЛ 449831060

ПОБЕДЫ 24-77

11561287

21

2

Акишина

Наталья

Дмитриевна

ТЕЛ 457993398

ПОБЕДЫ 14А-57

10067504

22

Гурова

Елена

Николаевна

ТЕЛ 466155736

ПОБЕДЫ 14А-49

11412786

23

3

Зайкова

Светлана

Александровна

ТЕЛ 474318074

ПОБЕДЫ 16-14

12585862

24

Тележкин

Константин

Николаевич

ТЕЛ 482480412

8 МАРТА 25-339

14294464

25

3

Мухин

Василий

Николаевич

ТЕЛ 490642750

КАРПИНСКОГО 33-182

13900580

26

Галкин

Валерий

Иванович

ТЕЛ 498805088

БЕКЕШСКАЯ 10-8

13508964

27

4

Симакина

Мария

Степановна

ТЕЛ 506967426

ВЯЗЕМСКОГО 37-1

10561186

28

Авилов

Михаил

Григорьевич

ТЕЛ 515129764

ФУРМАНОВА 3-44

12218081

29

1

Пономарев

Александр

Васильевич

ТЕЛ 523292102

КАРПИНСКОГО 7-9

11829060

30

Родимин

Валентин

Иосифович

ТЕЛ 531454440

ФУРМАНОВА 1-42

10008987

31

Чернов

Станислав

Михайлович

ТЕЛ 539616778

ФУРМАНОВА 7-50

13046084

32

Кулагина

Вера

Васильевна

ТЕЛ 547779116

ПОБЕДЫ 24-79

11015905

33

Головина

Марина

Анатольевна

ТЕЛ 555941454

КАРПИНСКОГО 7-71

11273285

34

Каширов

Сергей

Иванович

ТЕЛ 564103792

ОСТРОВСКОГО 4-114

11950433

35

Волкова

Любовь

Петровна

ТЕЛ 572266130

ОСТРОВСКОГО 10-83

11861938

36

2

Комракова

Валентина

Григорьевна

ТЕЛ 580428468

КАРПИНСКОГО 23-44

13160750

37

Лукьяненко

Нина

Николаевна

ТЕЛ 588590806

ПОБЕДЫ 12А-19

12747298

38

3

Миронова

Клавдия

Алексеевна

ТЕЛ 596753144

СУВОРОВА 192-69

10563020

39

Страчкова

Елена

Николаевна

ТЕЛ 604915482

ПОБЕДЫ 20-31

11131532

40

4

Кожевникова

Инна

Николаевна

ТЕЛ 613077820

КАРПИНСКОГО 7-52

10782896

41

Шишкина

Анна

Ивановна

ТЕЛ 621240158

КОММУНИСТИЧЕСКАЯ 38-92

10149077

42

1

Травина

Татьяна

Александровна

ТЕЛ 629402496

8 МАРТА 15-488

11750321

43

2

Рьянова

Ольга

Вячеславовна

ТЕЛ 637564834

КОММУНИСТИЧЕСКАЯ 9-8

14686858

44

Сюзюмова

Мария

Ивановна

ТЕЛ 645727172

ПОБЕДЫ 12А-11

10477153

45

Устинов

Алексей

Осипович

ТЕЛ 653889510

КАРПИНСКОГО 7-67

10868784

46

Ковылова

Виктория

Викторовна

ТЕЛ 662051848

ОСТРОВСКОГО 16-5

11120483

47

Губина

Мария

Андреевна

ТЕЛ 670214186

КОММУНИСТИЧЕСКАЯ 38-49

14664921

48

Панферов

Николай

Леонтьевич

ТЕЛ 678376524

КАРПИНСКОГО 10-65

11617495

49

Чигирева

Светлана

Анатольевна

ТЕЛ 686538862

БЕКЕШСКАЯ 8

10182550

50

Кручинина

Валентина

Викторовна

ТЕЛ 694701200

КОММУНИСТИЧЕСКАЯ 29-5

11436367

51

Шмелева

Татьяна

Геннадьевна

ТЕЛ 702863538

ЯБЛОЧКОВА 1-Й 35-1

10518256

52

Гостяев

Иван

Алексеевич

ТЕЛ 711025876

ПОБЕДЫ 12-23

14266677

53

Архангельская

Галина

Георгиевна

ТЕЛ 719188214

КОММУНИСТИЧЕСКАЯ 35-82

14163030

54

Кочеткова

Светлана

Михайловна

ТЕЛ 727350552

8 МАРТА 9-134

14265195

55

Кудрявцева

Нина

Ивановна

ТЕЛ 735512890

ЯБЛОЧКОВА 1-Й 35-2

11154116

56

Сергеев

Александр

Федорович

ТЕЛ 743675228

ФУРМАНОВА 11-12

12379461

57

Коломеец

Анастасия

Владимировна

ТЕЛ 751837566

КАРПИНСКОГО 19-17

12506713

58

Кауфман

Светлана

Петровна

ТЕЛ 759999904

КАРПИНСКОГО 19-42

10136758

59

Марухин

Александр

Павлович

ТЕЛ 768162242

ОСТРОВСКОГО 14-21

11744070

60

Макушева

Людмила

Николаевна

ТЕЛ 776324580

ПОБЕДЫ 14А-12

10434155

61

Андреева

Елена

Тимофеевна

ТЕЛ 784486918

КАРПИНСКОГО 1-37

14126968

62

Рахматулина

Гульжиган

Алимовна

ТЕЛ 792649256

КАРПИНСКОГО 19А-15

10543370

63

Сердюкова

Елена

Дмитриевна

ФУРМАНОВА 11-81

13306434

64

Горячев

Анатолий

Алексеевич

КОММУНИСТИЧЕСКАЯ 45-5

11582808

65

Логунова

Татьяна

Борисовна

ВЯЗЕМСКОГО 45-45

14065956

66

Новикова

Зоя

Егоровна

КАРПИНСКОГО 7-20

11463911

67

Федосеева

Юлия

Францевна

ОСТРОВСКОГО 17-27

14358707

68

Резниченко

Лидия

Александровна

КОММУНИСТИЧЕСКИЙ 9-2

10912793

69

Шуваева

Галина

Николаевна

ПОБЕДЫ 12А-6

10270569

70

Брюхова

Светлана

Николаевна

ПОБЕДЫ 16-53

11316113

71

Середавина

Валентина

Александровна

КАРПИНСКОГО 45-191

12147582

72

Андреева

Ольга

Вячеславовна

КАРПИНСКОГО 41-78

10826699

73

Смирнова

Валентина

Васильевна

ФУРМАНОВА 11-19

11458423

74

Чуприкова

Лидия

Александровна

КАРПИНСКОГО 19-12

10132254

75

Арянин

Николай

Васильевич

КАРПИНСКОГО 25-80

10869023

76

Крутецкая

Надежда

Алексеевна

ФУРМАНОВА 7-24

10506245


Самолет

Код

Бортовой номер

Модель

Вместимость

Дата ввода

1

АВВА 12

Boeing 777

200

12.01.2000

2

FDFSD122

Boeing 777

200

12.10.2001

3

SFFS897

Boeing 737

170

12.10.2001

4

FSDFS2412

Suhoy Super Jet 100

120

12.10.2001

5

CZC314

Suhoy Super Jet 100

120

12.10.2001

6

LKD13135

Suhoy Super Jet 100

120

12.10.2001

Приложение B

Исходный код модуля UMain.pas

unit UMain;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, UDataModule, Data.DB, Vcl.Grids,

Vcl.DBGrids, Vcl.StdCtrls, Vcl.Buttons;

type

TMain = class(TForm)

BitBtn1: TBitBtn;

BitBtn2: TBitBtn;

BitBtn3: TBitBtn;

BitBtn4: TBitBtn;

BitBtn5: TBitBtn;

BitBtn6: TBitBtn;

BitBtn7: TBitBtn;

BitBtn8: TBitBtn;

BitBtn9: TBitBtn;

procedure FormShow(Sender: TObject);

procedure BitBtn1Click(Sender: TObject);

procedure BitBtn2Click(Sender: TObject);

procedure BitBtn3Click(Sender: TObject);

procedure BitBtn4Click(Sender: TObject);

procedure BitBtn5Click(Sender: TObject);

procedure BitBtn6Click(Sender: TObject);

procedure BitBtn7Click(Sender: TObject);

procedure BitBtn8Click(Sender: TObject);

procedure BitBtn9Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Main: TMain;

implementation

{$R *.dfm}

uses ULogin, UBilety, UReis, UAvia, USotrudnik, UDoljnost, UPassajir, USamolet,

USkidka, UPunkt;

procedure TMain.BitBtn1Click(Sender: TObject);

begin

Bilety.Show;

end;

procedure TMain.BitBtn2Click(Sender: TObject);

begin

Reis.Show;

end;

procedure TMain.BitBtn3Click(Sender: TObject);

begin

Avia.Show;

end;

procedure TMain.BitBtn4Click(Sender: TObject);

begin

Sotrudnik.Show;

end;

procedure TMain.BitBtn5Click(Sender: TObject);

begin

Doljnost.Show;

end;

procedure TMain.BitBtn6Click(Sender: TObject);

begin

Passajir.Show;

end;

procedure TMain.BitBtn7Click(Sender: TObject);

begin

Samolet.Show;

end;

procedure TMain.BitBtn8Click(Sender: TObject);

begin

Skidka.Show;

end;

procedure TMain.BitBtn9Click(Sender: TObject);

begin

Punkt.Show;

end;

procedure TMain.FormShow(Sender: TObject);

begin

DataModule1.ADOConnection1.Connected:=False; //Отключаем текущее подключение

//Далее динамически формируем строку подключения с указанием пути к базе данных

DataModule1.ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+ExtractFilePath(Application.ExeName)+'db.mdb;';

DataModule1.ADOConnection1.ConnectionString:=DataModule1.ADOConnection1.ConnectionString+'Mode=Share Deny None;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";';

DataModule1.ADOConnection1.ConnectionString:=DataModule1.ADOConnection1.ConnectionString+'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;';


DataModule1.ADOConnection1.ConnectionString:=DataModule1.ADOConnection1.ConnectionString+'Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don''t Copy Locale on Compact=False;';

DataModule1.ADOConnection1.ConnectionString:=DataModule1.ADOConnection1.ConnectionString+'Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;';

//Активируем все таблицы (они отключились при отключении от базы данных)

With DataModule1 do

begin

TBilet.Active:=true;

TReysy.Active:=true;

TAvia.Active:=true;

TPunkt.Active:=true;

TDoljnost.Active:=true;

TSotrudnik.Active:=true;

TPassajir.Active:=true;

TSkidka.Active:=true;

TSamolet.Active:=true;

end;

Login.ShowModal;

end;

end.

Исходный код модуля ULogin.pas

unit ULogin;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, UDataModule, StdCtrls, Buttons, Mask, ExtCtrls, UMain;

type

TLogin = class(TForm)

Label1: TLabel;

Label2: TLabel;

Edit1: TEdit;

MaskEdit1: TMaskEdit;

BitBtn1: TBitBtn;

procedure BitBtn1Click(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Login: TLogin;

implementation

{$R *.dfm}

procedure TLogin.BitBtn1Click(Sender: TObject);

begin

DataModule1.QLogin.Active:=False;

DataModule1.QLogin.SQL.Clear;

DataModule1.QLogin.SQL.Add('SELECT * FROM Сотрудник WHERE Логин='''+Edit1.Text+''' AND Пароль='''+MaskEdit1.Text+'''');

DataModule1.QLogin.Active:=True;

If DataModule1.QLogin.RecordCount>0 then

begin

Login.Close

end else

begin

ShowMessage('Пользователь не найден!');

Application.Terminate;

end;

end;

procedure TLogin.FormClose(Sender: TObject; var Action: TCloseAction);

begin

If DataModule1.QLogin.Active=true then

begin

if DataModule1.QLogin.RecordCount=0 then Application.Terminate;

end else Application.Terminate;

end;

end.

Исходный код модуля UAvia.pas

unit UAvia;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, UDataModule, Data.DB, Vcl.ExtCtrls,

Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids;

type

TAvia = class(TForm)

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Avia: TAvia;

implementation

{$R *.dfm}

end.

Исходный код модуля USamolet.pas

unit USamolet;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, UDataModule, Data.DB, Vcl.ExtCtrls,

Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids;

type

TSamolet = class(TForm)

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Samolet: TSamolet;

implementation

{$R *.dfm}

end.

Исходный код модуля UReis.pas

unit UReis;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,

Vcl.Controls, Vcl.Forms, Vcl.Dialogs, UDataModule, Data.DB, Vcl.ExtCtrls,

Vcl.DBCtrls, Vcl.Grids, Vcl.DBGrids;

type

TReis = class(TForm)

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

private

{ Private declarations }

public

{ Public declarations }

end;

var

Reis: TReis;

implementation

{$R *.dfm}

end.

Исходный код модуля UBilet.pas

unit UBilety;

interface

uses

Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,