Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




ATESTAT INFORMATICA

Informatica


Aceasta lucrare are drept scop evidenta usoara si rapida a unei agende personale. Lucrarea este conceputa în sistemul de gestiune a bazelor de date Foxpro7.0 , sistem ce permite lucru cu baze de date de dimensiuni mari , precum si realizarea unei interfete utilizator elegante si usor de manevrat.

Meniul principal al aplicatiei are 4 optiuni si anume:



- Modificare

- Cautare

- Listare

- Terminare

a) Optiunea MODIFICARE permite introducerea si modificarea da 24224c219y telor cunostintelor. Pentru o evidenta cât mai riguroasa s-au preluat de la tastatura câmpurile despre Nume, Prenume, Tara, Judet, Localitatea, Strada.

Procedura de adaugare permite introducerea unei noi cunostinte în agenda.

go 1

do afis

procedure afis

clear

if recn()<=recc()

numar=recn()

num=nume

pren=prenume

textul="Articolul selectat : "+str(numar)+' '+num+' '+pren

else

textul="Sfarsitul bazei de date !"

endif

@ 0,50 say textul

?

?

?

?

?

endprocprocedure modif1

Procedura permite introducerea de noi date despre cunostinte la agenda. Datele se vor memora în niste variabile (n1..n9) prin intermediul unei machete de ecran, ce se realizeaza prin instructiunea accept, respectiv input. Datele se vor introduce în tabela prin comanda replace. Se va afisa un mesaj de confirmare prin instructiunea wait

Procedura de modif3 permite modificarea unei cunostinte in agenda.

Aceasta procedura va actiona asupra înregistrarilor selectate, având posibilitatea de-a modifica sau nu anumite câmpuri din agenda, mai departe se va trece la urmatoarea înregistrare pâna când se va ajunge la sfârsitul bazei de date. procedure modif3

* modif date

do afis

? 'Daca datele se pastreaza tastati <Enter> cand sunteti intrebat de modificare !'

? 'La campuri numerice pt ale pastra informatiile tastati 0 (tel,nr,ap)'

accept 'Noul nume : ' to n1

if n1<>''

replace nume with n1

endif

accept 'Noul prenume : ' to n2

if n2<>''

replace prenume with n2

endif

input 'Noul tel : ' to n3

if n3<>0

replace tel with n3

endif

accept 'Noua tara : ' to n4

if n4<>''

replace tara with n4

endif

accept 'Noul judet : ' to n5

if n5<>''

replace judet with n5

endif

accept 'Noua localitate : ' to n6

if n6<>''

replace localitate with n6

endif

accept 'Noua strada : ' to n7

if n7<>''

replace strada with n7

endif

input 'Noul nr : ' to n8

if n8<>0

replace nr with n8

endif

accept 'Noul bloc : ' to n9

if n9<>''

replace bloc with n9

endif

input 'Noul ap : ' to n10

if n10<>0

replace ap with n10

endif

accept 'Noul E-mail : ' to n11

if n11<>''

replace email with n11

endif

wait "S-a modificat inregistrarea"

endproc

procedure modif4

* sterge

do afis

disp

?

wait "Esti sigur ca vrei sa stergi inregistrarea (y/n) ?" to ras

if upper(ras)='Y'

delete

pack

? "Inregistrarea s-a sters"

else

? "Inregistrarea nu s-a sters"

endif

wait

do afis

endproc

Procedura modif4 va sterge înregistrarea selectata. Exista o posibilitate de alegere a stergerii, în eventualitatea actionarii accidentale.

Înregistrarea se marcheaza pentru stergere cu comanda delete si cu pack se va sterge din tabela.

b)Optiunea Cautare permite cautarea si regasirea rapida a datelor dupa mai multe criterii de cautare, cum ar fi Nume, Prenume, Tara ,Judet,Localitatea si Strada. Aceste criterii corespund celor 4 suboptiuni ale optiunii Cautare. De mentionat ca procedura de cautare este în asa fel realizata încât la introducerea pentru cautare spre exemplu a literei a(A) sunt afisate toate cunostintele ce încep cu litera respectiva.

procedure caut_nume

do afis

*caut dupa nume

accept "Dati numele cautat : " to x

locate all for upper(nume) = upper(x)

if recn()<=recc()

? 'S-a gasit prima inregistrare'

do afis

wait 'Continuam cautarea (y/n) ?' to ras

do while (upper(ras)='Y')

continue

do afis

wait 'Continuam cautarea (y/n) ?' to ras

enddo

else

? 'Nu am gasit o astfel de inregistrare'

endif

do afis

endproc

procedure caut_prenume

do afis

*caut dupa prenume

accept "Dati prenumele : " to x

locate all for upper(prenume) = upper(x)

if recn()<=recc()

? 'S-a gasit prima inregistrare'

do afis

wait 'Continuam cautarea (y/n) ?' to ras

do while (upper(ras)='Y')

continue

do afis

wait 'Continuam cautarea (y/n) ?' to ras

enddo

else

? 'Nu am gasit o astfel de inregistrare'

endif

do afis

endproc

procedure caut_localitate

do afis

*caut dupa localitate

accept "Dati localitatea : " to x

locate all for upper(localitate) = upper(x)

if recn()<=recc()

? 'S-a gasit prima inregistrare'

do afis

wait 'Continuam cautarea (y/n) ?' to ras

do while (upper(ras)='Y')

continue

do afis

wait 'Continuam cautarea (y/n) ?' to ras

enddo

else

? 'Nu am gasit o astfel de inregistrare'

endif

do afis

endproc

procedure caut_mail

do afis

*caut dupa mail

accept "Dati adresa de E-mail : " to x

locate all for upper(email) = upper(x)

if recn()<=recc()

? 'S-a gasit prima inregistrare'

do afis

wait 'Continuam cautarea (y/n) ?' to ras

do while (upper(ras)='Y')

continue

do afis

wait 'Continuam cautarea (y/n) ?' to ras

enddo

else

? 'Nu am gasit o astfel de inregistrare'

endif

do afis

endproc

c)Optiunea Listare

În proiectul meu listarea am facut-o în trei moduri :

- listarea tuturor cunostintelor pe ecranul FOX PRO-ului ;

- listarea cunostintei selectate pe ecranul FOX PRO-ului, selectie ce se poate face din meniul MODIFICARE optiune selectare;

- listare în tabela, care afiseaza toate cunostintele într-o tabela.

1. Listarea cunostintelor pe ecranul FOX PRO-ului. Instructiunea care asigura aceasta operatie este display all.

procedure list1

disp all

wait 'Apasati o tasta !'

do afis

endproc

2.Listarea cunostintelor selectate pe ecranul FOX PRO-ului, se face prin comanda display.

procedure list2

disp

wait 'Apasati o tasta !'

do afis

endproc

3.Listare în tabela. Se face prin browse iar optiunile de dupa comanda sunt puse pentru a nu a avea drept de editare, stergere si adaugare de date în tabela.

procedure list3

brow noedit nodelete noappend

wait 'Apasati o tasta !'

do afis

endproc

d)Optiunea Terminare se foloseste pentru parasirea unei sesiuni de lucru a aplicatiei si are 2 suboptiuni: <Foxpro si SO> adica permite reîntoarcerea

dupa caz în sistemul Foxpro sau în sistemul de operare Windows.

Iesirea în fox se face prin cancel, iar parasirea programului prin quit.

Lista principalelor functii si proceduri utilizate este:

DEFINE WINDOW - definirea unei ferestre

DEFINE POPUP  - definirea unui meniu vertical

DEFINE MENU  - definirea unui meniu orizontal

ACTIVATE POPUP - activarea unui meniu vertical

ACTIVATE MENU - activarea unui meniu orizontal

RELEASE MENU  - eliminarea din memorie a unui meniu orizontal

RELEASE POPUP - eliminarea din memorie a unui meniu vertical

USE "NUME" - deschide o baza de date

USE  - închide o baza de date

CLOSE ALL  - închide toate bazele de date

BROWSE  - deschide o baza de date pentru adaugare si/sau modificare

REPLACE "CAMP" WITH "EXPRESIE" - calculeaza un câmp într-o baza de date

DO WHILE

- ciclu repetitiv cu test initial

ENDDO

SCAN

- parcurge baza de date si executa instructiunile

la fiecare înregistrare

ENDSCAN

IF

ELSE - instructiune de decizie simpla

ENDIF

DO CASE variabila

CASE O1

INSTR1 - instructiune de decizie multipla

CASE O2

INSTR2

ENDCASE 

PROCEDURE

INSTRUCTIUNI - procedura (subprogram)

RETURN

FUNCTION

INSTRUCTIUNI - functie (subprogram)

RETURN

ON KEY LABEL - executa o anumita actiune la apasarea unei

anumite taste.

ON SELECTION PAD - executa o anumita actiune la apasarea unei

optiuni dintr-un meniu orizontal

ON SELECTION BAR - executa o anumita actiune la apasarea unei

optiuni dintr-un meniu vertical

SET TALK  - da/nu afiseaza mesajele Foxpro

SET SAFETY - da/nu face confirmare la suprascriere

SET CURSOR - da/nu afiseaza cursorul

SET EXACT - da/nu compara exact 2 siruri de caractere

Aceasta agenda foloseste la dispozitive portabile precum laptopuri, pagere, si altele pentru gasirea adreselor tuturor cunostintelor printr-o metoda mult mai usoara.


Document Info


Accesari: 1867
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )