Inpatient Room Reservations - hmislk/hmis GitHub Wiki
Room reservations allow staff to pre-book a specific room for a planned admission before the patient physically arrives. The reservation is visible on a calendar so that overlapping bookings are avoided.
Page: Inpatient โ Appointment โ Room Reservations
XHTML: /inward/inward_reservations_schedule_calendar.xhtml
Controller: InwardReservationController
Privilege: InwardRoomRoomOccupency
The page displays a date-range calendar view of all room reservations. Filters:
- From Date / To Date โ view reservations within a time window
- Status โ filter by appointment status (Scheduled, Confirmed, Cancelled, etc.)
Each reservation block shows the patient name, room, and time slot.
Reservations are created through the Add Appointment / Appointment Admission flow in the Appointment sub-menu. The calendar view is used to check availability before booking and to manage existing reservations.
| Status | Meaning |
|---|---|
| Scheduled | Reservation made; patient not yet admitted |
| Confirmed | Reservation confirmed by ward |
| Cancelled | Reservation cancelled |
When the patient arrives, the reservation is converted into an active admission. There are two routes:
-
From the Reservation Calendar โ click the reservation block, then Admit on the Reservations Details dialog. The admission screen (
Inpatient โ Appointment โ Patient Admit) opens with the patient, room, and appointment bill already attached. -
From the menu โ
Inpatient โ Appointment โ Appointment Admission, then pick the reservation.
Both pick up the pre-selected room and appointment bill and carry the reservation forward to the admission.

The Reservations Details dialog opened from a calendar block. Admit takes the reservation straight to the admission screen. (Patient, doctor, mobile and appointment number are blacked out here.)

After Admit: the "Admit a Patient" screen opens with the reserved patient loaded and the Appointment tab available. (Patient details blacked out.)
Admission from a reservation is allowed only within a time window around the reservation, not only on the reservation's calendar day. The window is:
- from a configurable number of hours before
Reserve FromโInward - Reservation Admission Early Window (Hours)(default 24), and - until a configurable number of hours after the reservation end โ
Inward - Reservation Admission Grace Period (Hours)(default 24). When a reservation has no explicitReserve To,Reserve Fromis used as the end.
Outside the window, Admit shows "Reservation not yet open for admission" (too early) or "Reservation Expired" (too late) and no admission is created. A reservation with no Reserve To is treated as valid (matching how the calendar lists it) โ it is not rejected just for lacking an end date.
Both values are ConfigOption rows of type LONG, resolved per department first โ a "<Department> - Inward - Reservation Admission โฆ" row overrides the plain application-scoped row, which in turn falls back to the 24-hour default. Edit the application-wide value at Administration โ Manage Institutions โ Preferences โ Application Options, or set a department-specific value at Department Options.

The two admission-window keys in Application Options, both defaulting to 24 hours.

With the grace period set to 0, admitting a reservation whose window has already passed is blocked with "Reservation Expired".
- Inpatient โ Room Occupancy and Vacancy โ live view of what is occupied
- Inpatient โ Admit a Patient โ standard admission without a prior reservation
- Admin โ Room Categories, Rooms, and Room Fees โ room setup