Room Rack Detailed System Design beta 1.0

last comments are on Wednesday, January 02, 2002 3:37PM +800 GMT

Transactions

When a guest requests for a reservation, the desk clerk will need to know which rooms are available for a particular date range the guest asked. Room Rack has a special report(see reports section..) called Reservation Calendar which the desk clerk will use. The Reservation Notice will be his/her tool in marking the room in Reservation Calendar as "R-reserved". There some cases when a particular room is used for company puropses. For instance, Room 303B is used for Stock Room. Thus this room will be marked "U-utilized". Another case would be when a particular room is closed for renovation. Thus this room will be Marked as "Z-out of order".
Also included in Transactions is the Guest Registration. Guests who made reservations will have a Guest Registration Form automatically when arrived. Reservation Notice has a Special Action "Guest Arrival" on which the Reservation's status is changed to "(C)losed" and a newly created Guest Registration Page will be made.

Reservation Notice
This is the page wherein users will place reservations for a particular guest. Users will first fill up a search textbox for a particular date range and room type and then click "Find Rooms". A popup window will appear listing all rooms that are available for the particular range of dates and type of room. After choosing a room, the user's "user id" from his login page will be listed in the "prepared by" text box. a user with "Supervisor account" will then approve the Reservation through his/her home link or the particular page the user has created. and the Reservation status will be changed to "(C)onfirmed".
After the Reservation is Confirmed. User with a supervisor status can cancel the reservation or change its status to arrived. once arrived the reservation page will create automatically a registration Page waiting to be filled up by the user.
[Developers Note:] All Actions of the user will be recorded in a system table called system_audit wherin all user actions are recorded ADD, EDIT, Delete etc... Room Transaction will also be recorded in room_transaction table for special Actions only like Cancel,Guest Arrival, Confirmed etc..

Actions :

1. Top
2. Previous
3. Next
4. Bottom
5. New
	- Initial status will be Tentative. "Tentative Arrival Date" and 
		"Tentative Departure Date" fields are required.
6. Delete
	- Once the Reservation's status is Confirmed or Arrived this action is disabled.
	  	should use cancel instead.
7. Save
	- can only edit and save the form if c_status = 'T'. disable saved if c_status != 'T'
	- s_prepared_by and dt_prepared_on are updated.
	- Also update Room Transaction.

Special Actions:
1. Approve 
	- Users with supervisor status only are allowed.
	- Validates if there are conflicts in reservation. If one such exists a message 
		will tell the user that room is unavailable. Conflicts are:
		Renovation(Out of order),Reserved(Reserved),Used By Company and currently Occupied.

	- Sets the status to Confirmed. "Confirmed Arrival Date" and 
		"Confirmed Departue Date" are required.
	- s_approved_by and dt_approved_on are updated.
	- Updates Room Transaction.
	- set's the rooms room status to (R)eserved.
2. Cancel
	- Users with supervisor status only are allowed.
	- Sets the status to Cancelled.
	- s_cancelled_by and dt_cancelled_on are updated.
	- Updates Room Transaction.
3. Arrived
	- Users with supervisor status only are allowed.
	- Sets the status to Closed.
	- Updates Room Transaction.
	- s_closed_by and dt_closed_on are updated.
	- System will prepare a Registration page for guest. 
4. Add new Guest to Reservation.
	- opens up an empty Guest Profile.
		after the Guest Profile is saved the Reservation Page is filled up from the new guest added.
5. More Guest Info
	- Pops up a new window in Guest Profile Page for the particular guest.


[Developer's Comments] 
Arun -
 
1. Why do we need the N/A columns? They can be retrieved at the time of page creation.
Jed- they are just there for the info.
2. Why do we need a supervisor for reservations? If a customer reserves a room telephonically, he/she cannot 
wait till the supervisor "confirms"
Jed- in order for the reservation to be confirmed. a supervisor should approve the reservation. example, a particular guest 
is a VIP or blacklisted when a guest used the telephone, the desk clerk will record the reservation but not yet approved. 
thus the reservation is at tentative status. in application level
the front desk should always have a senior officer or 'supervisor'.
3. Conflicts should be displayed if a room is selected. Or the query that returns the rooms should not include 
"conflicting" rooms.
Jed- Yes, there should be confilct warning message. 
Reservation Header
Table Name: reservation_header
Title Column Name Data Type Required Description Developer's Comments
Reservation Form Number s_reservation_form_number (PK) Char(10) yes System generated and auto incremented //
Date dt_date DateTime yes System Generated. Current Date is placed //
GuestID s_guest_id (FK) Char(10) yes User Input. tell error message if guest does not exists //
Full name System Retrieved from Guest Profile N/A N/A N/A //
Sex System Retrieved from Guest Profile. N/A N/A N/A //
Address System Retrieved from Guest Profile. N/A N/A N/A //
Nationality System Retrieved from Guest Profile. N/A N/A N/A //
Tel. Number System Retrieved from Guest Profile. N/A N/A N/A //
Fax Number System Retrieved from Guest Profile. N/A N/A N/A //
Email Address System Retrieved from Guest Profile. N/A N/A N/A //
Status c_status Char(1) Yes Values are (T)entative, (K)confirmed, (X)cancelled and (C)losed . If newly created the value will be (T)entative //
Tentative Arrival Date dt_tentative_arrival_date DateTime Yes. User Input. Tentative Arrival Date of Guest //
Tentative Arrival Time dt_tentative_arrival_time DateTime Yes. use 00:00 if not indicated by guest. User Input. Tentative Time of arrival of guest. //The previous column can be used to store Date & Time
Tentative Departure Date dt_tentative_departure_date DateTime Yes. User Input. Tentative departure of guest. //
Tentative Departure Time dt_tentative_departure_time DateTime Yes. use 00:00 if not indicated by guest. User Input.Tentative Time of departure of guest. //Likewise
Confirmed Arrival Date dt_confirmed_arrival_date DateTime No. Only to be filled if c_status = 'K' User Input. Confirmed time of arrival of guest //
Confirmed Arrival Time dt_confirmed_arrival_time DateTime No. Only to be filled if c_status = 'K'. Use 00:00 if not indicated by guest. User Input. Confirmed time of arrival of guest. //Likewise
Confirmed Departure Date dt_confirmed_departure_date DateTime No. Only to be filled if c_status = 'K' User Input. Confirmed date of departure of guest. //
Confirmed Departure Time dt_confirmed_departure_time DateTime No. Only to be filled if status = 'K' User Input. Confirmed time of departure of guest. //Likewise
Prepared By s_prepared_by Char(10) Yes. System Retrieved from user's 'User ID' when saved from the first time. user must log in BTW. //
Prepared On dt_prepared_on DateTime Yes. System Generated from the date user saved from the first time. //
Edited By s_edited_by Char(10) No System retrieved From user's 'User ID' when he/she edits the Reservation form. //What happens if there are multiple edits? For example, the guest changes the Tentative Arrival Date atleast twice.
Edited on dt_edited_on DateTime No System generated at the time the user edits the reservation form. //
Cancelled By s_cancelled_by Char(10) No Users with supervisor status only. System retrieved from the user's 'User ID' when use cancelled the Registration form //
Cancelled On dt_cancelled_on DateTime No System Generated when the user with supervisor status cancelled the reservation form //
Closed By s_closed_by DateTime No Users with supervisor Status only. System retrieved from the users 'User ID' when the action 'Guest Arrival' is done //
Closed On dt_closed_on DateTime No Users with supervisor status only. System retrieved from the users 'User ID' when the action 'Guest Arrival' is done //
Remarks s_remaks Char(80) No remarks. //
Discount d_discount Decimal(7,4) Yes,Set To 0 if none Discount of a Guest. This will be passed to the guest's registration form once arrived //
Deposit d_deposit Decimal(11,4) Yes, Set To Zero if none Deposit of a Guest. This will be passed to the guest's registration once arrived //
[Hidden] s_payment_id Char(10) Yes Payment mode of guest //
Pament Mode System Retrieved from table payment_mode N/A N/A System Retrieved. //
Reservation Detail
Table Name: reservation_detail

Title Column Name Data Type Required Description Developer's Comments
[Hidden] s_reservation_form_number (PK)(FK)Char(10) Yes. Hidden from users' view. System Generated from reservation_header's s_reservation_form_number //
Room ID s_room_id (PK)(FK)Char(10) Yes. Room chosen by the desk clerk. //
Room Cost d_room_cost Decimal(11,4) Yes Initial value will be based from the table room_master's d_room_cost //
Remarks s_remaks Char(80) No remarks. //Can use Varchar instead

Guest Registration
This is the page where either reserved or "Walk-in" guests are registered for their rooms. Expenses of the guest are also listed here. Once the guest is ready for Check-Out, The desk clerk will print the statement of account form and will pass it to the cashier.
There are two ways to create a registration form. First, when a reservation form already exists and the reserved guest has arrived, automatic creation of registration form will be made. Second, when walk-in guests arrives and the user will manually enter the details of the guest. Now if the guest is new to the establishment, the user must add the guest to the Guest Profile page through a special action in the Registration page called "Add new Guest to Reservation". When finished the guest's profile will be placed in the registration form. Once the guest decided to check-out, Just click the action "Create Statement of account" to get a printable version of the Registration form. The status of the Form should be changed to (P)rinted. Once the guest is ready to leave and settled all his/her accounts. The user will click "Guest Check-out" and the Registration will be changed from (P)rinted to (C)losed. Furthermore, the room's status will be changed to (V)acant and is ready for cleaning by the house keeper.
If a guest has no definite date of departure choose yes to "No Definite Date".
Currently, Room Rack Beta 1.0 can only record expenses from the Miscellaneous Expense Maintenance Page. Soon Food & Beverages, Laundry, Transportation and Other modules will be added.
[Developers Note:] All Actions of the user will be recorded in a system table called system_audit wherein all user actions are recorded ADD, EDIT, Delete etc... Room Transaction will also be recorded in room_history table for special Action Closed.

Actions :

1. Top
2. Previous
3. Next
4. Bottom
5. New
	- then a form is created the status will be initially set to "(N)ewly created".
	- prepared by and prepared on is set to current user and current date respectively.
6. Delete
	- When deleting. c_status will be changed to deleted. no actual deletion of records are made.
	- rooms are set back to (V)acant and guest's history record will be noted that his/her 
		registration was deleted.
7. Save
	- can only edit and save the form if c_status = 'N' (Newly created). Disable save if c_status != 'N'
	- s_prepared_by and dt_prepared_on are updated.
	- Also update Room Transaction.

Special Actions:
1. Approve
	- sets the status to (A)pproved.
	- sets the room's room status to (O)ccuppied.

2. Close Registration 
	- to be set the status to (C)losed. Meaning the guest has left the establishment and the 
		guest has settled all his accounts.
	- sets the room's status to (V)acant

[Developer's Comments]
Arun- 1. If Tentative Departure Date is null, that can be used signify that the guest does not have a definite date of 
departure. Then the column c_no_definite_date can be removed.
Jed- saving null datetime fields will be difficult during display. as much as 
possible we dont want to display null fields. and besides its more organized this way. IMO
Guest Registration Header
Table Name: guest_registration_header
Title Column Name Data Type Required Description Developer's Comments
Registration Form Number s_guest_registration_form_number (PK) Char(10) Yes Auto Generated by system //
Guest ID s_guest_id (FK)Char(10) Yes Guest ID of guest from Guest Profile //
Full name System Retrieved from Guest Profile N/A N/A N/A //
Sex System Retrieved from Guest Profile. N/A N/A N/A //
Address System Retrieved from Guest Profile. N/A N/A N/A //
Nationality System Retrieved from Guest Profile. N/A N/A N/A //
Tel. Number System Retrieved from Guest Profile. N/A N/A N/A //
Fax Number System Retrieved from Guest Profile. N/A N/A N/A //
Email Address System Retrieved from Guest Profile. N/A N/A N/A //
[Hidden] s_payment_id Char(10) Yes Pament mode of guest //
No Definite Date c_no_definite_date Char(1) Yes Values are (Y)es (N)o. If a guest has no definite date of stay. choose yes here. //
Payment Mode System Retrieved from table payment_mode N/A N/A System Retrieved. //
Actual Arrival Date dt_actual_arrival_date DateTime Yes Actual arrival date //
Actual Arrival Time dt_actual_arrival_time DateTime Yes Actual date and time when the guest arrived. //As said before, this column can be removed
Actual Departure Date dt_actual_departure_date Date Time No When closing the registration, that is the time this column will be filled. //
Actual Departure Time dt_actual_depature_time DateTime No When closing the registration, that is the time this column will be filled. //Likewise
Tentative Departure Date dt_tentative_departure_date DateTime Yes Basis of the system for future reservations //
Tentative Departure Time dt_tentative_departure_time DateTime Yes Basis of the system for future reservations //Likewise
Status c_status Char(1) Yes values are (N)ewly created, (P)rinted, (D)eleted, (C)losed. Upon creation the value would be (N)ewly created. //
Discount d_discount Decimal(5,4) Yes Initial value would be zero //
Remarks s_remarks Char(80) No remarks. //Could be Varchar
Amount Deposited d_amount_deposited Decimal(11,4) Yes Guest's deposited amount during reservation. //
Amount Paid d_amount_paid Decimal(11,4) Yes Amount paid by guest //
Total Cost d_total_cost Decimal(11,4) Yes Computed from total room cost + total expense. total room cost is the sum of all costs of rooms occupied by the guest. total expense is the sum of all expense made by the guest. //
Prepared By s_prepared_by Char(10) Yes Once the Registration form is created this value will be set based from the user's "User ID" //
Prepared On dt_prepared_on DateTime Yes. Date and time when the registration form is created. //
Edited By s_edited_by Char(10) No Set once Registration Form is edited. user's "User ID" //If there are multiple edits?
Edited On dt_edited_on DateTime No Current Date and Time once Registration Form is edited. //
Printed By s_printed_by Char(10) No "User's ID" of the current user when the form is printed. //
Printed On s_printed_on Char(10) No Date and Time when the registration form is printed. //
Closed By s_closed_by Char(10) No once the Registration Form is closed, user's "User's ID" is set here //
Closed On dt_closed_on DateTime No Once the Registration Form is closed, the Date and Time of is set here. //
Approved By s_approved_by Char(10) No Users with supervisor status can only approve. when registration has been approved, rooms will be changed status to (O)ccupied //
Approved On dt_approved_on DateTime No Date Time then registration form has been approved. //
Guest Registration Room Detail
Table Name: guest_registration_room_detail
Title Column Name Data Type Required Description Developer's Comments
[Hidden] s_guest_registration_form_number (PK)(FK) Char(10) Yes Auto Generated by system //
Room ID s_room_id (PK)(FK) Char(10) Yes Room ID from Room Master Maintenance. the room in which the guest currently occupies. System will validate if the room is not being reserved between the date range Actual Arrival Date + Actual Arrival Time and Tentative Departure Date + Tentative Departure Time. //
Room Type System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_type.s_room_type_name N/A N/A N/A //
Room Status System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_status.s_room_status_name. The value shoud be (V)acant then user selects the room. then (O)ccupied when Saved. N/A N/A N/A //
Room Cost d_room_cost Decimal(11,4) Yes Reservation(if any) will set this initially. if user manually selects a room the values would be from room_master.d_room_cost but user can still change the value. //
Remarks s_remarks Char(80) No remarks. //Could be Varchar
Guest Registration Expense Detail
Table Name: guest_registration_expense_detail
Title Column Name Data Type Required Description Developer's Comments
[Hidden] s_guest_registration_form_number (PK)(FK) Char(10) Yes Auto Generated by system //
Miscellaneous Expense ID s_miscellaneous_expense_id (PK)(FK) Char(10) Yes selected from miscellaneous_expense table //
Miscellaneous Expense Name System Retrieved form miscellaneous_expense N/A N/A N/A //
Expense Cost d_expense_cost Decimal(10) Yes Initail value would be the estimated cost of Miscellaeous Expense. //
Remarks s_remarks Char(80) No remarks. //Could be Varchar

Room Utilization
Occasionally, certain rooms are utilized by the establishment. For instance, offices, stock rooms,staff rooms etc... Users must record such notices here. there are 2 types of utilizations, premanent and temporary. When a room is to be utilized permanently just click the Permanent field and choose (Y)es this way the "Date From" and "Date To" will be disabled and the room is now exclusively for company utilization. If there are pending reservations or any transactions in the future the system will pop a message saying it should cancel all pending transactions first before making the room permanent. In case the room is only temporary it should have a definite date range. Thus the user should fill up the "Date From" and "Date To" fields. It would also tell the user if any conflicts with the specifed date range occured. Example: Room 303B is prepared for company utilization 3/23/2001 - 3/4/23/2001 but there is an existing reservation on 3/25/2001 - 3/26/2001 this will be notified by the System to the user.
[Developers Note:] Auditing included.

Actions :

1. Top
2. Previous
3. Next
4. Bottom
5. New
	- prepared by, prepared on are set
6. Delete - once approved, this would be disabled. use Cancel instead
7. Save
	- can only edit and save the form if c_status = '(N)ew'. disable save if c_status != '(N)ew'
	- s_prepared_by and dt_prepared_on are updated.
	- Also update Room History.

Special Actions:
1. Approve - Users with supervisor status only can approve.
		- room transactions will be updated.
		- s_approved_by, dt_approved_on are filled.
2. Cancel - cancel the utilization. this is available once the utilization has been approved.
		- s_cancelled_by,dt_cancelled_on are filled.



[Developer's Comments] 
//
Room Utilization Header
Table Name: room_utilization_header
Title Column Name Data Type Required Description Developer's Comments
Room Utilization Form Number s_room_utilization_form_number (PK)Char(10)
Yes System generated. Auto incremented. //
Status c_status Char(1) Yes Values are (N)ewly created, (A)pproved, (C)ancelled. //
Date From dt_from DateTime No if not permanent. this value is required. //
Date To dt_to DateTime No if not permanent. this value is required. //
Permanent c_permanent Char(1) Yes Values would be (Y)es and (N)o //
Remarks s_remarks Char(80) No remarks. //Could be Varchar
Prepared by s_prepared_by Char(10) Yes One the form is created this must be filled by the system. from the user's "User's ID" //
Prepared On dt_prepared_on DateTime Yes. Date and time when the room utilization form is created. //
Approved By s_approved_by Char(10) No Users with supervisor status can only approve. when room utilization has been approved, rooms will be changed status to (U)tilized //
Approved On dt_approved_on DateTime No Date Time when room utilization form has been approved. //
Cancelled By s_cancelled_by Char(10) No Users with supervisor status only. System retrieved from the user's 'User ID' when use cancelled the room utilization form //
Cancelled On dt_cancelled_on DateTime No System Generated when the user with supervisor status cancelled the room utilization form //
Room Utilization Detail
Table Name: room_utilization_detail

Title Column Name Data Type Required Description Developer's Comments
[Hidden] s_room_utilization_form_number (PK)(FK)Char(10) Yes System generated. //
Room ID s_room_id (PK)(FK) Char(10) Yes Room ID from Room Master Maintenance. The room that is chosen for utilization for the company. This should be validated if there are any pending transactions in the future and the status must be vacant. //
Room Type System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_type.s_room_type_name N/A N/A N/A //
Room Status System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_status.s_room_status_name. The value shoud be (V)acant then user selects the room. then (O)ccupied when Saved. N/A N/A N/A //
Description s_descripton Char(80) Yes There must be a description about the room's purpose for utilization. //
Remarks s_remarks Char(80) No remarks. //Could be Varchar

Renovation
Rooms that are closed for renovation are recorded here. If the renovation does not have a definite date of completion the user must choose yes to the field "No definite date". The date from and date to will then be disabled.
[Developers Note:] Auditing included.

Actions :

1. Top
2. Previous
3. Next
4. Bottom
5. New
	- prepared by, prepared on are set
6. Delete - once approved, this would be disabled. use Cancel instead
7. Save
	- can only edit and save the form if c_status = '(N)ew'. disable save if c_status != '(N)ew'
	- s_prepared_by and dt_prepared_on are updated.
	- Also update Room History.

Special Actions:
1. Approve - Users with supervisor status can only approve.
		- room transactions will be updated.
		- s_approved_by, dt_approved_on are filled.
2. Cancel - cancel the renovation. this is available once the renovation has been approved.
		- s_cancelled_by,dt_cancelled_on are filled.



[Developer's Comments] 
//
Renovation Header
Table Name: renovation header
Title Column Name Data Type Required Description Developer's Comments
Renovation Form Number s_renovation_form_number (PK)Char(10) Yes System generated. Auto incremented. //
Status c_status Char(1) Yes Values would be (N)ewly created, (A)pproved and (C)ancelled //
No Definite date c_no_definite_date Char(1) Yes Values are (Y)es (N)o. if yes, then date form and date to are diabled. //
Date Form dt_from DateTime No Starting date of renovation //
Date To dt_to DateTime No Date when the renovation will be finished. //
Remarks s_remarks Char(80) No remarks. //
Prepared by s_prepared_by Char(10) Yes One the form is created this must be filled by the system. from the user's "User's ID" //
Prepared On dt_prepared_on DateTime Yes. Date and time when the room utilization form is created. //
Approved By s_approved_by Char(10) No Users with supervisor status can only approve. when renovation has been approved, rooms will be changed status to (Z)Out of Order //
Approved On dt_approved_on DateTime No Date Time when room utilization form has been approved. //
Cancelled By s_cancelled_by Char(10) No Users with supervisor status only. System retrieved from the user's 'User ID' when use cancelled the room utilization form //
Cancelled On dt_cancelled_on DateTime No Sytem Generated when the user with supervisor status cancelled the room utilization form //
Renovation Detail
Table Name: renovation_detail
Title Column Name Data Type Required Description Developer's Comments
[Hidden] s_renovation_form_number (PK)(FK)Char(10) Yes System generated. //
Room ID s_room_id (PK)(FK) Char(10) Yes Room ID from Room Master Maintenance. The room for renovation. This should be validated if there are any pending transactions in the future and the status must be vacant. //
Room Type System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_type.s_room_type_name N/A N/A N/A //
Room Status System generated once user selected a room. Retrieved From the Room Type Maintenance through the room's room type code. ref. room_status.s_room_status_name. The value shoud be (V)acant then user selects the room. then (Z)out of order. N/A N/A N/A //
Remarks s_remarks Char(80) No remarks. //

Maintenance


Guest Master
Guests that will stay in the establishment should be recorded here first before any transactions will take place. In case the guest already has records in the Guest Master, it should be reused. Other guests that stayed in the hotel other than the guest that paid the registration will not be recorded.
[Developers Note:] Auditing included.

Actions :
1. Top
2. Previous
3. Next
4. Bottom
5. New
	- default c_deleted = "(N)o"
6. Delete 
	- Due to the Guest History table, no actual deletion of records  
		will take place if the guest has existing transactions. If there are any 
		use c_deleted = "(Y)es".
7. Save
	- update records.
	- update Guest History "Guest [Guest Id] record created on [date/time]".


[Developer's Comments] 
//
Guest Master
Table Name: guest
Title Column Name Data Type Required Description Developer's Comments
Guest ID s_guest_id (PK)Char(10) Yes System Generated. Auto Incremented. //
First Name s_first_name Char(40) Yes first name. //
Last Name s_last_name Char(20) No last Name //
Middle Name s_middle_name Char(20) No middle Name //
Address s_address Char(80) No address //
Company Name s_company_name Char(40) No. company Name //
Nationality s_nationality Char(40) Yes nationality //
Sex c_sex Char(1) Yes sex //
Company Address s_company_address Char(80) No company address //
Tel. No. s_tel_number Char(80) No telephone number //
Fax. No. s_fax_number Char(40) No fax number //
Email address s_email_address Char(40) No email address //
[hidden] c_deleted Char(1) Yes once set to "Y"es all transactions should ignore this record. Values are "Y" and "N" //

Room Master
This is the room master file where all rooms of the company are recorded here. For offices and stock rooms, create a certain room type for such cases and notify the Room Utilization Page for the room.
[Developers Note:] Auditing included.

Actions :
1. Save
	- Updates the table.
2. Copy all room type costs to room costs.
	- Updates all room costs from room type cost.
	- Current and previous transactions are not affected, only the room cost.


[Developer's Comments] 
//
Room Master
Table Name: room_master
Title Column Name Data Type Required Description Developer's Comments
Room ID s_room_id (PK)Char(10) Yes User input. Validate if there are duplicates. //
Room Type Code s_room_type_code (FK)Char(10) Yes Room Type Code //
Room Type Name s_room_type_name System retrieved from Room Type N/A N/A //
Room Type Cost d_room_type_cost System retrieved from Room Type N/A N/A //
Room Status c_room_status Char(1) Yes Non Editable by User. Transaction pages will change this field. Example, Reservation will change it to "R", Registration will change it to "O" once guest arrived and "V" once the guest checked out. Values are R-reserved O-occupied V-vacant Z-Out of order U- utilized. Default value should be V-vacant //
Room cost d_room_cost Decimal(11,4) Yes Default room cost of the room. this value will be the inital for the transaction pages(Reservation, Registration) //
Current Form Number s_current_form_number Char(10) No Non editable by user. Transaction pages will change this field. //
Last Form Number s_last_form_number Char(10) Yes Non editable by user. Transaction pages will change this field. //

Room Type
Before recording any rooms in room master, all room types of the company should be recorded here first.
[Developers Note:] Auditing included.

1. Save
	- Having a tabular based interface. it only needs this action.


[Developer's Comments] 
//
Room Type
Table Name: room_type
Title Column Name Data Type Required Description Developer's Comments
Room Type Code s_room_type_code (PK)Char(10) Yes User Input. System will validate any duplicate entries. //
Room Type Name s_room_type_name Char(40) Yes Name of the Room Type. //
Room Type Cost d_room_type_cost Decimal(11,3) Yes Standard costs for room types. //
Description s_description Char(80) No Description //

Payment Mode
Payment modes are recorded here. Used by Transaction Pages. Example, Credit Card, Cash (included by default) etc..
[Developers Note:] Auditing included.

1. Save
	- Having a tabular based interface. it only needs this action.


[Developer's Comments] 
//
Payment Mode
Table Name: payment_mode
Title Column Name Data Type Required Description Developer's Comments
Payment ID s_payment_id (PK)Char(10) Yes User Input. Validates any duplicate entries. //
Payment Name s_payment_name Char(40) Yes Name Of Payment //
Description s_description Char(80) No Description //

Reports

Reservation Calendar
It is a calendar for incoming and outgoing guests. Only confirmed arrivals (Reservation), tentative arrivals (Reservation), actual departure (Registration) and tentative departure (Registration) dates are reported here. click any of links inside the event to see the Transaction Form.
Below the report is the occupancy rate for the current date. Clicking one of the links will go to the Room Summary Listings report. see next report.

[Developer's Comments] 
//

Reservation Calendar

For the Month of: January, 2002

Sunday Monday Tuesday Wednesday Thursday Friday Saturday
[] [] [1] Arrival, Mr. Guest #1 at room 302B click here for the Reservation form [2] [3] [4] Arrival, Mr. Guest #2 at room 405A click here for the Reservation form [5]
[6] [7] Departure, Mr. Guest #2 at room 405A click here for the Registration form [8] [9] Departure, Mr Guest #1 at Room 302B click here for the Registration form.
Arrival, Mr Guest #3 at Room 302B click here for the Reservation form.
[10] [11] [12]
[13] [14] [15] [16] [17] [18] Arrival, Mr Guest #4 at Room 501B click here for the Reservation form. [19]
[20] [21] [22] [23] [24] [25] [26]
[27] [28] [29] [30] [31] [] []
[] [] [] [] [] [] []



Today is January 15, 2002
Occupancy Rate: 45%
Single Standard: 20% list
Twin: 15% list
Deluxe: 5% list
Suite: 5% list
Total Saleable rooms: 88 list
Total Occupied Rooms: 40 list

For the Room Summary Listing Click here



Room Summary Listing
Summary Reports of all the rooms. It can be filtered by room types
below are the rates of the rooms. occupancy rate = total occupied saleable rooms / total saleable rooms *100. saleable rooms = rooms that are not U-utiized and not O-out of order. Clicking one of the Room IDs will go to the room's history and clicking one of the headers will change the sort order by the column clicked.

[Developer's Comments] 
Arun-


1. Unless we use Swing, "sorting by column" will not be possible. 
Do you want to use Swing or resort to using a ComboBox 
where you can select the sorting order?
Jed- Swing will not be used. we'll create our own column sorting by using Collection interface.
but we'll see such conflicts during the long run.




Room Summary Listing


Filter By:
AND
AND
NOT
NOT
Room ID Room Type Guest Name Status Remarks
303B Single Standard Guest #1 Occupied None
501B Suite Guest #2 Occupied None
502B Suite N/A Vacant None
... ... ... ... ...
... ... ... ... ...



Today is January 15, 2002
Occupancy Rate: 45%
Single Standard: 20%
Twin: 15%
Deluxe: 5%
Suite: 5%
Total Saleable rooms: 88
Total Occupied Rooms: 40



Monthly Occupancy
A monthly report for rooms' monthly occupancy. Managers can tell which saleable room is sold most, which is not yet renovated and which room type is sold most and when is the peak season of hotel guests. Clicking the Room ID will go to the room's history.

[Developer's Comments] 
//

Monthly Occupancy

For the Month of: January, 2002

Filter By: and mark only
Room ID Room Type 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Occupancy Rate
405A Twin R R R R R R R R R
501B Suite R R R R R R O O O O O O O R R 22.58%
212B S. Standard Z Z Z Z Z Z Z Z U U U U U U U U U U U U U U U U U U U U U U U
223A Suite O O O O O O R R R R 19.35%
303B Suite O O 6.45%
.. ..
.. ..



Room Transactions
Report for future and previous transactions of a particular room. Clicking the "Form Number" will go to the transaction page.

[Developer's Comments] 
//

Room Transactions

For Room ID:

Month, Year
Date From
Time
Date To
Time
Form Number Description
Cancelled
January, 2002
1/15/2002
7:00 AM
1/16/2002
6:00 PM
RSV0000021 Reservation
No
..
1/17/2002
8:00 AM
1/18/2002
6:00 PM
REG0000121 Guest Registration
No
..
1/21/2002
9:45 AM
1/24/2002
6:00 PM
REG0000321 Guest Registration
No
February, 2002
2/01/2002
11:00 AM
2/15/2002
6:00 PM
RSV0000051 Reservation
Yes
..
2/17/2002
10:05 AM
2/18/2002
6:00 PM
REG0002121 Guest Registration
No
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..



Guest History
History of a particual guest's stay-ins. Clicking the "Form Number" will go to the transaction page.

[Developer's Comments] 
//

Guest History

For Guest ID:
John H. Doe

Month, Year
Date From
Time
Date To
Time
Form Number Description
Cancelled
January, 2002
1/15/2002
7:00 AM
1/16/2002
6:00 PM
RSV0000021 Reservation
No
..
1/17/2002
8:00 AM
1/18/2002
6:00 PM
REG0000121 Guest Registration
No
..
1/21/2002
9:45 AM
1/24/2002
6:00 PM
REG0000321 Guest Registration
No
February, 2002
2/01/2002
11:00 AM
2/15/2002
6:00 PM
RSV0000051 Reservation
Yes
..
2/17/2002
10:05 AM
2/18/2002
6:00 PM
REG0002121 Guest Registration
No
.. .. .. .. .. .. .. ..
.. .. .. .. .. .. .. ..



Top Guests
Guests that have the most stays in the company. Clicking one of the guest ID's will go to the guest's master file.

[Developer's Comments] 
//

Top Guests

For Year: 2002

Guest ID Guest Name Number of Days stayed Total Expenses Avg. Discount
GST0000320 John H. Doe 123 3,084.50 12.92%
GST0004860 Juan C. Dela Cruz 100 1,473.00 6.92%
.. .. .. .. ..
.. .. .. .. ..









SourceForge Logo December 11,2001 - Room Rack beta release 1.0
This product includes software developed by the Jakarta Apache Project. http://jakarta.apache.org/
This software was inspired through the writings of Eric S. Raymond Cathedral and the Bazaar