1938
NEAR EAST UNIVERSITY
)
Faculty of Engineering
Department of Computer Engineering
HOTEL RESERVATION SYSTEM
Graduation Project COM400
Prepared By: Selim Türkyılmaz (991882)
Supervisor: Mr.Okan Donangil
Lefkoşe - 2000
TABLE OF CONTENTS
ACKNOWLEDGMENTS ...•... i
ABSTRACT ii
1. INTRODUCTION 1
2. WHAT IS AUTOMATION? 2
3. HOTEL RESERVATION SYSTEM 3
3 .1 Flowchart of System of Reservation 4
3.2 Screen Layout of Customer Reservation 5
3.3 Flowchart of Reservation of Program 6
3.4 Screen Layout of Customer Reservation List. 7 3.5 Screen Layout of Customer Reservation Report 8 3.6 Screen Layout of Customer Reservation Report List. 9
3_:7 Overhead for The Reception 1O
4. CUSTOMER REGISTRATION PROCESS 11
4 .1 Flowchart of Customer Registration 12
4 .2 Screen Layout of Customer Registration 13
4 .3 Screen Layout of Customer Registration List.. .14 4.4 Documents of Rooms ...•... 15
4.4 .1 Flowchart of Rooms 16
4.4.2 Screen Layout of Definition of Room 17
4 .4.3 Screen Layout of Room List. 18
4.5 Documents of Pension ...•... 19
4. 5 .1 Flowchart of Pension .20
4.5.2 Screen Layout of Definition of Pension 21
4. 5 .3 Screen Layout of Pension List. 22
4.6 Documents of Country 23
4.6 .1 Flowchart of Country 24
4.6.2 Screen Layout of Definition of Country 25
4.6.3 Screen Layout of Country List.. 26
4.7 Documents of City ...•... 27
4.7 .1 Flowchart of City 28
4.7.2 Screen Layout of Definition ofCity 29
4.7 .3 Screen Layout of City List. 30
4.8 Documents of Incoming With 31
4.8.1 Flowchart of Incoming With 32
4.8.2 Screen Layout of Definition of Incoming With 33
4.8.3 Screen Layout of Incoming With List.. 34
5. ACCOUNTING 35
5.1 CustomerExtras 35
5 .2 Flowchart of Accounting .36
5 .3 Screen Layout of Entering Account. 3 7
5.4 Screen Layout of Accounting List. 38 5.5 Screen Layout of Detail of Extras ofExpenditure 39
CONCLUSION 40
REFERENCES 41
APPENDIX A (Code of Definition ofRoom) .42
APPENDIX B (Code of Room List) .44
APPENDIX C (Code of Definition of Pension) .47
APPENDIX D (Code of Pension List) .48
APPENDIX E (Code of Definition of Incoming with) 50
APPENDIX F (Code of Incoming With List) 51
APPENDIX G (Code ofDefinition ofCountry) 53
APPENDIX H (Code of Country List) 54
APPENDIX I (Code of Definition ofCity) 56
APPENDIX J (Code of City List) 57
APPENDIX K (Code of Main Menu) 59
APPENDIX L (Code of Customer Reservation) 62
APPENDIX M (Code of Customer Reservation List) 66
APPENDIX N (Code of Customer Reservation Report) 69
APPENDIX O (Code ofCustomerRegistration) 72
APPENDIX P (Code of Customer Registration List) 78
APPENDIX Q(Code of Customer Entering Account) 81
APPENDIX R (Code of Customer Detail of Extras Expenditure) 86
APPENDIX S (Code of Customer Account List) 88
APPENDIX T (Example ofReceipt) 90
APPENDIXU (Data Structures) 91
ACKNOWLEDGMENTS
I wish to tank my supervisor Mr.Okan DONAN GİL, for intellectual support,
encouragement, enthusiasm which made this thesis possible, and for his patience in correcting both my stylistic and scientific errors.
I tank to my wife, Demet, for her support and understanding.
I also wish to thank those who helped me to handle various computer problems, especially Osman TEKİN and O.Taha CANANER.
i
ABSTRACT
In the project, Hotel Reservation system and how it can be handled by computers is discussed. Basic idea of Data Base Management Systems is used and the implementation of this Hotel Reservation System is done by DELPHİ 5.0 which is an object oriented language. DELPHİ 5.0 is a powerfull database language and very easy to use than other languages.
The software written can be used to make reservation or registration for a customer to the hotel. It also calculates the bill of that a customer should pay when he leaves.
1. INTRODUCTION
Hotels are places where people can accommodate for a period of tiıne. As a major component of world tourism, it drives the economic engines of developing
countries and accounts for a great deal of money.
Due to the development of computer and communication technologies be automation become an important system in controlling the operations, (such as front office, ) of Hotels.
~ The ability of computers, to store, process and manipulate information has greatly improved the efficiency of automatioı in hotels. By doing so, the guality of services that hotels offer to their customers have been greatly improved.
. J
/-- Automation of such services in hotels, saves the staff from paper work, and it can enhance the opportunities for staff utilization in the hospitality, and service.
{ )
1
2.WHAT IS AUTOMATION?
The development and integration of computers and communication technologies has made the the computers to be widely used in industry and business in our daily lives.
The ability of computers to process and manipulate information very fast and much more accurately have brought the automation into our agenda.
Automation is a system in which any organization performs their routine work by computers. Automation saves as from doing a lot of paper work and from time
.
which means money in business especially. Also, by performing the operation of an organization using automation, helps to store a lot of information in a less space and
I
gives us the advertage to access this information very fast.'
3.HOTEL RESERVATION SYSTEM
Reservation process in a Hotel is carried out by the reception in the front-office.
When a customer asks for a reservation in a Hotel, the receptionist asks for the following information;
* * * Reservation Date,
*** Name I Surname,
*** Check-in Date,
* * * Check-out Date,
* * * Incoming With,
*** Country,
*** City,
* * * Reservation Done by who,
*** Room Number,
*** Note.
(For the flowchart of Reservation system see figure 1.) (For the screen layout of Reservation see figure 2.)
(For the flowchart of Reservation of Program see figure 3.)
(For the screen layout of Customer Reservation List see figure 4.) (For the screen layout of Customer Reservation Report figure 5.) (For the screen layout of Customer Reservation Report List figure 6.)
3
3.lFlowchart of System of Reservation
Customer Reception
T F
Customer
Details T
Services
F
ACCOUNTING SYSTEM
Regret
Billing to Customer
) Figure 1.
3.2 SCREEN LAYOUT OF CUSTOMER RESERVATION;
'·--
/. '( )
- ' - Figure 2.
l , ı.l --
/, {. '2 . - ..,
,_ ı
ı.
Z--ı. ,/ __ - ..
3.3 Flowchart of Customer Reservation;,r Start
Read The Customer Reservation
T
T
Enter Customer Information For Reservation
Enter New Information ---tıı,ı.. of Customer Reservation
T Delete The Chosen Reservation
T
F
T DisplayNames, Countries, Date 1, Date2
T
End
Copy To The
Reservation Database
3.4 SCREEN LAYOUT OF CUSTOMER RESERVATION LIST;
Figure 4.
7
3.5 SCREEN LAYOUT OF DEFINITION OF RESERVATION REPORT;
Figure 5.
3.6 SCREEN LAYOUT OF CUSTOMER RESERVATION REPORT LIST;
Figure 6.
9
3.7 OVERHEAD FOR THE RECEPTION
***
Reservation with the details,* * *
List the customers on the reservation,***
List of rooms and free rooms and with their specialist,***
List of country and code of country,***
List of city and code of city,***
Types of services;* * *
Bed and Breakfast:• Halfboard,
• Fullboard.
* * *
Registration with details,***
List the customers in the Hotel,* * *
Customer Extras• Bar
• Restaurant
• Swimming Pool,
***
Total Bill of Customer.4. Customer Registration Process
After checking the reservation or the available rooms, the customer will be accepted to the Hotel.
During this properties, the personel information of a customer will be saved. Tis information will be as follws:
***Name I Surname,
***Passport Number,
***Check - in Date,
***Check - out Date,
*** Pension,
*** Room Number,
***Price,
* ** Incoming With,
*** Age,
*** Country,
*** City,
*** Accompanied By,
***Address,
*** Note.
(For the flowchart of Customer Registration see figure 7.) (For the screen layout of Customer Registration see figure 8.) (For the screen layout of Customer Registration List see figure 9.)
11
4.1 Flowchart of Customer Registration;
Start
Read The Customer Registration
,----1.,~ıRead The Customer
"" Reservation List
T
Write Name/Surname Incoming Date Leaving Date Pension Passport NO Room Number Price
Incoming With Age
Country City
Accompanied By Address
Note
Get Name/Surname Incoming Date Leaving Date Incoming with Country City
Write Pension Passport NO Room Number Price
Age
Accompanied By Address
Note
End
Copy To The Registration Database
4.2 SCREEN LAYOUT OF CUSTOMER REGISTRATION;
Figure 8.
13
4.3 SCREEN LAYOUT OF CUSTOMER REGISTRATION LIST;
Figure 9.
4.4 DOCUMENTS OF ROOMS:
CLASSIFICATIONOF ROOMS:
*** According to the Quality --- First Quality (Suit), ---Second Quality(Double ), ---Thirty Quality(Single ).
*** According to the Person's Number --- For 1 person,
--- For 2 person, ---For 3 person, --- For 4 person.
Properties and number of person of any room is described by the receptionist according to Hotel's properties. And the receptionist can search if he want to look a room according to number of room.
(For the flowchart see figure 1.) (For screen layout see figure 2.)
(For the screen layout of Room List figure 3.)
15
4.4.1 Flowchart of Rooms;
F
Read The Room List
F T
T Enter Definition of
New Room
Enter New Information of Chosen Room
T
Delete The Chosen Room
T Display
All Room List
T Display
Free Room List
End Copy To The
Room Database
4.4.2 SCREEN LAYOUT OF DEFINITION OF ROOM;
Figure 11.
17
4.4.3 SCREEN LAYOUT OF ROOM LIST
Figure 12.
4.5 DOCUMENTS OF PENSION:
*** Bed and Breakfast: (BB)
The Price of the Brakfast times each day.
*** Half Board: (HB)
Bed and Breakfast+ Price of dinner times each day.
*** Full Board: (FB)
Half Board + Price of noon eating.
Before, these types of pension are described by the receptionist at the definition of pension.
(For the flowchart of pension see figure 13.) (For the screen layout of pension see figure 14.) (For the screen layout of Pension List figure 15.)
19
4.5.lFlowchart of Pension;
Start
Read The Pension List
T
T Enter Definition of
New Pension
EnterNew Information of Chosen Pension
T
F
Delete The Chosen Pension
End Copy To The
Pension Database
Figure 13
.
4.5.2 SCREEN LAYOUT OF DEFINITION OF PENSION;
Figure 14.
21
4.5.3 SCREEN LAYOUT OF PENSION LIST;
Figure 15.
4.6 DOCUMENT OF COUNTRY:
*** Code,
*** Name of Country.
Code is a type and parameter. Code is described by the receptionist. It can be postal zip etc... The receptionist does not need to write Code and Name of Country again and again for reservation and regisration. Because this information is written by the receptionist before. But the receptionist needs to write a new Country , he can write esaily.
(For flowchart of Country seefigure 16.)
(For the screen layout of Definition of Country seefigure 17.) (For the screen layout of Country List seefigure 18.)
23
4.6.1 Flowchart of Country;
F
Start
Read The Country
F T
T Enter Definition of
New Country
T
Enter New Information of Chosen Country
Delete The Chosen Country
End Copy To The
Country Database
Figure 16.
4.6.2 SCREEN LAYOUT OF DEFINITION OF COUNTRY;
Figure 17.
25
4.6.3 SCREEN LAYOUT OF COUNTRY LIST;
Figure 18.
4.7 DOCUMENTS OF CITY:
*** Code,
*** Name ofCity.
Code is a type and parameter. Code is described by the receptionist. It can be plate number and etc ... The receptionist does not need to write Code and Name of City again and again for reservation and regisration. Because this information is written by the receptionist before. But the receptionist needs to write a new City , he can write esaily.
(For flowchart of City see figure 19.)
(For the screen layout of City see figure 20.) (For the screen layout of City List see figure 21.)
27
4.7.1 Flowchart of City;
Start
Read The City List
T
T Enter Definition of
New City
Enter New Information of Chosen City
T
F
Delete The Chosen City
End Copy To The
City Database
Figure 19
4.7.2 SCREEN LAYOUT OF DEFINITION OF CITY;
Figure 20.
29
4.7.3 SCREEN LAYOUT OF CITY LIST;
Figure 21.
4.8.1 Flowchart of Incoming With;
Start
Read The Incoming WithList
F T
T
Enter Definition of New Incoming With
Enter New Information of Chosen Incoming with T
F
Delete The Chosen Incoming With
End
Copy To The Incoming With Database
Figure 22.
4.8.2 SCREEN LAYOUT OF DEFINITION OF INCOMING WITH;
Figure 23.
33
4.8.3 SCREEN LAYOUT OF INCOMING WITH LIST;
Figure 24.
5. Accounting Process
When a customer is going to check out from the Hotel his bill will be prepared by the reception. In order to prepare the bill, the receptionist will choose the record of the required customer and by entering the check - out date, his bill will be prepared together with his extras.
5.1 Customer Extras:
DOCUMENTS OF CUSTOMER EXTRA:
*** Name of Department (e.g. Restaurant, Bar, Swimming Pool etc...),
*** Signature, Name I Surname of Cashier,
*** Name Surname of Customer,
* * * Date and Amount of Extra,
* * * Detail of Account,
*** Bill of Account.
(For the flowchart of Accounting see figure 25.) (For the screen layout of Accounting see figure 26.) (For the screen layout of Accounting List see figure 27.)
(For the flowchart of Detail of Extra Expenditure of Customer see figure 28.)
35
5.2 Flowchart of Customer Accou::;;:n=t=;
r
_....,
Start
Read The
Expenditure Detail
Write Information of Extra Expenditure
Total=Total+ Amount of Expenditure
Read The Entering Account
F T
Read The Customer List
Get Name/Surname Room Number Room Price Incoming Date Write
Living Date
Display Total Total=Living Date
IncomingDate*Room Price
F Print
Total
T ~ Change The Wanted Information
End ~~
t
/ TF 1
Delete
5.3 SCREEN LAYOUT OF ENTERING ACCOUNT;
Figure 26.
37
5.4 SCREEN LAYOUT OF ACCOUNT LIST;
Figure 27.
5.5 SCREEN LAYOUT OF ADD DETAIL OF EXPENDITURE;
Figure 28.
39
CONCLUSION
For the result, I said that I learned there are a lot of important things from this project such as; What is Hotel?, What are there jobs in a Hotel?, What is Automation?, How is Automation done?, Why is Automation done?, What are techniques of Automation?. Whit this, I believe that I developed myself with Delphi which is object oriented programming language. And I learned importance of Hotel which is heart of Tourism very well. In shortly, I learned rservation, registration, account, extras, properties of rooms, pension of Hotel which are very important.
REFERENCES:
İhsan Karagülle & Zeydin Pala (1999, August). Delphi 4.0. Türkmen Kitabevi.
Memik Yanık (1998). Delphi 3.0. Beta Kitabevi.
41
-·--·--~--- .
Appendix A:
CODE OF DEFINITION OF ROOM IN PROGRAM
unit OdaTanimUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Buttons, ExtCtrls, StdCtrls, DBCtrls, Mask, Db, DBTables, Refresh;
type
TOdaTanimForm = class(TForm) Panel1: TPanel;
SpeedButton2: TSpeedButton;
SpeedButtonl: TSpeedButton;
Label1 : TLabel;
Label2: TLabel;
OdaSource: TDataSource;
Label3: TLabel;
Label4: TLabel;
Labels: TLabel;
DBEdit 1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
Price: TDBEdit;
DBMemol: TDBMemo;
OdaTable: TSelfRefreshTable;
procedure SpeedButtonlClick(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
OdaTanimForm: TOdaTanimForm;
implementation {$R *.DFM}
procedure TOdaTanimForm.SpeedButtonlClick(Sender:TObject);
begin
OdaTable.FieldByName('Check').AsString:='True';
OdaTable.Post;
procedure TOdaTanimForm.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
end.
43
Appendix B:
CODE OF ROOM LIST IN PROGRAM unit OdaListeUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Refresh, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, Menus;
type
TOdaListeForm= class(TForm) Panel1 : TPanel;
DegistirButon: TSpeedButton;
YeniButon: TSpeedButton;
SilButon: TSpeedButton;
Cik:isButon:TSpeedButton;
Label1 : TLabel;
SecButon: TSpeedButton;
RoomNumber: TEdit;
DBGridl: TDBGrid;
OdaTable: TSelfRefreshTable;
OdaSource: TDataSource;
OdaTableRoomNumber: TlntegerField;
OdaTableFloor: TlntegerField;
OdaTableBedNumber: TlntegerField;
OdaTablePrice: TCurrencyField;
OdaTableProperties: TStringField;
OdaTableCheck: TBooleanField;
MainMenu1: TMainMenu;
TmOdalarl: TMenuitem;
BoOdalar 1: TMenuitem;
procedure RoomNumberChange(Sender: TObject);
procedure YeniButonClick(Sender: TObject);
procedure DegistirButonClick(Sender: TObject);
procedure CikisButonClick(Sender:TObject);
procedure DBGridlDblClick(Sender: TObject);
procedure TmOdalarlClick(Sender: TObject);
procedure BoOdalar1 Click(Sender: TObject);
procedure SilButonClick(Sender:TObject);
procedure SecButonClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations }
var
OdaListeForm: TOdaListeForm;
implementation uses OdaTanimUnit;
{$R *.DFM}
procedure TOdaListeForm.RoomNumberChange(Sender: TObject);
begin
if (RoomNumber.Text=") then begin exit; end
elseOda Table.Locate('RoomNumber' ,RoomNumber. text, [loCaselnsensitive, loPartialKey ]);
end;
procedure TOdaListeForm.YeniButonClick(Sender: TObject);
begin
OdaTanimForm.OdaTable.Append;
OdaTanimForm. Show Modal;
end;
procedure TOdaListeForm.DegistirButonClick(Sender: TObject);
begin
OdaTanimForm. Oda Table. GotoCurrent(OdaListeForm. Oda Table);
OdaTanimForm. Oda Table.Edit;
OdaTanimForm. Show Modal;
end;
procedure TOdaListeForm.CikisButonClick(Sender: TObject);
begin
ModalResult: =MrCancel;
end;
procedure TOdaListeForm.DBGridlDblClick(Sender: TObject);
begin
Close;
end;
procedure TOdaListeForm. Tm Odaları Click(Sender: TObject);
begin
Oda Table.Filter:=";
OdaTable.Filtered: =True;
Oda Table.Active: =fALSE;
OdaTable.Active:=tRUE;
end;
45
procedure TOdaListeForm.BoOdalarlClick(Sender: TObject);
begin
Oda Table.Filter.=";
OdaTable.Filtered:=True;
OdaTable.Filter:='Check='+chr(39)+'True'+chr(39);
end;
procedure TOdaListeForm.SilButonClick(Sender: TObject);
begin
if messageDlg('Are You Sure You Want to Delete This Record?', mtconfirmation, [mbYes,MbNo ],O)=idYes then
Oda Table.Delete;
end;
procedure TOdaListeForm.SecButonClick(Sender: TObject);
begin
ModalResult:=Mrok;
end;
end.
Appendix C:
CODE OF DEFINITION OF PENSION IN PROGRAM
unit PansiyonTanimUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Refresh, StdCtrls, Mask, DBCtrls, Buttons, ExtCtrls;
type
TPansiyonTanimForm = class(TForm) Panel 1 : TP anel;
Label 1: TLabel;
Label2: TLabel;
SpeedButtonl: TSpeedButton;
SpeedButton2: TSpeedButton;
DBEdit 1: TDBEdit;
DBEdit2: TDBEdit;
PansiyonTable: TSelfRefreshTable;
PansiyonSource: TDataSource;
procedure SpeedButtonlClick(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject );
private
{ Private declarations } public
{ Public declarations } end;
var
PansiyonTanimForm: TPansiyonTanimForm;
implementation {$R *.DFM}
procedure TPansiyonTanimForm.SpeedButtonlClick(Sender: TObject);
begin
Pansiyon Table.Post;
Close;
end;
procedure TPansiyonTanimForm.SpeedButton2Click(Sender: TObject);
begin Close;
end;
end.
47
Appendix D:
CODE OF PENSION LIST IN PROGRAM unit PansiyonListeUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, Db, DBTables, Refresh;
type
TPansiyonListeForm = class(TForm) PansiyonTable: TSelfR.efreshTable;
PansiyonSource: TDataSource;
Panel 1: TPanel;
DegistirButon: TSpeedButton;
YeniButon: TSpeedButton;
SilButon: TSpeedButton;
CikisButon: TSpeedButton;
Label 1 : TLabel;
SecButon: TSpeedButton;
KodEdit: TEdit;
DBGrid 1: TDBGrid;
PansiyonTableCode: TStringField;
PansiyonTableDescription: TStringField;
procedure KodEditChange(Sender: TObject);
procedure CikisButonClick(Sender: TObject);
procedure DBGridlDblClick(Sender: TObject);
procedure YeniButonClick(Sender: TObject );
procedure DegistirButonClick(Sender: TObject);
procedure SilButonClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
PansiyonListeF orm: TPansiyonListeF orm;
implementation
uses PansiyonTanimUnit;
procedure TPansiyonListeForm.KodEditChange(Sender: TObject);
begin
if(KodEdit. Text=") then begin exit; end
else
Pansiyon Table.Locate('Code' ,KodEdit. text,[loCaselnsensitive, loPartialKey ]);
end;
procedure TPansiyonListeForm.CikisButonClick(Sender: TObject);
begin
Close;
end;
procedure TPansiyonListeForm.DBGridlDblClick(Sender: TObject);
begin
Close;
end;
procedure TPansiyonListeForm.YeniButonClick(Sender: TObject);
begin
PansiyonTanimForm.PansiyonTable.Append;
PansiyonTanimF orm. Show Modal;
end;
procedure TPansiyonListeForm.DegistirButonClick(Sender: TObject);
begin
PansiyonTanimF orm.PansiyonTable. GotoCurrent(PansiyonListeF orm.PansiyonTable );
PansiyonTanimForm.PansiyonTable.Edit;
PansiyonTanimForm. ShowModal;
end;
procedure TPansiyonListeForm.SilButonClick(Sender: TObject);
begin
ifmessageDlg('Are You Sure You Want To Delete This Record?', mtlnformation, [mbYes,MbNo],O)=idYes then
Pansiyon Table.Delete;
end;
end.
49
Appendix E:
CODE OF DEFINITION OF INCOMING WITH IN PROGRAM unit IncomingTanimUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Refresh, StdCtrls, Mask, DBCtrls, Buttons, ExtCtrls;
type
TlncomingTanimForm= class(TForm) Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
SpeedButtonl: TSpeedButton;
SpeedButton2: TSpeedButton;
DBEditl: TDBEdit;
DBEdit2: TDBEdit;
lncomingTable: TSelfRefreshTable;
lncomingSource: TDataSource;
procedure SpeedButton1 Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
IncomingTanimForm:TlncomingTanimForm;
implementation {$R *.DFM}
procedure TlncomingTanimForm.SpeedButtonlClick(Sender: TObject);
begin
IncomingTable.Post;
Close;
end;
procedure TlncomingTanimForm.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
Appendix F:
CODE OF INCOMING WITH LIST IN PROGRAM
unit IncomingListeUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Grids, DBGrids, Db, DBTables, Refresh, StdCtrls, Buttons, ExtCtrls;
type
TincomingListeForm = class(TForm) Panel 1 : TPanel;
DegistirButon: TSpeedButton;
YeniButon: TSpeedButton;
SilButon: TSpeedButton;
CikisButon: TSpeedButton;
Label 1: TLabel;
SecButon: TSpeedButton;
KodEdit: TEdit;
IncomingTable: TSelfRefreshTable;
PansiyonSource: TDataSource;
DBGrid 1: TDBGrid;
procedure KodEditChange(Sender: TObject);
procedure CikisButonClick(Sender: TObject);
procedure DBGridlDblClick(Sender: TObject);
procedure YeniButonClick(Sender: TObject );
procedure DegistirButonClick(Sender: TObject);
procedure SilButonClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
IncomingListeF orm: TlncomingListeF orm;
implementation
uses IncomingTanimUnit;
{$R *.DFM}
51
procedure TlncomingListeForm.KodEditChange(Sender: TObject);
begin
end;
if (KodEdit.Text=") then begin exit; end
else
IncomingTable.Locate('Code' ,KodEdit.text, [loCaselnsensitive, loPartialKey ]);
procedure TlncomingListeForm.CikisButonClick(Sender: TObject);
begin end;
Close;
procedure TlncomingListeForm.DBGridlDblClick(Sender: TObject);
begin end;
Close;
procedure TlncomingListeForm.YeniButonClick(Sender: TObject);
begin
end;
IncomingTanimF orm.IncomingTable.Append;
IncomingTanimF orm. ShowModal;
procedure TlncomingListeForm.DegistirButonClick(Sender: TObject);
begin
end;
IncomingTanimF orm. Incoming Table. GotoCurrent(IncomingListeF orm. IncomingTable );
IncomingTanimF orm. IncomingTable.Edit;
IncomingTanimForm.ShowModal;
procedure TlncomingListeForm.SilButonClick(Sender: TObject);
begin
if messageDlg('Are You Sure You Want To Delete This Record?', mtlnformation, [mbYes,MbNo],O)=idYes then
IncomingTable.Delete;
end;
end.
Appendix G:
CODE OF DEFINITION OF COUNTRY IN PROGRAM
unit UlkeTanimUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Refresh, StdCtrls, Mask, DBCtrls, Buttons, ExtCtrls;
type
TUlkeTanimForm= class(TForm) PanelI: TPanel;
Labell: TLabel;
Label2: TLabel;
SpeedButtonl: TSpeedButton;
SpeedButton2: TSpeedButton;
DBEditl: TDBEdit;
DBEdit2: TDBEdit;
UlkeTable: TSelfRefreshTable;
UlkeSource: TDataSource;
procedure SpeedButtonlClick(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
UlkeTanimForm: TUlkeTanimForm;
implementation {$R *.DFM}
procedure TUlkeTanimForm.SpeedButtonlClick(Sender: TObject);
begin
UlkeTable.Post;
Close;
end;
procedure TUlkeTanimForm.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
end.
53
~8~
O' ~ ~.
:,, ,., '\,Appendıx H: !: :ı:. .\c._\, f1'.'I \~
\ ,~·r:· ""' ~" I
'J .,, :Xı:
CODE OF COUNTRY LIST IN PROGRAM
-s../:;/
unit UlkeListeUnit; ~
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Db, DBTables, Refresh, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls;
type
TUlkeListeForm = class(TForm) Panel 1: TPanel;
DegistirButon: TSpeedButton;
YeniButon: TSpeedButton;
SilButon: TSpeedButton;
CikisButon: TSpeedButton;
Label 1: TLabel;
Label2: Tl.abel;
SecButon: TSpeedButton;
AdiEdit: TEdit;
KodEdit: TEdit;
DBGridl: TDBGrid;
UlkeTable: TSelfRefreshTable;
UlkeSource: TDataSource;
UlkeTableKod: TStringField;
UlkeTableName: TStringf'ield;
procedure SecButonClick(Sender: TObject);
procedure CikisB111tonClick(Sender:TObject);
procedure DBGridlDblClick(Sender: TObject);
procedure KodEditChange(Sender: TObject);
procedure AdiEditChange(Sender: TObject);
procedure YeniButonClick(Sender: TObject );
procedure DegistirButonClick(Sender: TObject );
procedure Si1ButonClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
UlkeListeF orm: TUlkeListeF orm;
implementation
uses UlkeTanimUnit;
procedure TUlkeListeForm.SecButonClick(Sender: TObject);
begin
Close;
end;
procedure TUlkeListeForm.CikisButonClick(Sender: TObject);
begin
Close;
end;
procedure TUlkeListeForm.DBGridlDblClick(Sender: TObject);
begin
Close;
end;
procedure TUlkeListeForm.KodEditChange(Sender: TObject);
begin
if (KodEdit. Text=") then begin exit; end
else
Ulke Table.Locate('Kod' ,KodEdit. text,[loCaselnsensitive, loPartialKey ]);
end;
procedure TUlkeListeForm.AdiEditChange(Sender: TObject);
begin
if (AdiEdit. Text=") then begin exit; end
else
UlkeTable.Locate('Name' ,AdiEdit. text, [loCaselnsensitive, loPartialKey ]);
end;
procedure TUlkeListeForm.YeniButonClick(Sender: TObject);
begin
UlkeTanimForın.UlkeTable.Append;
UlkeTanim.Forın. ShowModal;
end;
procedure TUlkeListeForm.DegistirButonClick(Sender: TObj ect );
begin
UlkeTanimF orm. UlkeTable. GotoCurrent(UlkeListeF orın. UlkeTable );
UlkeTanim.Forın.UlkeTable.Edit;
UlkeTanim.Forın. ShowModal;
end;
procedure TUlkeListeForm.SilButonClick(Sender: TObject);
begin
if messageDlg('Are You Sure You Want To Delete This Record?', mtlnforınation, [mb Yes,MbNo ],O)=idYes then
UlkeTable.Delete;
end; end.
55
Appendix I:
CODE OF DEFINITION OF CITY IN PROGRAM unit SehirTanim Unit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Buttons, StdCtrls, Mask, DBCtrls, Db, DBTables, Refresh, ExtCtrls;
type
TSehirTanimFomı= class(TForm) Panel1: TPanel;
Label1: TLabel;
Label2: TLabel;
SehirSource: TDataSource;
SehirTable: TSelfRefreshTable;
DBEditl: TDBEdit;
DBEdit2: TDBEdit;
SpeedButtonl: TSpeedButton;
SpeedButton2: TSpeedButton;
procedure SpeedButtonlClick(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
SehirTanimForm:TSehirTanimForm;
implementation
uses SehirListeUnit;
{$R *.DFM}
procedure TSehirTanimForm.SpeedButtonl Click(Sender: TObject);
begin
SehirTable.Post;
Close;
end;
procedure TSehirTanimForm.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
Appendix J:
CODE OF CITY LIST IN PROGRAM unit SehirListeUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Grids, DBGrids, Db, DBTables, Refresh, Buttons, ExtCtrls, Menus;
type
TSehirListeForm = class(TForm) Panel 1: TPanel;
DegistirButon: TSpeedButton;
YeniButon: TSpeedButton;
Siffiuton: TSpeedButton;
CikisButon: TSpeedButton;
AdiEdit: TEdit;
DBGridl: TDBGrid;
KodEdit: TEdit;
Label 1: TLabel;
Label2: TLabel;
SehirTable: TSelfRefreshTable;
SehirSource: TDataSource;
SecButon: TSpeedButton;
SehirTableAdi: TStringField;
SehirTableKod: TStringField;
procedure YeniButonClick(Sender: TObject );
procedure DegistirButonClick(Sender: TObject);
procedure SiffiutonClick(Sender: TObject );
procedure KodEditChange(Sender: TObject);
procedure AdiEditChange(Sender: TObject);
procedure CikisButonClick(Sender: TObject);
procedure DBGridlDblClick(Sender: TObject);
private
{ Private declarations } public
{ Public declarations } end;
var
SehirListeF orm: TSehirListeF orm;
implementation
uses SehirTanimUnit;
{$R *.DFM}
57
f.:.~,
procedure TSehirListeForm.YeniButonClick(Sender: TObject);
begin
SehirTanim.Form.SehirTable.Append;
SehirTanimForm.ShowModal;
end;
procedure TSehirListeForm.DegistirButonClick(Sender: TObject);
begin
SehirTanimForm.SehirTable.GotoCurrent(SehirListeForm.SehirTable);
SehirTanimForm.SehirTable.Edit;
SehirTanim.Form.ShowModal;
end;
procedure TSehirListeForm.SilButonClick(Sender: TObject);
begin
ifmessageDlg('Are You Sure You Want To Delete This Record?', mtlnformation, [mbYes,MbNo],O)=idYesthen
SehirTable.Delete;
end;
procedure TSehirListeForm.KodEditChange(Sender: TObject);
begin
if (KodEdit.Text=") then begin exit; end
else
SehirTable.Locate('Kod',KodEdit.text,[loCaselnsensitive, loPartialKey]);
end;
procedure TSehirListeForm.AdiEditChange(Sender: TObject);
begin
if (AdiEdit.Text=") then begin exit; end
else
SehirTable.Locate('Adi',AdiEdit.text, [loCaselnsensitive, loPartialKey]);
end;
procedure TSehirListeForm.CikisButonClick(Sender: TObject);
begin
Close;
end;
procedure TSehirListeForm.DBGridlDblClick(Sender: TObject);
begin
Close;
end;
AppendixK:
CODE OF MAIN MENU IN PROGRAM
unit AnaFormUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus;
type
TAnaForm = class(TForm) MainMenu 1: TMainMenu;
File 1: TMenultem;
Rezer 1: TMenultem;
Definition I: TMenultem;
Registration 1: TMenultem;
City 1: TMenultem;
Countryl: TMenultem;
Room 1: TMenultem;
Record 1: TMenultem;
List 1: TMenultem;
Report I: TMenultem;
Exit 1: TMenultem;
Record2: TMenultem;
. List2: TMenultem;
Report2: TMenultem;
Pensionl: TMenultem;
Incoming With 1: TMenultem;
deme 1: TMenultem;
Giri 1 : TMenultem;
Liste 1: TMenultem;
procedure City 1 Click(Sender: TObject );
procedure RoomlClick(Sender: TObject);
procedure Pension 1 Click(Sender: TObject );
procedure IncomingWithlClick(Sender: TObject);
procedure Record2Click(Sender: TObject);
procedure List2Click(Sender: TObject);
procedure RecordlClick(Sender: TObject);
procedure ListlClick(Sender: TObject);
procedure GirilClick(Sender: TObject);
procedure Liste 1 Click(Sender: TObject );
procedure ExitlClick(Sender: TObject);
procedure CountrylClick(Sender: TObject);
procedure Report 1 Click(Sender: TObject );
59
;,.-;.,;·---,•---:""""""
private
{ Private declarations } public
{ Public declarations } end;
var
AnaForm: TAnaForm;
implementation
uses SehirListeUnit, OdaListeUnit, PansiyonListeUnit, IncomingListeUnit, MusteriKayitU nit, MusteriListe Unit, RezervasyonTanim Unit,
RezervationListeUnit, KasaGirisUnit, KasaListeUnit, UlkeListeUnit, Unitl;
{$R *.DFM}
procedure TAnaForm.CitylClick(Sender:TObject);
begin
SehirListeForm. Show Modal;
end;
procedure TAnaForm.RoomlClick(Sender: TObject);
begin
OdaListeForm. ShowModal;
end;
procedure TAnaForm.PensionlClick(Sender: TObject);
begin
PansiyonListeF orm. Show Modal;
end;
procedure TAnaForm.IncomingWithlClick(Sender: TObject);
begin
IncomingListeForm. ShowModal;
end;
procedure TAnaForm.Record2Click(Sender: TObject);
begin
MusteriTanimF orm.KayitTable.Append;
MusteriTanimForm.ShowModal;
end;
procedure TAnaForm.List2Click(Sender: TObject);
begin
MusteriKayitListesi. Show Modal;
end;
procedure TAnaForm.RecordlClick(Sender: TObject);
begin
RezervationTanimForm.RezervationTable.Append;
RezervationTanimForm.ShowModal;
end;
procedure TAnaForm.ListlClick(Sender: TObject);
begin
Forml.Show;
end;
procedure TAnaForm.GirilClick(Sender: TObject);
var
x:integer;
begin
KasaGirisForm.KasaTable.insert;
KasaGirisF orm. ShowModal;
end;
procedure TAnaForm.ListelClick(Sender: TObject);
begin
KasaListeForm. ShowModal;
end;
procedure TAnaForm.ExitlClick(Sender: TObject);
begin
Close;
end;
procedure TAnaForm.CountrylClick(Sender: TObject);
begin
UlkeListeF orm. Show Modal;
end;
procedure TAnaForm.Reportl Click(Sender: TObject);
begin
RezervationListeF orm. Show Modal;
end;
end.
61
Appendix L:
CODE OF CUSTOMER RESERVATION IN PROGRAM
unit RezervasyonTanimUnit;
interface uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DBCtrls, Mask, Buttons, ExtCtrls, Db, DBTables, Refresh;
type
TRezervationTanimForm =class(TForm) Panel 1: TPanel;
Label 1: TLabel;
Label2: TLabel;
Label3: TLabel;
SpeedButtonl: TSpeedButton;
SpeedButton2: TSpeedButton;
Label6: TLabel;
Label?: TLabel;
Label8: Tl.abel;
Labell O: TLabel;
Label 12: TLabel;
Label 13: TLabel;
SpeedButton4: TSpeedButton;
SpeedButton6: TSpeedButton;
DBEdit 1: TDBEdit;
DBEdit2: TDBEdit;
DBEdit3: TDBEdit;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
IncomingWith: TDBEdit;
Incoming: TDBEdit;
Ulke: TDBEdit;
DBMemo2: TDBMemo;
RezervationTable: TSelfRefreshTable;
RezervasyonSource: TDataSource;
RezervationTableCode: TAutolncField;
RezervationTableRezervationDate: TDateField;
RezervationTableNameSumame: TStringField;
RezervationTableDateOfArrival: TDateField;
RezervationTableDateOIDeparture: TDateField;
RezervationTablePension: TStringField;
RezervationTablelncomingWith: TStringField;
RezervationTableCountry: TStringField;
RezervationTableNot: TStringField;
RezervationTableCity: TStringField;
Label4: TLabel;
SpeedButton3: TSpeedButton;
City: TDBEdit;
Labels: TLabel;
DBEdit6: TDBEdit;
SpeedButton5: TSpeedButton;
RezervationTableRoomNumber: TintegerField;
procedure SpeedButtonlClick(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton4Click(Sender: TObject );
procedure SpeedButton6Click(Sender: TObject );
procedure SpeedButton3Click(Sender: TObject);
procedure SpeedButton5Click(Sender: TObject);
procedure DBEditlKeyPress(Sender: TObject; var Key: Char);
procedure DBEdit2KeyPress(Sender: TObject; var Key: Char);
procedure DBEdit3KeyPress(Sender: TObject; var Key: Char);
procedure DBEdit4KeyPress(Sender: TObject; var Key: Char);
procedure DBEdit5KeyPress(Sender: TObject; var Key: Char);
procedure IncomingWithKeyPress(Sender: TObject; var Key: Char);
procedure UlkeKeyPress(Sender: TObject; var Key: Char);
procedure CityKeyPress(Sender: TObject; var Key: Char);
procedure IncomingKeyPress(Sender: TObject; var Key: Char);
procedure DBEdit6KeyPress(Sender: TObject; var Key: Char);
procedure DBMemo2KeyPress(Sender: TObject; var Key: Char);
private
{ Private declarations } public
{ Public declarations } end;
var
RezervationTanimF orm: TRezervationTanimForm;
implementation
uses PansiyonListeUnit, UlkeListeUnit, IncomingListeUnit;
{$R *.DFM}
procedure TRezervationTanimForm.SpeedButtonlClick(Sender: TObject);
begin
RezervationTable.Pcst;
Close;
end;
63