The Multi-Seatings POS Panels
In this article
Template menus behind the panels group blocks
Where to put the commands for a seating group or reservation
Viewing a template menu from the running POS
How buttons are shown enabled or disabled
A dining area set up for Multiple Seatings on a Dining Table uses three pop-up panels on the POS:
- Overview Table Popup panel - opens when you press a dining table with at least one seated group in the Table Overview. Shows each group seated at the table - guest, guest count, seating time, kitchen status, orders, and comments - with buttons to act on that group, and panel-level functions such as seating a new group.
- Allocation Table Popup panel - opens from the The Dining Allocation Panel when the selected table has reservations, seated or allocated, for the time you are viewing. Shows each of those reservations, with buttons to edit, seat, or show the reservation, or to change or cancel its allocation.
- Upcoming Reservations Table Popup panel - opens with the MSEAT-RESERV-SHOWPNL command, for example from the Upcoming Reservations button on the Overview Table Popup panel. Shows the reservations expected at the table. Two fields on the Dining Area Card limit which reservations are shown. They apply to every dining area. See Which reservations a dining table shows:
- Reservations Show Ahead (Min.): how many minutes ahead of the current time the program looks for reservations on a dining table. A reservation that starts later is not shown on the table. Zero means no limit. Demo data: 120.
- Reservations Show After End (Min.): how many minutes a reservation is still shown on its table after the reservation period has ended, so that guests who arrive late can still be seated. The minimum is 5 and the default is 15. Demo data: 5.
Each panel is built from three button pad controls:
- Header - a fixed menu with information about the panel, such as panel heading, the table name and how many groups or reservations are shown.
- Group Blocks(seated group or reservations) - one block per seating group or reservation. The program builds the blocks when the panel opens, from the template menu set on the dining area.
- Functions - a fixed menu with table-level actions, such as Seat Group and Close.
Note: Every button, caption, and command on these panels is POS menu setup, not fixed program behavior. The demo template menus named below are in the #HOSPMULTI demo profile, as one worked example of how the three panels can be built - your own setup is free to use different buttons, captions, or layouts entirely.
Template menus behind the panels group blocks
The block section of each panel is built from a template menu: one menu design that the program repeats once per seating group (Overview Table Popup panel) or once per reservation (Allocation and Upcoming Reservations Table Popup panels).
The template menu is set on the dining area, one field per panel (Multi-Seating Overview Group Menu ID, Multi-Seating Allocation Group Menu ID, Multi-Seating Reservations Group Menu ID). Each field takes a menu of the type Dining Table GUI Menu, and the menu's panel rows and columns set the grid that the block buttons of the panel are laid out in. The POS does not start until all three template menu fields are filled in. The message names the field that is empty.
Note: To have a different layout and different block buttons per menu profile, the template menus need to have the same ID in each profile. For example, for a tablet, you may show fewer block buttons (and more in the block pop-up menu) and lay the blocks out vertically. See POS Menus for Multiple Seatings.
In the demo profile, all three template menus are a 4-column by 7 (or 6) row grid:
- #MSEATOVERV-GRTEMPL "Seating Group - horizontal, full info" - the Overview Table Popup panel's per-group template, 4 columns × 7 rows.
- #MSEATALLOC-GRTEMPL "Reservations - horizontal, full info" - the Allocation Table Popup panel's per-reservation template, 4 columns × 7 rows.
- #MSEATRESERV-GRTEMPL "Upcoming Reservations - horizontal, full info" - the Upcoming Reservations Table Popup panel's per-reservation template, 4 columns × 6 rows.
Note: To edit the menu, select Insert Lines to insert a line for each button. Then at the end of editing, select Delete Empty Lines to delete buttons that are empty, to minimize the amount of buttons needed to be checked for rendering.
Where to put the commands for a seating group or reservation
A command that acts on one seating group or reservation can be placed in either of two places:
- On a button in the block: Every block shows it, and pressing it runs the command for that block's seating group or reservation. The command button can be shown as disabled if the action does not apply to the state of the group or reservation. This can be controlled with event subscription.
- On the block's pop-up menu: - the menu that opens when you press the block's MSEAT-SHOWMENUPOPUP button (the ⋯ button).It is set up in the hospitality service flow per state, so it can offer different commands depending on the state of the group or reservation.
Put the commands that the staff need most often on buttons in the block, and the rest on the block's pop-up menu. This helps when screen space is limited and a block with many buttons would be hard to use. Block pop-up menus are optional; leave out the MSEAT-SHOWMENUPOPUP button if every command is on a button in the block.
Commands Supported
In the Overview Table Popup panel
| Dining Table State | Supported Commands | Service Flow Menu - in the Pop-up Menus for Dining Tables group |
| Seated |
Open POS (HOSP-OPEN-POS) Transfer (TRTBL_PART) Remove Seating (MSEAT-CLEARSEATING) Edit Guest Name or ID(HOSP-EDIT-GUESTID) Edit No. of Guests (COVERS) Show comments (COMM_SHOW, #COMM-COMMENTS) |
Seated Pop-up Menu ID |
| Occupied - Active Order |
Open POS (HOSP-OPEN-POS) Show KOT list (KITCHEN_ORDERSTATUS) Show Order list (HOSP_TBL_ORDERS, FORTABLEENTRY) Print Bill (PRINTBILL) Split Bill (SPLITBILL) Show comments (COMM_SHOW, #COMM-COMMENTS) |
Occupied Pop-up Menu ID |
| Occupied - Order Paid |
Open POS (HOSP-OPEN-POS) Show KOT list (KITCHEN_ORDERSTATUS) Remove Seating (MSEAT-CLEARSEATING) Show comments (COMM_SHOW, #COMM-COMMENTS) |
Occ. Order Paid Pop-up Menu ID |
In the Upcoming Reservations Table Popup panel
| Reservation State | Supported Commands | Service Flow Menu - in the Pop-up Menus for Dining Tables group |
|
Reservation within advance seating minutes |
Seat Guests (SEAT_GUESTS) Cancel allocation (TBL_CANCELALLOCATION) Cancel reservation (MSEAT-RESERV-STATUS, CANCEL) Mark as No-Show (MSEAT-RESERV-STATUS, NO-SHOW) |
Upcoming Res. Pop-up Menu ID |
|
Future reservation |
Cancel allocation (TBL_CANCELALLOCATION) Cancel reservation (MSEAT-RESERV-STATUS, CANCEL) Mark as No-Show (MSEAT-RESERV-STATUS, NO-SHOW) |
Upcoming Res. Pop-up Menu ID |
In the Allocation Table Popup panel
| Reservation State | Supported Commands | Service Flow Menu - in the Allocation Reservation group |
| Reserved |
Seat Guests (TR-R-SEAT_AT_TABLE) Edit Reservation (TR-R-EDIT_RESERV) Edit No. of Guests (TR-R-CHANGE_GUESTNO) Show Reservation (TR-A-SHOW_RESERV) Cancel Allocation (TR-R-CANCEL_ALLOC) Change Allocation (TR-R-CHANGE_ALLOC) Allocate extra tables (POPUP, #HOSP-RES-ALLOCATE) Show comments (COMM_SHOW, #COMM-COMMENTS) |
Reserved Pop-up Menu ID |
| Reserved in the Future |
Edit Reservation (TR-R-EDIT_RESERV) Edit No. of Guests (TR-R-CHANGE_GUESTNO) Show Reservation (TR-A-SHOW_RESERV) Cancel Allocation (TR-R-CANCEL_ALLOC) Change Allocation (TR-R-CHANGE_ALLOC) Allocate extra tables (POPUP, #HOSP-RES-ALLOCATE) Show comments (COMM_SHOW, #COMM-COMMENTS) |
Reserved Future Pop-up Menu ID |
| Seated |
Remove seating (TR-A-SEAT_AT_TABLE, REMOVE) |
Seated Pop-up Menu ID |
| Seated with Order | No command supported |
Viewing a template menu from the running POS
All three template menus have their Context Menu field (on the menu header) set to #SHOW-MENUSETUP. Right-clicking a button that belongs to one of these menus sends a context-menu event carrying the SHOW-MENU-SETUP command; each panel's controller handles that command by opening the stored menu design the panel was built from, directly on top of the running POS. This lets an administrator see and edit the exact button layout without leaving the POS to search for it in the menu list. Because it exposes setup, SHOW-MENU-SETUP requires the user to be a super user.
How buttons are shown enabled or disabled
Whether a button is actually pressable is decided again each time the panel is built, per block, by two separate rules:
- On the Overview Table Popup panel, each seating group's commands are checked against the group's own state (for example, MSEAT-CLEARSEATING is only left enabled when the group has no unpaid order and no unserved kitchen order ticket - see MSEAT-CLEARSEATING). A refused command either greys the button out, or - by default, for a button that is showing a fact such as a guest count rather than offering an action - keeps it looking normal but does nothing when pressed if you cannot change the guest count.
- On the Allocation Table Popup panel, each reservation block's commands are checked against that reservation's own state (Reserved, Reserved Future, Seated with or without order taken). For example, once an order has been taken for a reservation, every command on its block is refused; a not-yet-due reservation refuses only the commands that apply to a seated group or that seat the reservation immediately.
Both rules are published as events, so a partner extension can override or narrow which commands a given block offers without changing the underlying panel logic.
On the Upcoming Reservations Table Popup panel, SEAT_GUESTS follows the same rule as seating from the Allocation Table Popup panel: the button is greyed out until the reservation is due. The other commands on this panel are always enabled.
See also
Multiple Seatings on a Dining Table
How to: Seat Multiple Groups at a Dining Table