Showing Reservation Notes upon check-in |
Top Previous Next |
When a reservation is checked in, it might be nice to show a pop-up window with any Notes that reservation has -- especially if the customer's Warning Flag is set. This example shows how you can create an Event Action to do that in version 4.0.
1. The first step is to add an Event Action. Go to Maintenance / Advanced Customizations / Event Actions, and click "Add event action".
2. Give it a name, such as "Check-In Warning & Notes".
3. For the Event Trigger, select "Check-in reservation, before". We want to do it before the check-in process is done, in case the notes impact how we handle the check-in. We're also going to add an option to this action which allows the operator to cancel the check-in, so that's another reason it must be a "before" trigger.
4. We only want to do this action if they have the warning flag checked, so enter this for the Condition:
Cust:Cust_Warning_Flag = .T.
(Technically you could leave out the "= .T." part since the boolean result would be the same either way, but this is included here for clarity.)
5. Now for the action expression -- we want to show a Yes/No prompt which shows that the customer has a warning flag, show any Reservation Notes along with that, and offer the option to continue the check-in or not. This can all be done with this expression:
MessageBox("Customer has a warning flag! \n\n Reservation Notes: \n\n" +
Resv:Resv_Notes + "\n\n Continue with Check-In?", 2, 1) = 2
A few notes about the expression:
- It's broken into 2 lines for readability here, but it must be continuous when you enter it.
- Text values are concatenated simply by using "+" between them as shown above
- Insert the characters "\n" wherever you want to start a new line (two in a row, as shown above, makes a blank line).
- It's not actually necessary to have spaces around the "\n", that's just for readability
- The "2, 1" parameters at the end tell it to have Yes/No options and show a warning icon
- We compare the result with 2, which is the value returned if Yes is clicked. Thus if they click No, this expression returns False.
6. We also need to check the box "Abort the event or operation...", so if they don't answer Yes then the check-in does not continue.
Simplified to always show notes:
If you only want to show the notes (if any) but you don't care about whether the warning flag is set and you don't need to abort the check-in, then make these changes:
Replace the condition in step 4 with:
!Empty(Resv:Resv_Notes)
Simplify the expression in step 5 to:
MessageBox("Reservation Notes: \n\n" + Resv:Resv_Notes)
Don't check the "Abort..." box in step 6
In fact, you might want to do both -- show the message with the option to cancel if they have a warning, otherwise just show the notes if they have any. In this case, you can use two separate Event Actions. The first one would be the original Event Action covered above, and the second one would be the simplified version with one change to the Condition:
!Empty(Resv:Resv_Notes) AND !Cust:Cust_Warning_Flag
This way it won't show the notes twice if they do have a warning flag (assuming they click 'Yes" to continue anyway).
You may think of other things that you want to validate upon check-in, so you can add other Event Actions as needed -- you can have as many Events as you like, even for the same trigger, and they will all be executed in sequence (unless one "aborts" the operation as this one could do, of course).