[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnumed-devel] appointments

From: Horst Herb
Subject: [Gnumed-devel] appointments
Date: Tue, 7 May 2002 12:13:09 +1000

I am in the process of creating a functional appointment system - has to 
work by Monday, sort of. I have started a new CVS section "drafts" in the 
CVS tree. I have scavenged as much as possible from Ian's previous work, 
but it turned out quite different in approach now.

Anything in "drafts" may or may not end up in the final gnumed version. Due 
to time constraints, I have to cut corners, so the code is not well 
documented, and may use tables we will not use in the final version.

However, in order to avoid duplicate work, I suggest nobody else focuses on 
appointments unless they want to help me out in the "drafts" tree.

I have tested a dummy version on our receptionist, and she had no 
difficulties using it after telling her in less than 5 minutes:
1.) select a date from the calendar if it is not already displayed
2.) click on the time in the "spread sheet"
3.) enter  a couple of characters from the patient's surname
     - to narrow down search, you may enter a few characters from teh first 
name as well
    - to make longer appointments than the preset "standard", simply write 
a '+' for every preset standard time increment
4.) hit enter
5.) confirm/select patient or hit new button
6.) To modify an appointment, simply repeat the process
7.) For further options, right-click the appointment

- a spreadsheet like panel (horizontal days of week, vertical time slots) 
displays the names of people who made an appointment at a specific time.
- To enter a patient, one clicks into the vacant time slot, and enters as 
many characters of the surname +/- given names as one likes, plus 
optionally a sequence of "+" characters.
Once enter is pressed or the cell looses it's focus, the cell contents are 
parsed for surname fraction and, if existing, given names fraction. The 
database is then searched for patients with matching criteria. If only one 
is found, it is pre-selected in an otherwise empty selection, accepted by 
"enter key" and entered into the cell.  If multiple entries match, a list 
box drops down from the cell with the cursor at the first entry. 
Cursor+enter selects, tab escapes into the "new patient" entry dialogue.
If one or more '+' characters are found following the name fractions, the 
appointment time is increased in fixed increments. The increments are 
defined in each doctor's preferences.

The spread sheet greys out time slots where the doctor is not available buy 
default (like free afternoons), but allows to override this (receptionist 
still can enter data into the greyed section). It colour codes the column 
representing the current day, and the "selected" day as well.

A combo box above the spread sheet widget displays the doctors name. By 
selecting another doctor, the spreadsheet displays that doctors schedule.

A container widget hosts as many of these schedule widgets as doctors are 
working in the practice.
A top row with buttons allows to quickly jump between days, weeks and 
months ahead; a "calendar" button pops up a calendar for convenient date 
selection. As the calendar is not needed that often, I decided not to 
waste screen real estate with it by default (can be overridden, and 
calendar dispayed left hand / right hand/top/bottom of schedules 

I have yet to write an overview widget which displays all appointments of 
all doctors for a given time span at once


reply via email to

[Prev in Thread] Current Thread [Next in Thread]