Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 33

6.

Technical Documentation

Overview of System
This program has been produced to solve the various
problems which are experienced by the Green Cross
Medical Laboratory. The construction of this program has
started in the year 2009 when the owner of the club
realises that it is the best way to solve the problems of a
manual system.
This program has been made on Microsoft Visual
FoxPro 6.0. For this program to work properly many
hardware and software are needed.

The hardware requirements are as follows:


Keyboard: to key-in details
Mouse: to make selections as well to move the cursor.
Monitor: to display details
Printer: To print required forms. As discussed earlier the
laser printer has been chosen.
Hard disk drive: To save in the required programs.
Floppy disc drive: Use as a backing store to make copy of
important files.
CD-ROM: Used as a backing store.
Microprocessor: It is a chip used to store information. We
will be using Pentium4.

The software requirements are as follows:


Operating systems: Manages system security and helps
user to communicate with the computer. It also controls
the hardware directly. Windows Vista has been proposed.
Utility programs:
Needed for small tasks such as
deleting and copying files. It also consists of antivirus
program.
Applications software:
It is needed to type in letter. It
consists of Word processing programs.
Microsoft Visual FoxPro 6.0:
and run on this program.

The program will be written

List of Programs
FILE NAME

MAIN_MENU.PRG
system.

PURPOSE

This program will create the main menu of the

MEMBER_MENU.PRG

With this program it will be possible to add a


member record, delete a record or amend it.

ADD_MEMBER .PRG
member

This is the add member menu in which a


record could be added various details about

the
member would have to be filled.

DELETE_MEMBER .PRG

It will be possible to delete a member record with


this
program.

AMMEND_MEMBER .PRG
member.

FILM_MENU.PRG
add,

This screen is used to modify the details on a

This is the film menu where various change such as


delete or ammend could be done with the films

records.

ADD_FILM.PRG

This is the screen in which we can add a film.

DELETE_FILM.PRG

In this we will be able to delete a film record.

AMMEND_FILM.PRG

In this we will be able to amend a film record.

TRANSACTIONS_MENU.PRG
transactions

This

is

the

transactions

where

the

main

occurring that is renting and returning of films


could
be dealt with.

RENTING_MENU.PRG
procedures

This is the renting menu where the various


while renting a film occur.

RETURNIN.PRG
performed

It shows the various steps the clerks have to


while a member is returning a film.

REPORTS_MENU.PRG
thedemand

It is where reports could be done according to


of the user.

REP_FILM_MENU.PRG:

REP_ID.PRG

REP_LANGUAGE.PRG
the

Reports about a film can be made.

Report about a film with a specific id.

Report on film with a specific language according to


choice of the user.

REP_MEDIA.PRG

Report on film on a specific medium e.g CD

REP_TYPE.PRG

Report on film of a particular type e.g fiction

REP_MEMBER_MENU.PRG
program.

Report on members can be obtained from this

REP_NAME.PRG

Report on members with a particular name.

REP_SURNAME.PRG

Report on members of the club having the same


surname.

1.1 LIST OF FILES


FILE NAME

MEMBER.DBF

PURPOSE

It is used to keep details such as member id,

name,
surname, address, date of birth, telephone
number
about members.

FILMS.DBF

This file is used to store details on films such

as its
language, media, film code, title of film and
its
producer.

TRANSACTIONS.DBF
transactions

This file will be used to deal with the


such as renting and returning of films

occurring in
the club.

1.2 FILES STRUCTURE


1.MEMBER.DBF
Number of records as at 12.04.05:35
Last modification: 20.03.05
The figure below shows the structure of the file MEMBER.DBF

2.FILMS.DBF
No of records as at 12.04.05: 40
Date of last update:05.03.05
The figure below shows the structure of the file FILMS.DBF

System Flowchart For The Computerised System

Add Test

New test
registratio
n

Key in test
number

Validate

Key in test
details

Update test
file

Correct
errors

Error
messag
es

Updated test file

Add Patient
New
patient
registration

Key in
patient
number

Validate

Correct
errors

Error
messag
es

Key in
patient
details

Update
patient file

Updated patient file

Edit Test

Input test
no

Test file

Detail
s on
test

Change
details

Updated test file

Edit Patient

Input
patient no

Patient file

Details
on
patient

Change
details

Updated patient file

Delete Test

Input test
no

Validate

Test file

Correct
errors

Error
messa
ge

Show
details
on test

Delete
record

Updated test file

Delete Patient

Input
patient no

validate

Patient file

Correct
errors

Error
messa
ge

Show
details
on
patient

Delete
record

Updated patient file

Report on Tests

Input
film_no

validate
Film file

On all films

Reports on Patients
Input
member_no

validate
Member

On all
members

file

1.3 PROGRAM LISTINGS


MAIN_MENU.PRG
*PROGRAMS NAME:MAIN_MENU.PRG
*PROGRAMS OBJECTIVES:TO CREATE A MAIN_MENU
*DATE CREATED:01.01.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
MCHOICE=0
@4,19 SAY "JAHAN VIDEO CLUB"
@5,23 SAY "MAIN MENU"
@6,2 TO 6,60
@8,3 SAY "1.MEMBER MENU"
@10,3 SAY "2.FILM MENU"
@12,3 SAY "3.TRANSACTIONS"
@14,3 SAY "4.REPORTS AND QUERIES"
@16,3 SAY "5.EXITING SYSTEM"
@18,3 SAY "ENTER CHOICE" GET MCHOICE
READ
*BY PRESSING NUMBERS
DO CASE
CASE MCHOICE=1
DO MEMBER_MENU
CASE MCHOICE=2
DO FILM_MENU
CASE MCHOICE=3
DO TRANSACTIONS_MENU
CASE MCHOICE=4
DO REPORTS_MENU
CASE MCHOICE=5
CANCEL
ENDCASE
FILM_MENU.PRG
*PROGRAMS NAME:FILM_MENU.PRG
*PROGRAMS OBJECTIVES:TO CREATE A FILM_MENU
*DATE CREATED:14.01.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMATTING SCREEN
CLEAR
@2,2 TO 25,60
MCHOICE=1
@4,20 SAY "JAHAN VIDEO CLUB"
@5,24 SAY "FILM MENU"
@8,3 SAY "1.ADD A NEW FILM RECORD"
@10,3 SAY "2.DELETE A FILM RECORD"
@12,3 SAY "3.AMMEND A FILM RECORD"
@14,3 SAY "4.EXITING TO MAIN MENU"
@20,3 SAY "ENTER CHOICE" GET MCHOICE
READ
*BY PRESSING NUMBERS
DO CASE
CASE MCHOICE=1
DO ADD_FILM

CASE MCHOICE=2
DO DELETE_FILM
CASE MCHOICE=3
DO AMMEND_FILM
CASE MCHOICE=4
DO MAIN_MENU
ENDCASE
ADD_FILM.PRG
*PROGRAMS NAME:ADD_FILM.PRG
*PROGRAMS OBJECTIVES:TO ADD A FILM
*DATE CREATED:01.02.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
*INITIALISING VARIABLES
MDATE=DATE()
MFILM_NO=SPACE(5)
MTITLE=SPACE(30)
MPRODUCER=SPACE(20)
MLANGUAGE=SPACE(1)
MTYPE=SPACE(1)
MMEDIA=SPACE(2)
MSAVE=SPACE(1)
MREG=SPACE(1)
MRETRY=SPACE(1)
*FORMAT SCREEN
@2,2 TO 30,70
@3,26 SAY "JAHAN VIDEO CLUB"
@4,27 SAY "ADD A NEW FILM"
@6,50 SAY "DATE" GET MDATE
*USE FILM_NO VARIABLE TO DETECT IF FILM_NO ALREADY EXIST
@8,3 SAY "FILM_NO"
@8,20 GET MFILM_NO
READ
USE FILMS
LOCATE FOR MFILM_NO=FILM_NO
IF FOUND()
@10,3 SAY "FILM_NO ALREADY EXISTS"
@12,3 SAY "RETRY (Y/N)" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO ADD_FILM
ELSE
DO FILM_MENU
ENDIF
ELSE
@10,3 SAY "TITLE"
@10,20 GET MTITLE
@12,3 SAY "PRODUCER"
@12,20 GET MPRODUCER
@14,3 SAY "LANGUAGE"
@14,20 GET MLANGUAGE
@16,3 SAY "(E-ENGLISH, F-FRENCH,H-HINDI,C-CREOLE,A-ARABIC)"
@18,3 SAY "TYPE"
@18,20 GET MTYPE
@20,3 SAY "(D-DRAMATIC, C-COMEDY,R-ROMANCE,A-ACTION,F-FICTION)"
@22,3 SAY "MEDIA OF FILM"
@22,20 GET MMEDIA
@24,3 SAY "CD-CD,CS-CASSETTE,DV-DVD"

@26,3 SAY "SAVE RECORD(Y/N)" GET MSAVE


@28,3 SAY "ANOTHER REGISTRATION" GET MREG
ENDIF
READ
IF UPPER(MSAVE)= "Y"
USE FILMS
APPEND BLANK
REPLACE FILM_NO WITH MFILM_NO
REPLACE TITLE WITH MTITLE
REPLACE PRODUCER WITH MPRODUCER
REPLACE LANGUAGE WITH MLANGUAGE
REPLACE TYPE WITH MTYPE
REPLACE MEDIA WITH MMEDIA
ENDIF
IF UPPER(MREG)="Y"
DO ADD_FILM
ELSE
DO FILM_MENU
ENDIF
AMMEND_FILM.PRG
*PROGRAMS NAME:AMMEND_FILM.PRG
*PROGRAMS OBJECTIVES:TO AMMEND A FILM RECORD
*DATE CREATED:19.02.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
Clear
*INITIALISING THE VARIABLES
MDATE=DATE()
MFILM_NO=space(5)
MTITLE=SPACE(30)
MPRODUCER=SPACE(20)
MLANGUAGE=SPACE(1)
MTYPE=SPACE(1)
MMEDIA=SPACE(1)
MANO=SPACE(1)
*FORMAT SCREEN
@2,2 TO 30,70
@4,18 SAY "MODIFICATION OF FILM RECORD"
@6,50 SAY "DATE" GET MDATE
@8,3 SAY "FILM_NO"
@8,20 GET MFILM_NO
READ
USE FILMS
LOCATE FOR MFILM_NO=FILM_NO
IF.NOT.FOUND()
@10,3 SAY "FILM_NO DOES NOT EXIST"
@12,3 SAY "ANOTHER MODIFICATION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO AMMEND_FILM
ELSE
RETURN
ENDIF
ELSE
@10,3 SAY "TITLE"
@12,3 SAY "PRODUCER"
@14,3 SAY "LANGUAGE"
@16,3 SAY "(E-ENGLISH, F-FRENCH,H-HINDI,C-CREOLE,A-ARABIC)"
@18,3 SAY "TYPE"

@20,3 SAY "(D-DRAMATIC, C-COMEDY,R-ROMANCE,A-ACTION,F-FICTION)"


@22,3 SAY "MEDIA"
@24,3 SAY "CD-CD,CS-CASSETTE,DV-DVD"
@10,20 GET TITLE
@12,20 GET PRODUCER
@14,20 GET LANGUAGE
@18,20 GET TYPE
@22,20 GET MEDIA
ENDIF
READ
USE FILMS
LOCATE FOR MTITLE=TITLE
IF.NOT.FOUND()
REPLACE TITLE WITH MTITLE
ENDIF
LOCATE FOR MPRODUCER=PRODUCER
IF.NOT.FOUND()
REPLACE PRODUCER WITH MPRODUCER
ENDIF
LOCATE FOR MLANGUAGE=LANGUAGE
IF.NOT.FOUND()
REPLACE LANGUAGE WITH MLANGUAGE
ENDIF
LOCATE FOR MTYPE=TYPE
IF.NOT.FOUND()
REPLACE TYPE WITH MTYPE
ENDIF
LOCATE FOR MFILM_NO=FILM_NO
IF.NOT.FOUND()
REPLACE FILM_NO WITH MFILM_NO
ENDIF
LOCATE FOR MMEDIA=MEDIA
IF.NOT.FOUND()
REPLACE MEDIA WITH MMEDIA
ENDIF
@26,3 SAY "ANOTHER MODIFICATION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO AMMEND_FILM
ELSE
DO FILM_MENU
ENDIF

DELETE_FILM.PRG
*PROGRAMS NAME:DELETE_FILM.PRG
*PROGRAMS OBJECTIVES:TO DELETE A FILM RECORD
*DATE CREATED:25.02.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
Clear
*INITIALISING THE VARIABLES
MDATE=DATE()
MFILM_NO=space(5)
MDEL=SPACE(1)
MANO=SPACE(1)

*FORMAT SCREEN
@2,2 TO 25,60
@3,20 SAY "JAHAN VIDEO CLUB"
@4,16 SAY "DELETION OF A FILM RECORD"
@6,35 SAY "DATE" GET MDATE
@8,3 SAY "FILM_NO"
@10,3 SAY "TITLE"
@12,3 SAY "PRODUCER"
@14,3 SAY "LANGUAGE"
@16,3 SAY "MEDIA"
@8,20 GET MFILM_NO
READ
USE FILMS
LOCATE FOR MFILM_NO=FILM_NO
IF.NOT.FOUND()
@18,3 SAY "FILM_NO DOES NOT EXIST"
ELSE
@10,20 SAY TITLE
@12,20 SAY PRODUCER
@14,20 SAY LANGUAGE
@16,20 SAY MEDIA
@18,3 SAY "DELETE RECORD(Y/N)" GET MDEL
READ
IF UPPER(MDEL)="Y"
Delete
PACK
ENDIF
ENDIF
@20,3 SAY "ANOTHER DELETION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO DELETE_FILM
ELSE
DO FILM_MENU
ENDIF
MEMBER_MENU.PRG
*PROGRAMS NAME:MEMBER_MENU.PRG
*PROGRAMS OBJECTIVES:TO CREATE A MEMBER MENU
*DATE CREATED:28.02.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
MCHOICE=0
@4,19 SAY "JAHAN VIDEO CLUB"
@5,17 SAY "MEMBER'S MAIN MENU"
@8,3 SAY "1.ADD A NEW MEMBER"
@10,3 SAY "2.DELETE A MEMBER RECORD"
@12,3 SAY "3.AMMEND A MEMBER RECORD"
@14,3 SAY "4.EXITING TO MAIN MENU"
@20,3 SAY "ENTER CHOICE" GET MCHOICE
READ
*BY PRESSING NUMBERS
DO CASE
CASE MCHOICE=1
DO ADD_MEMBER
CASE MCHOICE=2
DO DELETE_MEMBER

CASE MCHOICE=3
DO AMMEND_MEMBER
CASE MCHOICE=4
DO MAIN_MENU
ENDCASE
ADD_MEMEBER.PRG
*PROGRAMS NAME:ADD_MEMBER.PRG
*PROGRAMS OBJECTIVES:TO ADD A MEMBER RECORD
*DATE CREATED:01.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMATTING SCREEN
CLEAR
*INITIALISING VARIABLES
MDATE=DATE()
MMEMBERID=SPACE(5)
MSURNAME=SPACE(15)
MNAME=SPACE(15)
MADDRESS=SPACE(30)
MNUM1=SPACE(7)
MDATEOFBIRTH= CTOD(SPACE(11))
MSAVE=SPACE(1)
MREG=SPACE(1)
MRETRY=SPACE(1)
*FORMAT SCREEN
@2,2 TO 25,60
@3,22 SAY "JAHAN VIDEO CLUB"
@4,21 SAY "ADD A NEW MEMBER"
@5,2 TO 5,60
@6,35 SAY "DATE" GET MDATE
*USE THE MEMBER_ID VARIABLE
@8,3 SAY "MEMBER_ID"
@8,20 GET MMEMBERID
READ
USE MEMBER
LOCATE FOR MMEMBERID=MEMBER_ID
IF FOUND()
@10,3 SAY "MEMBER_ID ALREADY EXISTS"
@12,3 SAY "RETRY (Y/N)" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO ADD_MEMBER
ELSE
DO MEMBER_MENU
ENDIF
ELSE
@10,3 SAY "NAME"
@10,20 GET MNAME
@12,3 SAY "SURNAME"
@12,20 GET MSURNAME
@14,3 SAY "ADDRESS"
@14,20 GET MADDRESS
@16,3 SAY "TELEPHONE"
@16,20 GET MNUM1
@18,3 SAY "DATE OF BIRTH"
@18,20 GET MDATEOFBIRTH
READ
@20,3 SAY "PEOPLE UNDER 18 ARE NOT ALLOWED TO BECOME MEMBER"
@22,3 SAY "ANOTHER REGISTRATION"GET MREG

@20,3 SAY "SAVE RECORD(Y/N)" GET MSAVE


@22,3 SAY "ANOTHER REGISTRATION" GET MREG
ENDIF
READ
IF UPPER(MSAVE)= "Y"
USE MEMBER
APPEND BLANK
REPLACE MEMBER_ID WITH MMEMBERID
REPLACE SURNAME WITH MSURNAME
REPLACE NAME WITH MNAME
REPLACE ADDRESS WITH MADDRESS
REPLACE TEL_NO WITH MNUM1
REPLACE DOB WITH MDATEOFBIRTH
ENDIF
IF UPPER(MREG)="Y"
DO ADD_MEMBER
ELSE
DO MEMBER_MENU
ENDIF
AMMEND_MEMBER.PRG
*PROGRAMS NAME:AMMEND_MEMBER.PRG
*PROGRAMS OBJECTIVES:TO MODIFY A MEMBER RECORD
*DATE CREATED:02.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
Clear
*INITIALISING THE VARIABLES
MDATE=DATE()
MMEMBER_ID=space(5)
MSURNAME=SPACE(15)
MNAME=SPACE(15)
MADDRESS=SPACE(15)
MNUM1=SPACE(7)
MDATEOFBIRTH=CTOD(SPACE(11))
MANO=SPACE(1)
*FORMAT SCREEN
@2,2 TO 25,60
@4,11 SAY "MODIFICATION OF MEMBER RECORD"
@6,35 SAY "DATE" GET MDATE
@8,3 SAY "MEMBER_ID"
@8,20 GET MMEMBER_ID
READ
USE MEMBER
*USE MEMBER_ID TO IDENTIFY MEMBERS RECORD
LOCATE FOR MMEMBER_ID=MEMBER_ID
IF.NOT.FOUND()
@10,3 SAY "MEMBER ID DOES NOT EXIST"
@12,3 SAY "ANOTHER MODIFICATION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO AMMEND_MEMBER
ELSE
RETURN
ENDIF
ELSE
@10,3 SAY "NAME"
@12,3 SAY "SURNAME"
@14,3 SAY "ADDRESS"
@16,3 SAY "TELEPHONE"

@10,20 GET NAME


@12,20 GET SURNAME
@14,20 GET ADDRESS
@16,20 GET TEL_NO
ENDIF
READ
USE MEMBER
LOCATE FOR MNAME=NAME
IF.NOT.FOUND()
REPLACE NAME WITH MNAME
ENDIF
LOCATE FOR MSURNAME=SURNAME
IF.NOT.FOUND()
REPLACE SURNAME WITH MSURNAME
ENDIF
LOCATE FOR MADDRESS=ADDRESS
IF.NOT.FOUND()
REPLACE ADDRESS WITH MADDRESS
ENDIF
LOCATE FOR MNUM1=TEL_NO
IF.NOT.FOUND()
REPLACE TEL_NO WITH MNUM1
ENDIF
LOCATE FOR MMEMBER_ID=MEMBER_ID
IF.NOT.FOUND()
REPLACE ID WITH MMEMBER_ID
ENDIF
@18,3 SAY "ANOTHER MODIFICATION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO AMMEND_MEMBER
ELSE
DO MEMBER_MENU
ENDIF
DELETE_MEMBER.PRG
*PROGRAMS NAME:DELETE _MEMBER.PRG
*PROGRAMS OBJECTIVES:TO DELETE A MEMBER RECORD
*DATE CREATED:04.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
Clear
*INITIALISING THE VARIABLES
MDATE=DATE()
MMEMBER_ID=space(5)
MDEL=SPACE(1)
MANO=SPACE(1)
*FORMAT SCREEN
@2,2 TO 25,60
@4,16 SAY "DELETION OF A MEMBER RECORD"
@6,35 SAY "DATE" GET MDATE
@8,3 SAY "MEMBER_ID"
@10,3 SAY "NAME"
@12,3 SAY "SURNAME"
@8,20 GET MMEMBER_ID
READ
USE MEMBER
LOCATE FOR MMEMBER_ID=MEMBER_ID
IF.NOT.FOUND()
@14,3 SAY "MEMBER_ID DOES NOT EXIST"

ELSE

@10,20 SAY NAME


@12,20 SAY SURNAME
@16,3 SAY "DELETE RECORD(Y/N)" GET MDEL
READ
IF UPPER(MDEL)="Y"
Delete
PACK

ENDIF
ENDIF
@18,3 SAY "ANOTHER DELETION(Y/N)" GET MANO
READ
IF UPPER(MANO) ="Y"
DO DELETE_MEMBER
ELSE
DO MEMBER_MENU
ENDIF
TRANSACTIONS_MENU
*PROGRAMS NAME:TRANSACTIONS_MENU.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH THE TRANSACTIONS IN THE CLUB
*DATE CREATED:07.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*formatting screen
CLEAR
@2,2 TO 25,60
@3,21 SAY "JAHAN VIDEO CLUB"
@5,18 SAY "TRANSACTIONS SCREEN"
@6,2 TO 6,60
*INITIALISING VARIABLES
MDATE=DATE()
MCHOICE=0
*FORMAT SCREEN
@8,3 SAY "1.RENTING FILMS"
@10,3 SAY "2.RETURNING FILMS"
@12,3 SAY "3.BACK TO MAIN_MENU"
@14,3 SAY "4.EXIT SYSTEM"
@16,3 SAY "ENTER CHOICE"GET MCHOICE
READ
*ENTER CHOICE
DO CASE
CASE MCHOICE=1
DO renting_new
CASE MCHOICE=2
DO RETURNING
CASE MCHOICE=3
DO MAIN_MENU
CASE MCHOICE=4
CANCEL
ENDCASE
RENTING_NEW.PRG
*PROGRAMS NAME:RENTING_NEW.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH RENTAL TRANSACTIONS IN THE CLUB
*DATE CREATED:10.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
CLEAR
*INITIALISE VARIABLES

mdate=Date()
MMEMBER_ID=space(5)
mtitle=space(30)
mPRODUCER=space(30)
msurname=space(20)
mname=space(20)
msave=(space(1))
mreg=(space(1))
mrdate=Date()+14
MFILM_NO=space(5)
MRETRY=SPACE(1)
*FORMAT SCREEN
@ 2,2 TO 36,60
@4,18 say "RENTING OF A FILM"
@6,35 SAY "DATE" GET MDATE
@8,3 say "MEMBER_ID"
@8,20 get MMEMBER_ID
READ
*SEE IN MEMBER_ID EXIST
USE MEMBER.DBF
LOCATE FOR MMEMBER_ID=MEMBER_ID
IF.NOT.FOUND()
@14,3 SAY "MEMBER_ID DOES NOT EXIST"
@16,3 SAY "RETRY(Y/N)" GET MRETRY
read
IF UPPER(MRETRY)="Y"
DO RENTING_MENU
ELSE
DO MAIN_MENU
ENDIF
ELSE
@10,3 say "SURNAME"
@10,20 SAY SURNAME
@12,3 SAY "NAME"
@12,20 SAY NAME
@14,3 SAY "FILM_NUMBER" get mfilm_no
READ
USE FILMS.DBF
LOCATE FOR MFILM_NO=FILM_NO
IF.NOT.FOUND()
@16,3 SAY "FILM_NO DOESN'T EXIST"
@18,3 SAY "RETRY(Y/N)" GET MRETRY
IF UPPER(MRETRY)="Y"
DO RENTING_MENU
ELSE
DO MAIN_MENU
ENDIF
else
use films
locate for Mfilm_no=film_no
@16,3 SAY "TITLE"
@16,20 SAY TITLE
@18,3 say "DATE_TAKEN"
@18,20 GET mdate
@20,3 say "DATE DUE"
@20,20 get mrdate
@22,3 say "DO YOU WANT TO RENT?Y/N?"get msavE
read
IF upper(msave)="Y"
use transactions
APPEND BLANK

replace member_id with mmember_id


REPLACE FILM_NO WITH MFILM_NO
REPLACE date_taken WITH mdate
replace date_due with MRdate
else

@12,3 SAY "FILM_NO DOES NOT EXIST"


@14,3 SAY "RETRY(Y/N)" GET MRETRY

ENDIF
@24,3 say "ANOTHER RENTING(Y/N)" get mreg
read
IF upper(mreg)="Y"
do RENTING_MENU
else
clear
do transactions_menu
endif
RETURNING.PRG
*PROGRAMS NAME:RETURNIN.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH RENTAL TRANSACTIONS IN THE CLUB
*DATE CREATED:13.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMATTING SCREEN
CLEAR
@2,2 TO 25,60
@4,21 SAY "RETURNING FILMS"
*INITIALISING VARIABLES
MDATE=DATE()
MDATETAKEN=DATE()
MMEMBER_ID=SPACE(5)
MFILM_NO1=SPACE(5)
MDATEDUE=DATE()
MRETRY=SPACE(1)
MINPUT=SPACE(1)
MANO=SPACE(1)
*FORMAT SCREEN
@6,35 SAY "DATE" GET MDATE
@8,3 SAY "MEMBER_ID"
@8,20 GET MMEMBER_ID
READ
USE TRANSACTIONS
LOCATE FOR MMEMBER_ID=MEMBER_ID
LOCATE FOR MMEMBER_ID=MEMBER_ID
IF FOUND()
@10,3 SAY "FILM_NO"GET FILM_NO
@12,3 SAY "DATE TAKEN"GET DATE_TAKEN
@14,3 SAY "DATE_DUE" GET DATE_DUE
@16,3 SAY "RETURN FILM(Y/N)?" GET MINPUT
READ
ELSE
@10,3 SAY "MEMBER_ID DOES NOT EXIST"
@12,3 SAY "RETRY(Y/N)" GET MRETRY
READ
IF UPPER(MRETRY)= "Y"
DO RETURNIN
ELSE
DO MAIN_MENU

IF UPPER(MINPUT)="Y"
DELETE
PACK

ENDIF
@20,3 SAY "ANOTHER RETURNING PROCESS(Y/N)?" GET MANO
READ
IF UPPER(MANO)="Y"
DO RETURNIN
ELSE
DO MAIN_MENU
ENDIF
REPORTS_MENU.PRG
*PROGRAMS NAME:REPORTS_MENU.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH REPORTS AND QUERIES
*DATE CREATED:16.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
CLEAR
@2,2 TO 25,60
*INITIALISING VARIABLES
MDATE=DATE()
MCHOICE=0
*FORMAT SCREEN
@4,19 SAY "JAHAN VIDEO CLUB"
@6,15 SAY "REPORTS_MENU AND QUERIES"
@8,3 SAY "1.ABOUT FILMS"
@10,3 SAY "2.ABOUT MEMBERS"
@12,3 SAY "3.ON OVERDUE FILMS"
@14,3 SAY "4.BACK TO MAIN_MENU"
@16,3 SAY "ENTER CHOICE"
@16,20 GET MCHOICE
READ
DO CASE
CASE MCHOICE=1
DO REP_FILM_MENU
CASE MCHOICE=2
DO REP_MEMBER_MENU
CASE MCHOICE=3
USE TRANSACTIONS
REPO FORM REP_OVERDUE FOR DATE_DUE<MDATE PREVIEW
CASE MCHOICE=4
DO MAIN_MENU
ENDCASE
REP_FILM_MENU
*PROGRAMS NAME:REP_FILM_MENU.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH REPORTS CONCERNING FILMS
*DATE CREATED:18.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*CLEAR SCREEN
CLEAR
*FORMAT SCREEN
@2,2 TO 25,60
@4,19 SAY "JAHAN VIDEO CLUB"
@6,18 SAY "REPORTS ABOUT FILMS"
@8,3 SAY "1.ON ALL FILMS"
@10,3 SAY "2.ABOUT A SPECIFIC FILM_NO"

@12,3 SAY "3.ABOUT A SPECIFIC LANGUAGE"


@14,3 SAY "4.ABOUT A SPECIFIC MEDIA"
@16,3 SAY "5.ABOUT A SPECIFIC TYPE"
@18,3 SAY "6.BACK TO REPORTS AND QUERIES MENU"
@20,3 SAY "7.BACK TO MAIN MENU"
MCHOICE=0
USE FILMS
@22,3 SAY "ENTER CHOICE" GET MCHOICE
READ
DO CASE
CASE MCHOICE=1
REPO FORM REP_FILM PREVIEW
CASE MCHOICE=2
DO REP_NO
CASE MCHOICE=3
DO REP_LANGUAGE
CASE MCHOICE=4
DO REP_MEDIA
CASE MCHOICE=5
DO REP_TYPE
CASE MCHOICE=7
DO MAIN_MENU
CASE MCHOICE=6
DO REPORTS_MENU
ENDCASE
REP_NO.PRG
*PROGRAMS NAME:REP_NO.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH FILMS WITH A SPECIFIC NO
*DATE CREATED:18.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*PROGRAMS NAME:REP_NO.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH FILMS WITH A SPECIFIC NO
*DATE CREATED:18.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEEN
CLEAR
@2,2 TO 25,60
@4,19 SAY "JAHAN VIDEO CLUB"
@6,18 SAY "REPORTS ABOUT FILMS"
@8,3 SAY "ENTER FILM_NO"
MFILM_NO=SPACE(5)
@8,20 GET MFILM_NO
READ
USE FILMS
LOCATE FOR FILM_NO=UPPER(MFILM_NO)
MRETRY=SPACE(1)
IF.NOT.FOUND()
@12,3 SAY "FILM_NO DOESN'T EXIST"
@14,3 SAY "RETRY(Y/N)?" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO REP_NO
ELSE
DO MAIN_MENU
ENDIF
ELSE
REPO FORM REP_FILM FOR FILM_NO=MFILM_NO PREVIEW
ENDIF

REP_LANGUAGE.PRG
*PROGRAMS NAME:REP_NO.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH FILMS WITH A SPECIFIC NO
*DATE CREATED:18.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
MLANGUAGE=SPACE(1)
@4,19 SAY "JAHAN VIDEO CLUB"
@6,18 SAY "REPORTS ABOUT FILMS"
@10,3 SAY "E-ENGLISH, F-FRENCH,H-HINDI,C-CREOLE,A-ARABIC"
@8,3 SAY "ENTER LANGUAGE CODE" GET MLANGUAGE
READ
USE FILMS
LOCATE FOR LANGUAGE=UPPER(MLANGUAGE)
MRETRY=SPACE(1)
IF.NOT.FOUND()
@12,3 SAY "LANGUAGE CODE DOESN'T EXIST"
@14,3 SAY "RETRY(Y/N)?" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO REP_LANGUAGE
ELSE
DO MAIN_MENU
ENDIF
ELSE
REPO FORM REP_FILM FOR LANGUAGE=MLANGUAGE
ENDIF
REP_MEDIA.PRG
*PROGRAMS NAME:REP_MEDIA.PRG
*PROGRAMS OBJECTIVES:TO DEAL WITH FILMS WITH A SPECIFIC MEDIA TYPE
*DATE CREATED:19.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
MMEDIA=SPACE(2)
@4,19 SAY "JAHAN VIDEO CLUB"
@6,18 SAY "REPORTS ABOUT FILMS"
@10,3 SAY "CD-CD,CS-CASSETTE,DV-DVD"
@8,3 SAY "ENTER MEDIA CODE" GET MMEDIA
READ
USE FILMS
LOCATE FOR MEDIA=UPPER(MMEDIA)
MRETRY=SPACE(1)
IF.NOT.FOUND()
@12,3 SAY "MEDIA CODE DOESN'T EXIST"
@14,3 SAY "RETRY(Y/N)?" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO REP_MEDIA
ELSE
DO MAIN_MENU
ENDIF
ELSE
REPO FORM REP_FILM FOR MEDIA=MMEDIA

ENDIF
REP_MEMBER_MENU
*PROGRAMS NAME:REP_MEMBER_MENU.PRG
*PROGRAMS OBJECTIVES:TO PRODUCE REPORTS ABOUT MEMBERS
*DATE CREATED:20.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
MCHOICE=0
@2,2 TO 25,60
@4,19 SAY "JAHAN VIDEO CLUB"
@6,16 SAY "REPORTS ABOUT MEMBERS"
@8,3 SAY "1.ON ALL MEMBERS"
@10,3 SAY "2.ABOUT SPECIFIC NAME"
@12,3 SAY "3.ABOUT SPECIFIC SURNAME"
@14,3 SAY "4.BACK TO REPORTS AND QUERIES MENU"
@16,3 SAY "5.BACK TO MAIN MENU"
@18,3 SAY "ENTER CHOICE" GET MCHOICE
READ
USE MEMBER
DO CASE
CASE MCHOICE=1
REPO FORM REP_MEMBER PREVIEW
CASE MCHOICE=2
DO REP_NAME
CASE MCHOICE=3
DO REP_SURNAME
CASE MCHOICE=5
DO MAIN_MENU
CASE MCHOICE=4
DO REPORTS_MENU
ENDCASE
REP_SURNAME.PRG
*PROGRAMS NAME:REP_SURNAME.PRG
*PROGRAMS OBJECTIVES:REPORTS ABOUT MEMBERS WITH A SPECIFIC SURNAME
*DATE CREATED:20.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
@4,19 SAY "JAHAN VIDEO CLUB"
@6,16 SAY "REPORTS ABOUT MEMBERS"
@8,3 SAY "ENTER MEMBER SURNAME"
*INITIALISING VARIABLES
MSURNAME=SPACE(20)
@10,3 GET MSURNAME
READ
USE MEMBER
LOCATE FOR SURNAME=UPPER(MSURNAME)
MRETRY=SPACE(1)
IF.NOT.FOUND()
@12,3 SAY "SURNAME DOESN'T EXIST"
@14,3 SAY "RETRY(Y/N)?" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO REP_SURNAME

ELSE

DO MAIN_MENU

ENDIF
ELSE
USE MEMBER
REPO FORM REP_MEMBER FOR SURNAME=UPPER(MSURNAME) PREVIEW
ENDIF
REP_NAME.PRG
*PROGRAMS NAME:REP_NAME.PRG
*PROGRAMS OBJECTIVES:REPORTS ABOUT MEMBERS WITH A SPECIFIC NAME
*DATE CREATED:23.03.05
*PROGRAMMERS NAME:JAHAN AARA ISMAIL
*FORMAT SCREEN
CLEAR
@2,2 TO 25,60
@4,19 SAY "JAHAN VIDEO CLUB"
@6,16 SAY "REPORTS ABOUT MEMBERS"
@8,3 SAY "ENTER MEMBER NAME"
MNAME=SPACE(20)
@10,3 GET MNAME
READ
USE MEMBER
LOCATE FOR NAME=UPPER(MNAME)
MRETRY=SPACE(1)
IF.NOT.FOUND()
@12,3 SAY "NAME DOESN'T EXIST"
@14,3 SAY "RETRY(Y/N)?" GET MRETRY
READ
IF UPPER(MRETRY)="Y"
DO REP_NAME
ELSE
DO MAIN_MENU
ENDIF
ELSE
USE MEMBER
REPO FORM REP_MEMBER FOR NAME=UPPER(MNAME) PREVIEW
ENDIF

You might also like