Vous êtes sur la page 1sur 59

I.G.C.S.E.

COMPUTER STUDIES

PROJECT REPORT

“SUMMER 2005”

CANDIDATE NUMBER: 0001

CANDIDATE NAME: SAMEH ABDEL RASOUL

CENTER: “RUWAIS PRIVATE SCHOOL”

CENTER NUMBER: “AE138”


1. Analysis
a) Description of the problem
b) Objectives
c) Description of existing solution
d) Evaluation of existing solution
e) Description of other possible solutions
f) Evaluation of other possible solutions

2. Design
a) Plan
b) Description of the method of solution
c) Hardware
d) Software

3. Implementation
a) Methods of solution related to problem
b) Accurate method of solution

4. Testing
a) Test strategy
b) Test results

5. Documentation
a) Technical documentation
b) User documentation

6. System Evaluation and Development


a) Evaluation
b) Developments
1. Analysis:
a) Description of the problem:

Ruwais clinic center is a small clinic in a housing colon housing the employees of
Ruwais Industrial Complex. The clinic is owned by the owners of the industrial
complex and offer very cheap services to the residents of the housing complex. The
current solution is very slow. Inputting new data is slow, searching, processing,
deleting and amending current records is very slow. It also takes a lot of time to find
files of uncommon patients so non-Ruwais-members disguise claim that they are
Ruwais members but they rarely pay a visit. This causes a lot of disturbance for both
people standing in a queue waiting to take an appointment and the clinic’s staff. This
also sometimes causes non members to claim that they are members, so they pay the
low member’s fee, and checking after them is both very slow, and time and labour
consuming.

b) Objectives:

The objectives of the new system are:

1. Keeping a database of all RHC residence.


2. Keeping a database of all present and past patients.
3. Automatic updating and searching will take place easily and quickly.
4. Automatic transmission of files (preferably to be transferred as digital data
through wires).
5. The new system must be more secure and fast.
6. The new system should reduce labour cost by allocating labour more
efficiently.
7. Validation and verification checks will be applied for each and every data
input, and thus improving the system’s accuracy.
8. Prevent data or money loss.
9. Improve accuracy of data input and prevent unclear (handwriting could be
unclear but typed writing could never be so) or misspelled input.

c) Description of the existing solution:

Input:
• Currently, a necessary and sufficient input requirement is the patients file
number which is usually written on a card the patient should always carry.
• If the patient doesn’t have his card with him, he can dictate his file number to
the receptionist.
• If he doesn’t remember it, he is asked for the company he works for, his or his
guardian’s employee number and his telephone number; and here is where
most of the cheating occurs.

E.g.:

• Please fill this form for every patient arriving without his attendance card or
his file number:

Patients Name: __________________


Employee number: __________________
Phone Number: __________________
Reason for visit: __________________
Date :____________ Time:_____________
Signature: __________________
*Please keep this form in the patients file for future reference.

• The validity of this form is then checked by Ruwais’s administration, and the
reply is usually sent after a few weeks, which is more than enough time for the
patient to leave Ruwais.
• The receptionist then asks the patient for the test, check or appointment type
he needs and orders for the file carrying the patient’s number.

Processing:
• The file number is transferred to the database manually (a worker carries a list
with the required file numbers to the database).
• There a number of workers locate the file and it is then carried back to
reception desk manually.
• A detailed medical form is filled by the receptionist, where the patient’s visit’s
reason, the specific doctor’s name, the date the time and other medical data
are entered.
• The patient then pays a small amount of money for the check (non-Ruwais
members are charged higher fees).
• The patient’s file, with the detailed medical form in it is transferred manually
to the proposed doctor’s or physicist’s office. Otherwise if the patient
demanded an appointment, an appointment sheet is filled, including the
appointment’s date and time, and stamped the word: “PAID”.

Output:
• The receptionist fills a small pre-printed slip, which includes the check type,
and number (the patient’s turn).
• The patient is handed the slip and waits for his/her turn in a waiting room.
• If the patient wanted an appointment, he/she is handed an appointment slip,
which looks something like this:

Appointment Slip

• Patient’s File number: ____________________


• Appointment’s number: ____________________
• Doctor’s name: ____________________
*Please keep this slip in a safe place until the appointment’s date. The clinic is not responsible
for loss or damage of this slip.

d) Evaluation of existing solution:

Advantages of the existing solution:

• The system is classical and familiar for most clinics’ experienced staff.
• The system can’t be affected by a computer virus (It is made up of papers).
• Data can be retrieved from damaged paper, but not from other storing devices
such as a baking store.

Disadvantages of the existing solution:


• It’s hard to update the existing system.
• Processing is slow.
• Searching for specific files is very slow, especially files barely used.
• Paper files are easy to lose or to get damaged.
• Storing information in the form of paper requires large store rooms.
• Management of large amounts of paper is hard and consumes a lot of time and
effort.
• The system employs extra staff which contributes to higher labour cost.

Suggested improvements:

• A new database could be introduced, especially one that is faster and safer.
• Storage of a data should be improved.
• Staff should be re-organized, and the labour cost paid for workers in the
storage room could be reduced.
• A safe and quick way of checking whether the patient is a member of Ruwais
or not should be introduced.

e) Description of other possible solutions:

1) Creating an application using a general purpose database program (Content free


software).
2) Obtaining an application specific software (off-the-shelf program), these are
software that has been designed to perform a specific function in terms of
outcome, or for use within a particular industry.
3) Purchase a tailor made solution, which is done by employing a software house to
write specialized software on its behalf.

f) Evaluation of other possible solutions:

1) A general purpose database:


• Advantages:
 User friendly
 Almost fits the problem exactly
 Fast to use
 Easy to input or delete data
 Fast to search or update data
 Less use of paper
 Relatively cheap purchase and running cost
 Maintaining is easy and doesn’t require a lot of skill or training
• Disadvantages:
 Not every requirement is met
 Requires new hardware and software which might be costly
 Implementation can be time consuming

2) An application specific software:


• Advantages:
 Cheap and easy
 Available at most computer stores.
• Disadvantages:
 Requires training of staff, which is time and money consuming
 Many requirements might not be met.
 Implementation is time consuming

3) A tailor made program:


• Advantages:
 Each and every requirement is met
 Secure, unique and the output format could be exactly as desired.
• Disadvantages:
 Very expensive
 Takes time to be prepared
 Requires training, which is time and money consuming.
 Implementation is time consuming

Having a general purpose database is probably much better than having an application
specific software because it meets more requirements, it is cheap and it is available at
most computer stores.

When comparing the general purpose solution we find out that the tailor made program
meets each and every requirement of the system, but it takes a lot much more time to be
prepared and is very costly. Since the clinic is a relatively small business, purchasing a
tailor made solution will be a waste of time and money.

Thus, it is clear that a general purpose solution fits our problem best.
2. Design

a) Plan

Analysis:
⇒ Starting: 15 June 2005
⇒ Ending: 22 June 2005
⇒ Predicted Achievements: Feasibility study carried out and feasibility report
completed.
Design:
⇒ Starting: 24 June 2005
⇒ Ending: 14 July 2005
⇒ Predicted Achievements: Input forms and screens designed and completed.
Implementation:
⇒ Starting: 15 July 2005
⇒ Ending: 21 July 2005
⇒ Predicted Achievements: Installation of new database and records
transferred to the new system.
⇒ Objectives Reached: 1,2,4 and 6.
Testing:
⇒ Starting: 22 July 2005
⇒ Ending: 31 July 2005
⇒ Predicted Achievements: System monitoring after installation to correct
any errors that may occur later.
⇒ Objectives Reached: 3,5,7,8 and 9.
Documentation:
⇒ Starting: 1 August 2005
⇒ Ending: 10 August 2005
⇒ Predicted Achievements: Completing and presenting both the technical and
user documentations.
System Evaluation and Development:
⇒ Starting: 11 August 2005
⇒ Ending: 17 August 2005
⇒ Predicted Achievements: Completion of system evaluation and
development.

b) Description of the method of solution


A database program is to be made using a general purpose database program to replace
the existing solution. The concept of file numbers will be cancelled out. Searching the
history of an employee will be through his employee number. Four tables will make up
the bases of the program, and those are: 1. A table including all RHC members. 2. A
table of all the visits. 3. A table of all the appointments. And a table including all the
emergency cases.

The RHC members table is intended to be a reference for checking whether the visitor
is an RHC member. Data is entered into it by the Ruwais administration only at the
stage of implementation and data will need to be added to it in the rare event of having
a new RHC member. It will contain the following fields with the following formats:

Field Name Data Type Required Length Additional comments:


Employee It is the primary key, and it will be
Text Yes 4
Number assigned a field length of 4
First Name Text Yes 20 ---
Last Name Text Yes 20 ---
Industrial Should have a drop down menu with only
Text Yes ---
Area 4 values.
Nationality Text Yes 10 ---
Telephone
Text Yes 10 Will have a phone number input mask.
number
Address Text Yes 20 ---
* A primary key is a unique field for each record used to identify the record.

Notes:
⇒ Employee number will have a length of 4 only
⇒ Industrial area will have a combo box, and data entry will be restricted to
only 4 values: Takreer, Fertil, Gasco and burouge.
⇒ Telephone number will have a telephone number mask.

The second table will be the visit’s table, keeping track of each and every patient’s visit.
It will have the following fields:
Field Name Data type Required Length Additional comments:
Auto
Visit Number Yes -- Will be the table’s primary key
Number
Employee
Text Yes 4 ---
Number
Visit’s Date Date/Time Yes 6 ---
Visit’s Time Date/Time Yes 6 ---
Doctor’s Name Text Yes 20 ---
Diagnosis Text No 100 ---
Assigned
Text No 100 ---
Medicine

Notes:
⇒ Visit number is a unique field, and thus it’s chosen to act as the key field.
⇒ Fields like first name and last name are not added to avoid repetition; they
are only present in the RHC members table and linked to this through their
employee number.

The third table is the appointments table:

Field Name Data Type Required Length Additional comments:


Appointment’s Number AutoNumber Yes --- This is the table’s
primary key.
Employee Number Text Yes 4 ---
Appointment’s Date Date/Time Yes 6 ---
Appointment’s Time Date/Time Yes 6 ---
Doctor’s Name Text Yes 20 ---

Notes:
⇒ Little amount of info is entered for simplicity and to avoid repetition.

The last table is the emergencies table. Like the appointments and visits table, it will
have an emergency number field as the key field and no fields will be repeated.
Filed Name Data type Required Length Additional comments:
Emergency number Auto Number Yes --- This is the table’s primary key
Employee Number Text Yes 4 ---
Emergency Date Date/Time Yes 6 ---
Emergency Time Date/Time Yes 6 ---
Medical State Text No 50 ---
Doctor Text Yes 20 ---

Relationships:

• All the tables will be linked together through the field named employee number
which is present in all of them and unique to every employee.

The employee number has been chosen to be the only link because it is the only field
unique to each person, and therefore will be the best option to identify each record.
The method of solution will include also six queries and will be used as follows:

1. Search for “today’s” appointments.


2. Check the membership of a specific patient
3. Search for information on a specific member
4. Search for previous visits of a specific member
5. Search for previous appointments of a specific member
6. Search for previous emergency cases for a specific member

All the searching will be done through the employee number.

This flowchart summarizes the way the system operates:


c) Hardware

The new system will require the purchase of a number hardware which is to satisfy the
following minimum specifications for optimum operation:

Hardware Reason Objectives reached


Pentium III processors 800 Powerful processing is required to3 and 5
MHz avoid time wasting
40 GB hardisk for the server, 4To allow for storing a vastly 1 and 2
GB for terminals growing database, terminals
don’t need space.
512 MB RAM A large RAM for fast searching ---
and reviewing records will be
required
15” Screens For high quality display ---
A mouse and a standard Together the form the best 4 and 9
keyboard combination for the method for data input and other
server and the terminals usages of the system

d) Software

Along with the previous list of hardware requirements the system will require several
software to run properly. The following to table outlines the minimum software
requirements for the new system.

Software Edition Reason


Microsoft Access XP A relational very flexible general
purpose database program
Microsoft Windows XP or Millennium User friendly, compatible with
Microsoft Access well and most
suitable for setting up small
networks.
3. Implementation

a) Method of solution related to the problem

For simplicity, all the tables will be created through the same method, which is creating
the table in design view.

1. Open your Microsoft access XP (or the version afforded)


2. Click on [Blank Database] under the new tray:

3. In your Database’s main window double click [Create table in design View]. Or
simply click on the button:

4. Input the fields in the design view window as follows:

Table 1: RHC Members


Table 2: Visits
Table 3: Appointments

Table 4: Emergencies
Only two queries are required for our program and they are:

Query 1: Check Membership

This query is used to search for an employee’s record via his employee number.

Query2: Check for today’s appointments

This query is the one used for searching for the days appointments:
Seven forms will co-exist with these 4 tables and 2 queries to provide a friendly
interface and easy usage. The easiest method for creating a form is by using the wizard.
The wizard creates an appreciable form automatically which you can then edit using
design view.

The forms should be implemented and look like the following:

Form 1: RHC Members

This form is used to enter a new RHC member in the unlikely event of someone
joining the complex.
All the members of Ruwais housing complex are then to be entered using this form
and then the records should be right protected to add to the security of the system,
e.g. the receptionist could add a fake member for a bribe.

Form 2: Visits

Once a patient comes for a visit, a record is added to this form. The check
membership button runs the check membership query to verify the patient’s
membership.

The other button will be present in almost all of the forms and its function is to close
the form.
Form 3: Appointments

This form is used to assign appointments for patients.


Form 4: Emergencies

In an emergency case, this form is used to add a record to the emergencies table.

Form 5: Check appointments query

When you run the check appointments query, the results are displayed in the
following form:
Form 6: Check membership query

When you run the check membership query using any of the [check membership]
buttons the results of the query will be displayed in this form.

Relationships:

All four tables we used in this program will be linked together through the field
“Employee Number”, since it is the only field unique for every patient. The
relationships could be adjusted by going to the menu [Tools] – [Relationships…].
Set your relationships as follows:
Switchboard

This is the program’s main form which leads you throughout.

Functions of the switchboard’s buttons:

• A new Emergency case: opens the emergencies form


• New Visit: Opens the visits form
• A new Appointment: opens the appointments form
• View today’s appointments: opens check appointments form
• A new RHC member: opens the RHC members form

Are all objectives reached??

• Objective 1: Table 1 keeps a database of all RHC members.


• Objective 2: Tables 2, 3 and 4 keeps a database of all present and past
patients.
• Objective 3: Queries 1 and 2 perform quick searching.
• Objective 4: A network is set up and files transmission is automatic.
• Objective 5: The new system is more secure and faster than the existing
system.
• Objective 6: Fewer workers are employed since there’s no more paper
handling, and thus the system has reduced labor cost.
• Objective 7: Validation and verification takes place every time a data item
is entered (such as presence check, type check and length check)
• Objective 8: Data is not lost, because the database is on a central computer
away from most employees.
• Objective 9: New input methods and input devices do improve the
accuracy of input data.

Yes, they are all reached.


4. Testing

a) Test Strategy

Test 1: Testing objectives 1, 7 and 9.

We will test data entry in table: RHC members, in the employee number field.

Input Type Examples Expected output

Normal data 0003 Accepted

Extreme data 9999 Accepted

Abnormal data [leave it blank] Not accepted

Test 2: Testing objective 5.

The following test is for the RHC members table also, but with regard to speed,
security and avoiding input errors in the Industry field.

Input Type Examples Expected output

Normal data Fertil Accepted

Extreme data [doesn’t exist] ------------

Abnormal data Sadafco Not accepted

Test 3: Testing objectives 2 and 5

Then the Visits table will be tested, specifically the visit’s date field.

Input Type Examples Expected output

Normal data 03/10/2005 Accepted


Extreme data 12/12/2005 Accepted

Abnormal data 14/35/87321 Not accepted

Test 4: Testing objective 3

Two tests will be carried out under this title. These tests are to examine the
program’s searching abilities and accuracy. The first will test the Check membership
query, and the second will examine the Check appointments query.

i. For the first test an employee number of 0002 will be used.


ii. The second query is set up to check for today’s date automatically and
doesn’t need any data entry.

b) Test Results

Each test will be carried out by attempting to enter the normal, extreme and abnormal
values for each test. The tests were carried out and the results can be summarized in the
following:

Test 1:

• Normal Data:

The form allowed you to carry on to the next field and this shows that the entered
value was accepted:
• Extreme Data

The form also accepted the extreme value.


• Abnormal Data

The form will not accept the null value and will prompt an error message to the
user:

Test 2:

• Normal Data

The form will allow you to move to next field and this shows that the data
entered in the previous field was accepted.
• Extreme Data

Extreme data doesn’t exist in this field since you only have four values in a drop
down box from which you can choose your values

• Abnormal Data

The form will not accept any value not in the combo list and will respond by
sending an error message to the user.
Test 3:

• Normal Data

The form will approve of your input and will allow you to move to the next field.

• Extreme Data

The form will also accept the extreme value.


• Abnormal Data

The form will not accept it and will ask you to change it.
Test 4:

i. Testing the query [Check Membership]

This test will be carried out to test the accuracy of the check membership query.
The query will run and its results will be displayed in a form:

• Run the query from any of the several “check membership buttons:

• Enter the requested employee’s number (0002 in this case):

• The information of that member will be retrieved:


ii. Testing the query[Check Appointments]

For this query, the user will not be required to enter any data since the criterion
has been specified when the query has been made. This condition is when today’s
date is the same as the date of the appointment. This query could be tested by
running it from the main switchboard.

The query is expected to give out something like this:

All the tests proved to be totally successful and the program accomplishes
all the objectives that it was determined to achieve.
5. Documentation

a) Technical Documentation

This section aims at the maintenance programmer of the system. It is designed to aid
him in the maintenance process, and keep him running the system properly.

It will in include the systems hardware and a software requirements, a reference to all
its tables, queries and forms; and the sql code of all the database items.

• Hardware requirements

Hardware Reason Objectives reached


Pentium III processors 800 Powerful processing is required to3 and 5
MHz avoid time wasting
40 GB hardisk for the server, 4To allow for storing a vastly 1 and 2
GB for terminals growing database, terminals
don’t need space.
512 MB RAM A large RAM for fast searching ---
and reviewing records will be
required
15” Screens For high quality display ---
A mouse and a standard Together the form the best 4 and 9
keyboard combination for the method for data input and other
server and the terminals usages of the system

• Software requirements

Software Edition Reason


Microsoft Access XP A relational very flexible general
purpose database program
Microsoft Windows XP or Millennium User friendly, compatible with
Microsoft Access well and most
suitable for setting up small
networks.

• The tables, queries, relationships and the main switchboard:

Table 1: RHC Members


Table 2: Visits
Table 3: Appointments

Table 4: Emergencies
Query 1: Check Membership

This query is used to search for an employee’s record via his employee number.
Query2: Check for today’s appointments

Form 1: RHC Members


Form 2: Visits

Form 3: Appointments
Form 4: Emergencies

Form 5: Check appointments query


Form 6: Check membership query

Relationships:
Switchboard

• The SQL Code:

1. The switchboard
Option Compare Database

Private Sub Form_Open(Cancel As Integer)


' Minimize the database window and initialize the form.

' Move to the switchboard page that is marked as the default.


Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'Default' "
Me.FilterOn = True

End Sub

Private Sub Form_Current()


' Update the caption and fill in the list of options.

Me.Caption = Nz(Me![ItemText], "")


FillOptions

End Sub

Private Sub FillOptions()


' Fill in the options for this switchboard page.

' The number of buttons on the form.


Const conNumButtons = 5

Dim con As Object


Dim rs As Object
Dim stSql As String
Dim intOption As Integer

' Set the focus to the first button on the form,


' and then hide all of the buttons on the form
' but the first. You can't hide the field with the focus.
Me![Option1].SetFocus
For intOption = 2 To conNumButtons
Me("Option" & intOption).Visible = False
Me("OptionLabel" & intOption).Visible = False
Next intOption

' Open the table of Switchboard Items, and find


' the first item for this Switchboard Page.
Set con = Application.CurrentProject.Connection
stSql = "SELECT * FROM [Switchboard Items]"
stSql = stSql & " WHERE [ItemNumber] > 0 AND [SwitchboardID]=" & Me![SwitchboardID]
stSql = stSql & " ORDER BY [ItemNumber];"
Set rs = CreateObject("ADODB.Recordset")
rs.open stSql, con, 1 ' 1 = adOpenKeyset

' If there are no options for this Switchboard Page,


' display a message. Otherwise, fill the page with the items.
If (rs.EOF) Then
Me![OptionLabel1].Caption = "There are no items for this switchboard page"
Else
While (Not (rs.EOF))
Me("Option" & rs![ItemNumber]).Visible = True
Me("OptionLabel" & rs![ItemNumber]).Visible = True
Me("OptionLabel" & rs![ItemNumber]).Caption = rs![ItemText]
rs.MoveNext
Wend
End If

' Close the recordset and the database.


rs.CLOSE
Set rs = Nothing
Set con = Nothing

End Sub

Private Function HandleButtonClick(intBtn As Integer)


' This function is called when a button is clicked.
' intBtn indicates which button was clicked.

' Constants for the commands that can be executed.


Const conCmdGotoSwitchboard = 1
Const conCmdOpenFormAdd = 2
Const conCmdOpenFormBrowse = 3
Const conCmdOpenReport = 4
Const conCmdCustomizeSwitchboard = 5
Const conCmdExitApplication = 6
Const conCmdRunMacro = 7
Const conCmdRunCode = 8
Const conCmdOpenPage = 9

' An error that is special cased.


Const conErrDoCmdCancelled = 2501

Dim con As Object


Dim rs As Object
Dim stSql As String

On Error GoTo HandleButtonClick_Err

' Find the item in the Switchboard Items table


' that corresponds to the button that was clicked.
Set con = Application.CurrentProject.Connection
Set rs = CreateObject("ADODB.Recordset")
stSql = "SELECT * FROM [Switchboard Items] "
stSql = stSql & "WHERE [SwitchboardID]=" & Me![SwitchboardID] & " AND [ItemNumber]=" & intBtn
rs.open stSql, con, 1 ' 1 = adOpenKeyset

' If no item matches, report the error and exit the function.
If (rs.EOF) Then
MsgBox "There was an error reading the Switchboard Items table."
rs.CLOSE
Set rs = Nothing
Set con = Nothing
Exit Function
End If

Select Case rs![Command]

' Go to another switchboard.


Case conCmdGotoSwitchboard
Me.Filter = "[ItemNumber] = 0 AND [SwitchboardID]=" & rs![Argument]
' Open a form in Add mode.
Case conCmdOpenFormAdd
DoCmd.OpenForm rs![Argument], , , , acAdd

' Open a form.


Case conCmdOpenFormBrowse
DoCmd.OpenForm rs![Argument]

' Open a report.


Case conCmdOpenReport
DoCmd.OpenReport rs![Argument], acPreview

' Customize the Switchboard.


Case conCmdCustomizeSwitchboard
' Handle the case where the Switchboard Manager
' is not installed (e.g. Minimal Install).
On Error Resume Next
Application.Run "ACWZMAIN.sbm_Entry"
If (Err <> 0) Then MsgBox "Command not available."
On Error GoTo 0
' Update the form.
Me.Filter = "[ItemNumber] = 0 AND [Argument] = 'Default' "
Me.Caption = Nz(Me![ItemText], "")
FillOptions

' Exit the application.


Case conCmdExitApplication
CloseCurrentDatabase

' Run a macro.


Case conCmdRunMacro
DoCmd.RunMacro rs![Argument]

' Run code.


Case conCmdRunCode
Application.Run rs![Argument]

' Open a Data Access Page


Case conCmdOpenPage
DoCmd.OpenDataAccessPage rs![Argument]

' Any other command is unrecognized.


Case Else
MsgBox "Unknown option."

End Select

' Close the recordset and the database.


rs.CLOSE

HandleButtonClick_Exit:
On Error Resume Next
Set rs = Nothing
Set con = Nothing
Exit Function

HandleButtonClick_Err:
' If the action was cancelled by the user for
' some reason, don't display an error message.
' Instead, resume on the next line.
If (Err = conErrDoCmdCancelled) Then
Resume Next
Else
MsgBox "There was an error executing the command.", vbCritical
Resume HandleButtonClick_Exit
End If

End Function

Private Sub Command22_Click()


On Error GoTo Err_Command22_Click

DoCmd.CLOSE

Exit_Command22_Click:
Exit Sub

Err_Command22_Click:
MsgBox Err.Description
Resume Exit_Command22_Click

End Sub
Private Sub Command23_Click()
On Error GoTo Err_Command23_Click

DoCmd.Quit

Exit_Command23_Click:
Exit Sub

Err_Command23_Click:
MsgBox Err.Description
Resume Exit_Command23_Click

End Sub

2. Query check appointments


Option Compare Database

Private Sub Command36_Click()


On Error GoTo Err_Command36_Click

DoCmd.PrintOut

Exit_Command36_Click:
Exit Sub

Err_Command36_Click:
MsgBox Err.Description
Resume Exit_Command36_Click

End Sub
Private Sub Command37_Click()
On Error GoTo Err_Command37_Click

DoCmd.CLOSE

Exit_Command37_Click:
Exit Sub

Err_Command37_Click:
MsgBox Err.Description
Resume Exit_Command37_Click

End Sub

3. Query Check Member ship

Option Compare Database

Private Sub Command16_Click()


On Error GoTo Err_Command16_Click

DoCmd.PrintOut

Exit_Command16_Click:
Exit Sub

Err_Command16_Click:
MsgBox Err.Description
Resume Exit_Command16_Click

End Sub
Private Sub Command17_Click()
On Error GoTo Err_Command17_Click

DoCmd.CLOSE

Exit_Command17_Click:
Exit Sub

Err_Command17_Click:
MsgBox Err.Description
Resume Exit_Command17_Click

End Sub

4. Form Visits
Option Compare Database
Private Sub Command18_Click()
On Error GoTo Err_Command18_Click

DoCmd.PrintOut

Exit_Command18_Click:
Exit Sub

Err_Command18_Click:
MsgBox Err.Description
Resume Exit_Command18_Click

End Sub
Private Sub Command19_Click()
On Error GoTo Err_Command19_Click

DoCmd.CLOSE

Exit_Command19_Click:
Exit Sub

Err_Command19_Click:
MsgBox Err.Description
Resume Exit_Command19_Click

End Sub

5. Form Emergencies
Option Compare Database

Private Sub Command12_Click()


On Error GoTo Err_Command12_Click

DoCmd.CLOSE

Exit_Command12_Click:
Exit Sub

Err_Command12_Click:
MsgBox Err.Description
Resume Exit_Command12_Click

End Sub
Private Sub Command13_Click()
On Error GoTo Err_Command13_Click

DoCmd.PrintOut

Exit_Command13_Click:
Exit Sub

Err_Command13_Click:
MsgBox Err.Description
Resume Exit_Command13_Click

End Sub

6. Form appointments
Option Compare Database

Private Sub close_Click()


On Error GoTo Err_close_Click

DoCmd.CLOSE

Exit_close_Click:
Exit Sub

Err_close_Click:
MsgBox Err.Description
Resume Exit_close_Click

End Sub
Private Sub print_Click()
On Error GoTo Err_print_Click

DoCmd.PrintOut

Exit_print_Click:
Exit Sub

Err_print_Click:
MsgBox Err.Description
Resume Exit_print_Click

End Sub

7. Form RHC members


Option Compare Database

Private Sub Command16_Click()


On Error GoTo Err_Command16_Click

DoCmd.CLOSE

Exit_Command16_Click:
Exit Sub

Err_Command16_Click:
MsgBox Err.Description
Resume Exit_Command16_Click

End Sub
Private Sub Command17_Click()
On Error GoTo Err_Command17_Click

DoCmd.PrintOut

Exit_Command17_Click:
Exit Sub

Err_Command17_Click:
MsgBox Err.Description
Resume Exit_Command17_Click

Option Compare Database

Private Sub Command18_Click()


On Error GoTo Err_Command18_Click

DoCmd.PrintOut

Exit_Command18_Click:
Exit Sub

Err_Command18_Click:
MsgBox Err.Description
Resume Exit_Command18_Click

End Sub
Private Sub Command19_Click()
On Error GoTo Err_Command19_Click

DoCmd.CLOSE

Exit_Command19_Click:
Exit Sub

Err_Command19_Click:
MsgBox Err.Description
Resume Exit_Command19_Click

End Sub
Private Sub Command22_Click()
On Error GoTo Err_Command22_Click

Dim stDocName As String


Dim stLinkCriteria As String

stDocName = "Table 2"


DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Command22_Click:
Exit Sub

Err_Command22_Click:
MsgBox Err.Description
Resume Exit_Command22_Click

End Sub

Dim stDocName As String


Dim stLinkCriteria As String

stDocName = "wanted cars"


DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_Command9_Click:
Exit Sub

Err_Command9_Click:
MsgBox Err.Description
Resume Exit_Command9_Click

End Sub

b) User Documentation

1. Getting started

Open Microsoft Access.

Go to the [file] menu on the left top of your program and choose [open]:
Choose the RHC clinic file, which is the database.

Once you have opened your database, the main switchboard should open
directly, since its set in the startup:
Now you’re ready and just about to start.

2. A patient arrives

The instant a patient arrives you wouldn’t like him to wait a lot, so immediately
click on the “new visits” button:

Directly the visits form will open in add mode:

To ensure that the patient is an RHC member, do the following

• Run the query from any of the several “check membership buttons:
• Enter the requested employee’s number (0002 for example):

• The information of that member will be retrieved, (if he’s not a member an
empty form will appear):

You do not need to run the query for every patient, but it is advisable for suspicious
patients.

If the patient proved to be a member, fill the form with all the required fields:
3. Patient requests an appointment

If a patient requests an appointment for a reason or an other click on the button


labeled “New Appointment”

This will open up the appointments form in the add mode:


Again run the “check membership” query only if the patient looks suspicious. Fill
in the form and close it.

Note: the button closes the form.

4. An emergency case:

When a casualty arrives through the emergency gate, he should first receive
treatment then a record should be added to the emergencies table. Click on the
button labeled “A new emergency case”:

The following form will open in add mode, fill it then close it.
5. Search for today’s appointments

To create a list of the day’s appointments, click on the button labeled “View
today’s appointments”.

The form will run and view all of the day’s appointments in a form. Here is an
example:

6. Addition of a record to the RHC members table


The rite to take this action is reserved for only the clinic’s administration having
taken orders from the head office of Ruwais Housing Division Department.
This occurs only in the unlikely event of having a new employee joining.

To add a member, on the main switchboard, click on the button labeled “A new
RHC member (administration only”.

The RHC members form should open in the add mode.

Fill in the form and close the button

Now, you have all the required knowledge to run and use the program completely
6. System Evaluation and Development

a) System Evaluation

o Objective 1:
A complete database of RHC residence is kept.
o Objective 2:
A database of all the patients is kept.
o Objective 3:
Automatic searching is fast and accurate.
o Objective 5:
The new system is secure and fast.
o Objective 6:
The new system is of a low price and helps to allocate resources efficiently.
o Objective 7:
Data is validated and verified upon input.
o Objective 8:
Data loss is prevented
o Objective 9:
Data input is vastly improved

In overall the system is good and it fits the problem and accomplishes the
objectives.

b) System Development

⇒ Security could be enhanced by adding a password to the RHC members


table.
⇒ A picture could be added to the RHC members to ensure the patient’s
membership.
⇒ The database could be installed on a central computer and be used by
many terminals to allow the doctor to fill fields as diagnosis, assigned
medicine and medical state; for typing mistakes avoidance.
⇒ Further tests could be carried out to ensure that every little bit of the
program performs as desired.

Vous aimerez peut-être aussi