Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium


Waiting Room Application

Posted on 2011-02-13
Medium Priority
Last Modified: 2012-05-11
I have been developing Access apps for many years but this request is uniique to me although I am certain it is common in the real world.

An exisitng client of mine has asked for a quote on a waiting room app with three stations. I understand the logic for each of the individual stations but I'm not sure how to 'pass' information from the check in station to the two others in a real time way. All three stations are on the same local network.

Station One: will be the patient check in.  As the patient arrives we recognize who they are and  ask them to confirm their appointment time.  

Station Two is the receptionist office.  When the patient checks in on station one the receptionsist should receive a notification of this check-in.  The notification should be in the form of a screen popup.  The best analogy I can think of is the way that MS Outlook notifies you of a new email message arriving to your Inbox but I would prefer not to do it by sending an email from station one.  Maybe it will end up being the best solution but it just seems so lo-tech and is dependant on Outlook being turned on.  It is also dependant on the user logged in to the sattion which will change from day to day and even throughout the day.

Station Three: A large display monitor in the office waiting room showing the waiting patients the order that the patients will be taken in.  Any given patient will know the number of patients in front of them.

When a patient checks in on station one, how is the message sent to station two that they have arrived?  I know I can send an email using the sendobject command but that doesn't seem like what they really want.  One way I see of implementing this is to have an app running on station two that monitors a particular area on the server for new activity.  When it sees new activity it puts a pop up on the screen.  Can this monitoring app be created in Access?  Once again this really seems lo tech and I'm hoping there are better ways.

How does station three become aware of new patient check in and update the monitor displaty?

Station two can also make changes to the schedule which should update the monitor display.

Looking for some genral ideas on how to do this, the more the better.  I realize there is no 'right' and 'wrong' way of implementing this but I am hoping for some ideas.  I know this had been done before.
Question by:mlcktmguy
LVL 39

Accepted Solution

Aaron Tomosky earned 500 total points
ID: 34883007
Your on the right track. I'd suggest a filewatcher folder on each station that is shared where the other stations can put  an XML file there. Each station then watches that folder and opens the XML if it sees it.
LVL 59

Assisted Solution

by:Jim Dettman (Microsoft MVP/ EE MVE)
Jim Dettman (Microsoft MVP/ EE MVE) earned 500 total points
ID: 34883043
<<When a patient checks in on station one, how is the message sent to station two that they have arrived?  I know I can send an email using the sendobject command but that doesn't seem like what they really want.  One way I see of implementing this is to have an app running on station two that monitors a particular area on the server for new activity.  When it sees new activity it puts a pop up on the screen. >>

  Yes, that would be one way of structuring it; have a "action" table, which your programs check every xx seconds and if it finds a message in there that pertains to what it does, it acts on it.

  A more traditional approach would be to simply have each update station update the data it's based on every xx seconds.  

  Or a combination of those; stations update the data, then message each other that they need to refresh.

  as you said, million ways to structure that.  I would not however rely on any form of e-mail to accomplish this.  It's simply not required and just adds a whole bunch of complexity.

LVL 19

Assisted Solution

by:Richard Daneke
Richard Daneke earned 500 total points
ID: 34883795
I am suggesting something different.
1. At check-in, you would be updating a date/time field for the patient.
2. At Station 2, you refresh a query looking for current date and a 'popped up' yes/no field.  VBA can open a message box on this station.  On close of MsgBox, the yes/no field is set.
3. On the 'Big Board', a query is refreshed to show the Patient List is ascending order for the day.  (As patients are called, another yes/no field or date/time field can be used to 'clear the name' from the board.

The requery can be set with a OnTimer event on the appropriate forms/reports.

This involves a minimum of special code, keeps the full transactions within Access, and, if a date/time field is used for updating when a patient is seen, can provide some statistics on wait times.
LVL 11

Assisted Solution

RgGray3 earned 500 total points
ID: 34883820
Possibly an activity table with fields like

Patient ID  (name or key...  depending on your structures)
PatientArrived  (Y/N)
PatientAcknowledged   (Y/N)  Station 2 has responded to a msg box)
PatientSeen    (Y/N)   (to be set to true when Station 3 calls the person and they are to be seen)
PatientApptTime        (Could be supplied by a joined appointment table...  depending on your structures)

So the patient checks in and the first check is set
The second station uses the timer to check on a regular basis...  (1, 5, 10, 30 ...  seconds based upon your specification) to see if there are any patients that have arrived but station 2 has not "Acknowledged"

Pop up a small form with the list of patients (depending on your TimerInterval there may be more than 1)
Ask station 2 to acknowledge and upon doing so...   print/do/run what ever they see as required prep for station 2 and mark them as acknowledged.

On station 3 you have a form that is "Requeried on a regular basis"  determine the frequency
that shows all patients that have the first two checks true and the third as false

Then you could get slick and when someone is seen... and the 3 station marks them as seen....  you create a record set of your unseen patients and renumber them from 1, requery the form and it will always indicate the patients place in the que.

You could get fancy and have a field for ON TIME so patients that arrive on or before their appointment time could get preference to walkins and late people...   logic is doable...

I believe that covers your specs...  basically it can all be managed using the Form's timer event and interval


Author Closing Comment

ID: 34892082
Thanks to all for your input

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The Windows Phone Theme Colours is a tight, powerful, and well balanced palette. This tiny Access application makes it a snap to select and pick a value. And it doubles as an intro to implementing WithEvents, one of Access' hidden gems.
Implementing simple internal controls in the Microsoft Access application.
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
Enter Foreign and Special Characters Enter characters you can't find on a keyboard using its ASCII code ... and learn how to make a handy reference for yourself using Excel ~ Use these codes in any Windows application! ... whether it is a Micr…
Suggested Courses

564 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question