Sunteți pe pagina 1din 31

HOTEL MANAGEMENT

SYSTEM
COLLEGE NAME:

BENGAL COLLEGE OF
ENGINEERING AND TECHNOLOGY
BIDHANNAGAR ,DURGAPUR , WESTBENGAL

PIN-713201
GROUP MEMBERS

Student NAME:NITESH KUMAR

STUDENT_ID:29522

VIJAY PRATAP
SINGH

29525

SANDIP KUMAR

29521

BAISHALI MUKHERJEE

28195

ACKNOWLEDGEMENT
We take upon this opportunity endowed upon us by the
grace of the almighty, to thank all those who have been part
of this endeavour.
Firstly, we would like to thank GLOBSYN FINISHING
SCHOOL for giving us the opportunity as well as lending us
the resources to fulfil our work.
We would like to thank our mentor PROF. ARNAB
CHAKRABORTY for giving us the right direction to follow and
proper guidance regarding the topic. Without his active
involvement and the right guidance this would not have been
possible .we sincerely thank him for giving us the chance as
well as the support for all the time being.
Last but not the least, we heartily appreciate all those
people who have helped us directly or indirectly in making
these task a success

INDEX
1.INTRODUCTION 1.1 Scope of work
2. REQUIREMENT SPECIFICATION
2.1 Domain description
2.2 Problem definition
2.3 Functional requirements
2.4 Hardware & Software requirements
3. DATABASE DESIGN
3.1 ER diagram
3.2 Table description
4. SCREEN SHOTS
5. FUTURE SCOPE OF IMPROVEMENTS
6. CODE

This is a project work undertaken during SUMMER TRAINING


at GLOBSYN FINISHING SCHOOL. We have tried our best to
make this project which is HOTEL MANAGEMENT SYSTEM
using ORACLE 10g and ORACLE DEVELOPER SUITE as simple
as possible which could help the administrators and ticket
counter personnel to use and to manipulate different field
values easily .Further expansion is possible without much
effort.There are four forms:1.CUSTOMER
2.STAFF
3.ROOM
4.ALLOCATION

REQUIREMENT SPECIFICATION
DOMAIN DESCRIPTION
HOTEL MANAGEMENT SYSTEM reservation system is needed
to ROOMS on the HOTEL where the customer can choose the
ROOM that is currently being in the hotel which has been
not allotted.
The main actors in the hotel management system are the
administrator.

PROBLEM DEFINITION
Nowadays it is very difficult for a person to maintain records
manually, so in order to provide the hotels with such a
system that helps them severely in maintaining the records
of the hotel transactions, we are going with this project. The
operations performed by this project are maintenance of the
information of the transactions that are performed by the
hotels.

Data redundancy and inconsistency.


Difference in accessing data.
Data isolation
Security problem
Communication gap
Updating problem

FUNCTIONAL REQUIREMENTS
The functions that the hotel management system provides
are as follows:
Activities that only the administrator can perform are:
1. CREATION OF A NEW ACCOUNT FOR customer and staff.
2. ADDING OF A NEW customer WITH ALL THE RELEVANT
DETAILS (FOR e.g. customer name, customer_id, customer
identification).
3. DELETING OR UPDATING OF A customer AND HENCE,
UPDATING OF THE DATABASE.
4. MODIFICATION OR UPDATION OF The hotel related
facilities.
5. booking of rooms for the customer.

Activities that only the admin or


receptionist can perform are:
1. BOOKING OF rooms FOR CUSTOMERS.
2. Allotting staff to the customer.

HARDWARE/ SOFTWARE REQUIREMENTS


HARDWARE REQUIREMENTS
MOTHERBOARD
PROCESSORS
RAM (64MB MINIMUM)
HARD DISK
MONITOR
KEYBOARD
MOUSE
PRINTER
SOFTWARE REQUIREMENTS
OPERATING SYSTEM :- WINDOWS XP/ WINDOWS
7/WINDOWS 8
PLATFORM :- ORACLE 10G EXPRESS EDITION
FILE SYSTEM :- ORACLE DEVELOPER SUITE
BROWSER :-MOZILLA FIREFOX 2.0.0.2, 3 or 3.5
MICROSOFT WOR

Snapshots

FUTURE SCOPE OF
IMPROVEMENTS
The limited time and resources have restricted us to incorporate in this project.
Only main activities that can be performed in a hotel management system are
shown but at most care has been taken to make the system efficient and user
friendly. In future, certain improvements can be brought upon like:
1. Developing an interface so that customers can book hotel online, choosing
their room of preference.
2. In our project, only one room can be booked at a time. This can be
overcome in the future where an interface would be developed which will
support booking of multiple rooms at a time.

Codes
Table creating codes
Customer:create table customer(cid number(10) primary key,cname
varchar(10),phno number(10),address varchar(10),pancard
number(10));

insert into customer values (rollseq.nextval,'aaa',1111,


'patna',1234);
insert into customer values
(rollseq.nextval,'bbb',1121,'ranchi',2345);
insert into customer values
(rollseq.nextval,'ccc',1131,'kolkata',3456);
insert into customer values
(rollseq.nextval,'ddd',1141,'asansol',4567);
insert into customer values
(rollseq.nextval,'eee',1151,'durgapur',5678);
insert into customer values
(rollseq.nextval,'fff',1161,'mumbai',6789);

satff
create table staff(Sid number(10),sname varchar(10),address
varchar(10),desigination varchar(20),phno number(10));
insert into staff values
(sidseq.nextval,'ram','lohardaga','receptionist',2222);
insert into staff values
(sidseq.nextval,'shyam','bokaro','waiter',3333);
insert into staff values
(sidseq.nextval,'gopal','tata','shef',4444);

insert into staff values


(sidseq.nextval,'hari','muri','housekeeping',5555);
insert into staff values
(sidseq.nextval,'radha','dhanbad','cleaner',6666);
room
create table room(Room_no number(10) primary
key,room_type varchar(10),rent number(15),block
varchar(10),floor varchar(10));
insert into room values(01,'single',3000,'A','ground');
insert into room values(02,'single',3000,'A','ground');
insert into room values(03,'single',3000,'A','ground');
insert into room values(04,'single',3000,'A','ground');
insert into room values(05,'single',3000,'A','ground');
insert into room values(06,'Double',4000,'A','ground');
insert into room values(07,'Double',4000,'A','ground');
insert into room values(08,'Double',4000,'A','ground');
insert into room values(09,'Double',4000,'A','ground');
insert into room values(10,'Twin',4000,'A','ground');
insert into room values(11,'Twin',5000,'B','ground');
insert into room values(12,'Twin',5000,'B','ground');
insert into room values(13,'Interconnective',7000,'C','first');

insert into room values(14,'Interconnective',7000,'C','first');


ALLOCATION

create table allocation(cid number(20) ,room


number(20),start_date date, end_date date, cost_status
varchar(20));

insert into allocation values(1001,421,'20-mar-2010','20-dec2010','notnull');


insert into allocation values(1002,422,'20-apr-2010','20-dec2010','notnull');
insert into allocation values(1003,423,'20-may-2010','20-dec2010','notnull');
insert into allocation values(1004,424,'20-jun-2010','20-dec2010','notnull');
insert into allocation values(1005,425,'20-jul-2010','20-dec2010','notnull');

PROGRAMME CODES

Login page:-

For customer:Open form(c:\new


folder\customer.fmx,activate,no_session)
For staff
Open form(c:\new
folder\staff.fmx,activate,no_session)

Customer
Load:declare
a number;
begin
if :ti1 is null then
a := show_alert('nodeptno');
else
select count(*) into a
from emp
where deptno=:ti1;
if a=0 then
a := show_alert('norecord');
else
a := populate_group('rg1');
populate_list('li1','rg1');
end if;
end if;
end;

move last:-

declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;

begin
select count(*) into a
from customer;

if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
message('I m in the then block...');
else
message('I m in the else block...');

:global.reccount:=1;
:global.currecno:=a;

:di7:=:global.currecno||'/'||:global.reccount;

select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no


from
(
select rownum rn,cid,cname,phno,address,pancard
from customer
order by rownum

)
where rn=:global.currecno;

:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;
:di7:=:global.reccount||'/'||:global.currecno;
end if;

end;

move previous:declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;
begin
select count(*) into a
from customer;
if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
else
if (:global.reccount=1) then
a := show_alert('firsttrecord');
else
:global.reccount:=:global.reccount - 1;
select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no

from
(
select rownum rn,cid,cname,phno,address,pancard
from customer
order by rownum
)
where rn=:global.reccount;
:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;
:di7:=:global.reccount||'/'||:global.currecno;
end if;
end if;
end;
end;

move first:-

declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;

begin
select count(*) into a
from customer;

if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
message('I m in the then block...');
else
message('I m in the else block...');

:global.reccount:=1;
:global.currecno:=a;

:di7:=:global.reccount||'/'||:global.currecno;

select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no


from
(
select rownum rn,cid,cname,phno,address,pancard
from customer
order by rownum
)
where rn=1;

:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;

:di7:=:global.reccount||'/'||:global.currecno;
end if;

end;

move last:-

declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;
begin
select count(*) into a
from customer;
if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
message('I m in the then block...');
else
message('I m in the else block...');
:global.reccount:=1;
:global.currecno:=a;
:di7:=:global.currecno||'/'||:global.reccount;
select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no
from
(
select rownum rn,cid,cname,phno,address,pancard
from customer
order by rownum
)
where rn=:global.currecno;
:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;
:di7:=:global.reccount||'/'||:global.currecno;
end if;

end;

update:declare
a number;
begin
if :ti2 is null or :ti3 is null or :ti4 is null then
a:=show_alert('blankfield');
else
insert into mystu values (rollseq.nextval,:ti2,:ti3,:ti4);
standard.commit;
:global.reccount:=:global.reccount+1;
:global.currecno:=:global.reccount;
:di3:=:global.currecno||'/'||:global.reccount;
end if;
end;

insert:-_
:di2 := :global.reccount+1;
:ti2:='';
:ti3:='';
:ti4:='';
go_item('ti2');

move next:declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;
begin
select count(*) into a
from customer;
if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
else
if (:global.currecno=:global.reccount) then
a := show_alert('lastrecord');

else
:global.reccount:=:global.reccount + 1;
select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no
from
(
select rownum rn,cid,cname,phno,address,pancard
from customer
order by rownum
)
where rn=:global.reccount;
:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;
:di7:=:global.reccount||'/'||:global.currecno;
end if;
end if;

move previous:declare
a number;
cust_id customer.cid%type;
cust_name customer.cname%type;
mobile customer.phno%type;
city customer.address%type;
pan_no customer.pancard%type;
begin
select count(*) into a
from customer;
if (a=0) then
:global.reccount:=0;
:global.currecno:=0;
else
if (:global.reccount=1) then
a := show_alert('firsttrecord');
else
:global.reccount:=:global.reccount - 1;
select cid,cname,phno,address,pancard into cust_id,cust_name,mobile,city,pan_no
from
(
select rownum rn,cid,cname,phno,address,pancard
from customer

order by rownum
)
where rn=:global.reccount;
:di6:=cust_id;
:ti1:=cust_name;
:ti2:=mobile;
:ti3:=city;
:ti4:=pan_no;
:di7:=:global.reccount||'/'||:global.currecno;
end if;
end if;
end;

end;

staff table:insert::di2 := :global.reccount+1;


:ti2:='';
:ti3:='';
:ti4:='';
go_item('ti2');

update:update
declare
a number;
begin
if :ti2 is null or :ti3 is null or :ti4 is null then
a:=show_alert('blankfield');
else
insert into mystu values (rollseq.nextval,:ti2,:ti3,:ti4);
standard.commit;
:global.reccount:=:global.reccount+1;
:global.currecno:=:global.reccount;
:di3:=:global.currecno||'/'||:global.reccount;
end if;
end;

exit:-

exit form;

room table:least button::DI1:=:LI1;

allocation:-

Certificate
THIS IS TO CERTIFY THAT NITESH KUMAR OF
Bengal college of engineering and technology HAS
SUCCESSFULLY COMPLETED THE PROJECT
ON hotel management system
THE GUIDANCE OF PROF. ARNAB CHAKRABORTY
USING ORACLE 10g FROM GLOBSYN
FINISHING SCHOOL IN SUMMER TRAINING
PROGRAM 2015-2016.
___________________
Signature and date

___________________________
PROF.ARNAB CHAKRABORTY

Certificate
THIS IS TO CERTIFY THAT VIJAY PRATAP SINGH OF
Bengal college of engineering and technology HAS
SUCCESSFULLY COMPLETED THE PROJECT
ON hotel management system
THE GUIDANCE OF PROF. ARNAB CHAKRABORTY
USING ORACLE 10g FROM GLOBSYN
FINISHING SCHOOL IN SUMMER TRAINING
PROGRAM 2015-2016.
___________________
Signature and date

___________________________
PROF.ARNAB CHAKRABORTY

Certificate
THIS IS TO CERTIFY THAT BAISHALI MUKHERJEE OF
Dr.sudhir Chandra sur degree engineering college HAS
SUCCESSFULLY COMPLETED THE PROJECT
ON hotel management system
THE GUIDANCE OF PROF. ARNAB CHAKRABORTY
USING ORACLE 10g FROM GLOBSYN
FINISHING SCHOOL IN SUMMER TRAINING
PROGRAM 2015-2016.
___________________
Signature and date

___________________________
PROF.ARNAB CHAKRABORTY

Certificate
THIS IS TO CERTIFY THAT SANDIP KUMAR OF
Bengal College of engineering and technology HAS
SUCCESSFULLY COMPLETED THE PROJECT
ON hotel management system
THE GUIDANCE OF PROF. ARNAB CHAKRABORTY
USING ORACLE 10g FROM GLOBSYN
FINISHING SCHOOL IN SUMMER TRAINING
PROGRAM 2015-2016.
___________________
Signature and date

___________________________
PROF.ARNAB CHAKRABORTY

CONCLUSION
The HOTEL MANAGEMENT SYSTEM is a step in the direction to ease the
structure of ticket booking and reservation system. Some of the advantages
that it enjoys over Manual System are:
Data retrieval process becomes easy when it is needed, if we use computer
management instead of manually.
Storage capacity of the computer is also excellent.
Updating of data is easy in computerized system
. Data consistency is required for neat and proper management that is
achieved by computer easily.
Time is precious and speed is the order of today. Our software supports this
statement
. With the help of software, data redundancy reduces as compared to manual.

S-ar putea să vă placă și