Sunteți pe pagina 1din 13

22 Explicarea lucrarii de atestat

Explicarea lucrarii de atestat

Lucrarea contine urmatoarele 3 componente : 1. Programul Atestat


2. Tabelul Clienti
3. Tabelul Masini

Programul Atestat- este alcatuit dintr-un meniu bara cu optiunile “Operatii


clienti”, “Operatii masini”, “Info program”, “Iesire”.

La selectarea optiunii “Operatii clienti” este activate un meniu de tip popup


care permite modificarea bazei de date a clientilor firmei de inchirieri auto.
Explicarea lucrarii de atestat 23

Meniul popup este alcatuit din 4 bare:


1. “Adauga client”- adauga o noua inregistrare in tabelul Clienti , iar
informatiile despre noul client sunt introduse de la tastatura.
2. “Sterge client”- sterge o intregistrare din tabelul Clienti. De la tastatura
se va introduce numele si prenumele clientului care va fi sters.
3. “Clienii actuali”-listeaza inregistrarile din tabelul Clienti.
4. “Masinile clientilor”- introducand numele unui client programul va afisa
intr-o fereastra informatii despre masina pe care acesta a inchiriat-o precum
si numarul de telefon al clientului si numarul de zile de inchiriat.

La selectarea optiunii “Operatii masini” se va active un meniu popup care


permite modificarea bazei de date a masinilor firmei.
24 Explicarea lucrarii de atestat

Acest meniu popup este alcatuit din 3 bare:


1. “Adauga masina”- adauga o noua inregistrare in tabelul Masini.
Informatiile despre masina fiind citite de la tastatura.
2. “Sterge masina”-sterge o masina din tabelul Masini. Pentru aceasta
este necesara citirea de la tastatura a id-ului masinii sterse.
3. “Vizualizare masini”- listeaza toate inregistrarile din tabelul Masini.

La selectarea optiunii “Info program” se va afisa intr-o fereastra informatii


despre lucrare dar si scopul acesteia.

Ultima optiune “Iesire” activeaza un meniu popup care contine 2 bare:

1. “Iesire Program”- iese din programul Atestat , dar Visual FoxPro nu


este inchis.
2. “Iesire VFP”- activeaza un meniu de tip bara care are rol de siguranta.
Permite iesirea din Visual FoxPro si implicit din programul Atestat.
Explicarea lucrarii de atestat 25

Tabelul Clienti are urmatoarea scructura:

Campurile inregistreaza in aceasta ordine urmatoarele: numele clientului,


prenumele clientului, codul numeri personal, numarul de zile in care este
in posesia masinii inchiriate, numarul de telefon al clientului si codul de
inregistrare al masinii.Exemplu:
26 Explicarea lucrarii de atestat

Tabelul Masini are urmatoarea structura:


Explicarea lucrarii de atestat 27

Campurile inregistreaza in aceasta ordine urmatoareale: marca masinii,


modelul masinii, cilindrii, anul de fabricatie, starea masinii (a-avariata,b-
buna), numarul de inmatriculare, pretul inchirierii pe zi, codul de
inregistrare al masinii.Exemplu:
28 Explicarea lucrarii de atestat

Structura programului Atestat:

SET TALK OFF


CLEAR
DEFINE MENU inchi
DEFINE WINDOW fer FROM 20,1 TO 44,80
DEFINE PAD a1 OF inchi PROMPT "Operatii clienti" AT 1,1
DEFINE PAD a2 OF inchi PROMPT "Operatii masini" AT 1,25
DEFINE PAD a3 OF inchi PROMPT "Info program" AT 1,50
DEFINE PAD a4 OF inchi PROMPT "Iesire" AT 1,75
DEFINE POPUP p1 FROM 2,1
DEFINE BAR 1 OF p1 prompt "Adauga client"
DEFINE BAR 2 OF p1 PROMPT "Sterge client"
DEFINE BAR 3 OF p1 PROMPT "Clientii actuali"
DEFINE BAR 4 OF p1 PROMPT "Masinile clientilor"
DEFINE POPUP p2 FROM 2,25
DEFINE BAR 1 OF p2 PROMPT "Adauga masina"
DEFINE BAR 2 OF p2 PROMPT "Sterge masina"
DEFINE BAR 3 OF p2 PROMPT "Vizualizare masini"
DEFINE POPUP p3 FROM 2,75
DEFINE BAR 1 OF p3 PROMPT "Iesire Program"
DEFINE BAR 2 OF p3 PROMPT "Iesire VFP"
ON SELECTION PAD a1 OF inchi activate popup p1
ON SELECTION PAD a2 OF inchi activate popup p2
ON SELECTION PAD a3 OF inchi do info_program
ON SELECTION PAD a4 OF inchi activate popup p3
ON SELECTION POPUP p1 do proc1
ON SELECTION POPUP p2 do proc2
ON SELECTION POPUP p3 do proc3
ACTIVATE MENU inchi
PROCEDURE proc1
DO case
CASE BAR()=1
DO adauga_client
CASE BAR()=2
DO sterge_client
CASE BAR()=3
DO vizualizare_client
CASE BAR()=4
DO masinile_clientilor
ENDCASE
Explicarea lucrarii de atestat 29

PROCEDURE proc2
DO case
CASE BAR()=1
DO adauga_masina
CASE BAR()=2
DO sterge_masina
CASE BAR()=3
DO vizualizare_masini
ENDCASE
PROCEDURE info_program
ACTIVATE WINDOW fer
?"COLEGIUL NATIONAL NICOLAE TITULESCU CRAIOVA"
?"ATESTAT INFORMATICA 2010/2011"
?"Gestiunea unei firme de inchirieri auto."
?"Profilul: Real", "Specializare: matematica-informatica"
?"Profesor indrumator: Bercea Mioara","Elev: Susai Iulian
(clasa a XII-a A)"
?"Inchirieri auto: Acest program tine evidenta clientilor si
a masinilor dintr-o firma de inchirieri auto."
WAIT
CLEAR
DEACTIVATE WINDOW fer
PROCEDURE proc3
DO case
CASE BAR()=1
DEACTIVATE MENU inchi
clear
CASE BAR()=2
DO iesire
ENDCASE
PROCEDURE adauga_client
USE clienti
CLEAR
a=SPACE(10)
b=SPACE(10)
c=SPACE(13)
d=0
e=SPACE(10)
f=SPACE(3)
@10,1 say "Introduceti numele:" get a
@11,1 say "Introduceti prenumele:" get b
@12,1 say "Introduceti CNP:" get c
@13,1 say "Introduceti numarul de zile:" get d
@14,1 say "Introduceti numarul de telefon:" get e
30 Explicarea lucrarii de atestat

@15,1 say "Introduceti codul clientului:" get f


READ
IF a=" " AND b=" "
CLEAR
ELSE
APPEND BLANK
REPLACE nume WITH a, prenume WITH b, cnp WITH c, zile WITH
d, telefon WITH e, id WITH f
ENDIF
ACTIVATE WINDOW fer
LIST
WAIT
CLEAR
DEACTIVATE WINDOW fer
CLEAR
PROCEDURE sterge_client
USE clienti
a=SPACE(10)
b=SPACE(10)
@10,1 say "Numele clientului care doriti sa fie sters:" get
a
@11,1 say "Prenumele clientului care doriti sa fie sters:"
get b
READ
IF a=" " AND b=" "
CLEAR
ELSE
k=0
SCAN FOR ALLTRIM(UPPER(nume))=ALLTRIM(UPPER(a)) AND
ALLTRIM(UPPER(prenume))=ALLTRIM(UPPER(b))
k=1
ENDSCAN
IF k=1
SCAN FOR ALLTRIM(UPPER(nume))=ALLTRIM(UPPER(a)) AND
ALLTRIM(UPPER(prenume))=ALLTRIM(UPPER(b))
DELETE
PACK
ACTIVATE WINDOW fer
LIST
WAIT
DEACTIVATE WINDOW fer
ENDSCAN
ELSE
ACTIVATE WINDOW fer
Explicarea lucrarii de atestat 31

?"Clientul nu exista in baza de date."


WAIT
DEACTIVATE WINDOW fer
ENDIF
ENDIF
USE
clear
PROCEDURE vizualizare_client
USE clienti
ACTIVATE WINDOW fer
LIST
WAIT
CLEAR
DEACTIVATE WINDOW fer
USE
PROCEDURE masinile_clientilor
USE clienti IN 1
USE masini IN 2
ACTIVATE WINDOW fer
LIST
?"Retineti numele clientului a carui masina doriti sa o
aflati!"
WAIT
CLEAR
DEACTIVATE WINDOW fer
a=SPACE(10)
b=SPACE(10)
@10,1 say "Numele clientului:" get a
@11,1 say "Prenumele clientului:"get b
READ
SELECT 2
INDEX on id TAG id
SELECT 1
SET RELATION TO id INTO 2
ACTIVATE WINDOW fer
LOCATE FOR ALLTRIM(UPPER(nume))=ALLTRIM(UPPER(a)) AND
ALLTRIM(UPPER(prenume))=ALLTRIM(UPPER(b))
IF FOUND()
? nume,prenume
? "Numar de telefon:", telefon
? "Masina inchiriata:",b.marca,b.model, "cu numarul:",b.nr
? "Pe o perioada de:",zile,"zile"
WAIT
32 Explicarea lucrarii de atestat
CLEAR
DEACTIVATE WINDOW fer
ELSE
?"Clientul nu exista in baza de date"
WAIT
CLEAR
DEACTIVATE WINDOW fer
ENDIF
CLEAR
CLOSE ALL
PROCEDURE adauga_masina
USE masini
CLEAR
a=SPACE(10)
b=SPACE(10)
c=0
d=SPACE(4)
e=SPACE(1)
f=SPACE(7)
g=0
h=SPACE(3)
@10,1 say "Introduceti marca masinii:" get a
@11,1 say "Introduceti modelul masinii:" get b
@12,1 say "Introduceti CMC:" get c
@13,1 say "Introduceti anul de fabricatie:" get d
@14,1 say "Introduceti starea de deteriorare a masinii:" get
e
@15,1 say "Introduceti numarul de inmatriculare:" get f
@16,1 say "Introduceti pretul de inchiriare al masinii:" get
g
@17,1 say "Introduceti id-ul masinii:" get h
READ
IF a=" " AND b=" "
CLEAR
ELSE
APPEND BLANK
REPLACE marca WITH a, model WITH b, cmc WITH c, anul WITH
d, stare WITH e, nr WITH f, pret WITH g, id WITH h
ENDIF
ACTIVATE WINDOW fer
LIST
WAIT
CLEAR
DEACTIVATE WINDOW fer
Explicarea lucrarii de atestat 33
CLEAR
PROCEDURE sterge_masina
USE masini
ACTIVATE WINDOW fer
LIST
?"Retineti id-ul masinii pe care o doriti stearsa!"
WAIT
CLEAR
DEACTIVATE WINDOW fer
a=SPACE(3)
@10,1 say "Id-ul masinii care doriti sa fie stearsa:" get a
READ
IF a=" "
CLEAR
ELSE
WAIT
LOCATE FOR ALLTRIM(UPPER(id))=ALLTRIM(UPPER(a))
IF FOUND()
DELETE
PACK
ACTIVATE WINDOW fer
LIST
WAIT
DEACTIVATE WINDOW fer
ELSE
ACTIVATE WINDOW fer
?"Masina nu exista in baza de date."
WAIT
DEACTIVATE WINDOW fer
ENDIF
ENDIF
USE
CLEAR
PROCEDURE vizualizare_masini
ACTIVATE WINDOW fer
USE masini
LIST
WAIT
CLEAR
DEACTIVATE WINDOW fer
PROCEDURE iesire
DEFINE MENU iesire
DEFINE PAD a1 OF iesire PROMPT "DA" AT 10,10
DEFINE PAD a2 OF iesire PROMPT "NU" AT 10,20
34 Explicarea lucrarii de atestat
ON SELECTION PAD a1 OF iesire do iesire2
ON SELECTION PAD a2 OF iesire do return
ACTIVATE MENU iesire
PROCEDURE iesire2
QUIT
PROCEDURE return
DEACTIVATE MENU iesire

S-ar putea să vă placă și