Post on 24-Dec-2015
description
transcript
LICEUL TEORETIC RADU VLADESCU
LUCRARE PENTRU ATESTARE
PROFESIONALA LA INFORMATICA
ELEVA: PROFESOR INDRUMATOR:
UDREA ALEXANDRA LEICA DOINA
2
CUPRINS:
1.Introducere
2.Argument
3.Baza de date
4.Tabele
5.Interogari
6.Formulare
7.Rapoarte si etichete
8.Concluzii
9.Bibliografie
3
Introducere în bazele de date
Odata cu trecerea timpului si dezvoltarea
informaticii, calculatorul s-a implicat in tot mai
multe domenii de activitate, o multitudine de
probleme gasindu-si astfel rezolvarea prin
intermediul sau.
Datorita diversitatii problemelor rezolvate cu
ajutorul calculatorului nu s-a putut realiza un
program care sa rezolve (orice problema),
realizandu-se in schimb mai multe programe (sau
pachete de programe), fiecare specializat in
rezolvarea unui anumit tip de problema. In functie
de problema pe care o are de rezolvat, utilizatorul
unui calculator alege acel program care se
potriveste cel mai bine in realizarea scopului
propus.
4
S-a ajuns astfel la o specializare foarte
accentuata a sistemelor informatice, orientate spre
rezolvarea diverselor tipuri de probleme.
O clasificare a problemelor rezolvate cu
ajutorul calculatorului, tinand cont de volumul
datelor si al prelucrarilor implicate in rezolvare ar
putea fi urmatoarea :
probleme care implica prelucrari putine asupra
unui volum mare de date
probleme a caror rezolvare presupune un volum
mediu de prelucrari asupra unui volum mediu de
date
probleme in rezolvarea carora intra un volum mic
de date asupra lor efectuandu-se un volum mare
de prelucrari.
Sistemele de gestiune a bazelor de date (SGBD)
reprezinta sisteme informatice specializate in
stocarea si prelucrarea unui volum mare de date,
in rezolvarea problemelor de primul tip, din
clasificarea anterioara. Termenul de « baza de
5
date » se va referi la datele de prelucrat, la modul
de organizare a acestora pe suportul fizic de
memorat iar termenul de « gestiune » se va referi
la actiunea de memorare si prelucrare a acestor
date.
Un SGBD trebuie sa asigure urmatoarele
functiuni elementare, referitoare la bazele de
date :
definirea bazei de date
introducerea datelor (adaugarea de noi date la
baza de date)
modificarea unor date existente in baza de date
stergerea unor date
interogarea bazei de date, adica extragerea
informatiilor stocate in aceasta
Pe masura dezvoltarii acestor sisteme lista s-a
completat cu facilitati importante cum ar fi :
generare de rapoarte
modalitati noi de interogare a bazei de date (de
exemplu un limbaj de tip SQL)
6
noi tipuri de organizare a bazelor de date si noi
tipuri de acces (de exemplu accesul indexat)
FOXPRO 9.0 este un sistem de gestiune al
bazelor de date relational iar in comparatie cu
concurentii sai directi se mentine in frunte datorita
performantelor sale. Principalele sale atuuri sunt
modul relaiv simplu de lucru si limpezimea
sintaxei, ceea ce il face si utilizat si in scop
didactic.
Comenzile FOXPRO permit descrierea tuturor
functiunilor generale ale unui SGBD, anume :
1.gestionarea structurii conceptuale a bazei
de date separat de structura fizica (CREATE,
MODIFY STRUCTURE, COPY STRUCTURE, DISPLAY
STRUCTURE, CREATE TABLE)
2.gestionarea datelor : incarcare (APPEND,
INSERT), modificare (REPLACE, EDIT, CHANGE),
stergere (DELETE, ZAP, PACK, RECALL)
3.satisfacerea cerintelor de regasire rapida a
datelor, fie prin specificarea unor criterii
7
complexe de selectie, cit si prin folosirea unor
chei de acces (FIND, SEEK, LOCATE)
4.afisarea datelor in diferite modalitati
(CREATE/MODIFY REPORT, CREATE/MODIFY
LABEL, CREATE/MODIFY SCREEN)
5.programare structurata (IF, CASE, DO WHILE,
SCAN)
6.modularizare si parametrizare (PROCEDURE,
FUNCTION)
7.facilitati ale utilizatorilor in organizarea
mediului de lucru (SET COLOR, DEFINE
WINDOW, DEFINE MENU).
8.protectie (SET LOCK, SET EXCLUSIVE, SET
ENCRYPTION)
Elemente ale limbajului Foxpro folosite in
aplicatie
Un element important al mediului FoxPro este
formularul, care reprezinta o portiune a ecranului
tratata ca un unic element, cu anumite
8
caracteristici ce determina actiunile ce se pot
executa asupra acesteia. Formularele sunt definite
de catre utilizator de catre utilizator, care pot fi
utilizate in programele de aplicatii create sub
mediul FoxPro.
Modul de lucru cu aceste formulare este
urmatorul:
mai intai acestea se creeaza, cu ajutorul
comenzii CREATE FORM, moment in care se
precizeaza si atributele lor( poza de fond,
dimensiunea ferestrei modul de deschidere);
dupa definire se vor creea pe ecran, folosind
modelul grafic propus de FOX PRO, butoane
care sa faca legatura intre formulare
aceasta legatura se formeaza prin secventa
de instructiuni:
thisform.relese()
do form [nume formular]
se vor crea de asemenea si tabele in care se
vor depunde informatiile cu privire la abonatii
9
firmei, abonamentele acestora ( clientii pot
sa aiba mai multe abonamnete fiecare),
costul suplimentar (pe langa cel al
abonamntului)
Alaturi de formulare, rapoartele FoxPro dau
acestui mediu si acestui limbaj o putere deosebita,
atat datorita eficientei si comoditatii cu care se
lucreaza cu aceste elemente, ci si datorita
aspectului deosebit de placut pe care cele doua
elemente il ofera programelor de aplicatii si
mediului FoxPro.
Formularul reprezinta un element FoxPro prin
care se ofera utilizatorului posibilitatea selectarii
unei anumite optiuni, dintr-o multime finita de
optiuni posibile, afisata pe ecran total sau partial,
urmand ca, in functie de selectarea facuta, sa se
declanseze anumite actiuni, corespunzatoarea
optiunii alese.
10
ARGUMENT
Acest proiect se doreste a fi o posibila aplicatie pentru pastrarea evidentei unei farmacii. În
momentul actual, aplicatia se axeaza pe o serie de operatii necesare evidentei unui punct farmaceutic:
evidenta medicamentelor, ordonarea medicamentelor dupa pret, evidenta clientilor ,
ordonarea vanzarilor dupa data cumpararii,preturile cuprinse inre 12000 si 70800
lei si lista medicamentelor existente în baza.
12
BAZA DE DATE
-FARMACIE-
Baza de date farmacie este alcatuita din trei tabele.
Tabelul medicam.dbf are urmatoarea structura:
-nume
//retine numele medicamentului
-cod
//retine codul medicamentului
-nrm
//retine numarul medicamentului
-pretu
//retine pretul medicamentului
-um
//retine unitatea de masura a medicamentului
13
-obs
//retine posibilele observatii asupra medicamentului
Tabelul cumpar.dbf are urmatoarea structura:
-numec
//retine numele cumparatorului
-cnp
//retine cnp-ul cumparatorului
-adresa
//retine adresa cumparatorului
-nrb
//retine numarul de buletin
-serieb
//retine seria de buletin
Tabelul vanzari.dbf are urmatoarea structura:
14
-cnp
//retine cnp-ul cumparatorului
-cod
//retine codul medicamentului
-serier
//retine seria retetei
-dataelib
//retine data eliberarii
Intre tabelele cumpar.dbf si vanzari.dbf exista un camp comun (campul cnp) pe baza caruia se stabileste relatia.Tabela parinte(cumpar.dbf) este indexata dupa campul comun,indexul fiinde de tip primary, iar tabela fiu este indexata dupa campul comun cu un index de tip regular.
15
INTEROGARI
Query1- cu ajutorul acestei interogari putem afla
informatii despre evidenta medicamentelor.
16
Query2-cu ajutorul acestei interogari putem ordona medicamentele din tabela medicam.dbf in functie de preturile acestora.
18
Query3-aceasta interogare este folosita pentru afisarea preturilor cuprinse intre 12000 si 70800 lei.
19
Query4-aceasta interogare este folosita pentru ordonarea medicamentelor din tabela vanzari.dbf in funcite de data eliberarii.
20
FORMULARE Acest proiect contine trei formulare:
formular_farmacie, clienti si medicamente.
FORMULAR_FARMACIE este formularul principal.
Acest formular contine 7 butoane:
1.Butonul medicamente are urmatorul cod:
21
La apasarea acestui buton se va afisa:
2.Butonul ordonarea medicamentelor dupa pret are urmatorul cod:
22
4.Butonul ordonarea vanzarilor dupa data eliberarii are urmatorul cod:
La apasarea acestui buton se va afisa:
25
Cu ajutorul butonului find putem cauta valoare pe care dorim sa ne-o afiseze.
6.Butonul evidenta clienti are urmatorul cod:
27
La apasarea acestui buton se va afisa:
Pentru afisarea:
primei inregistrari putem apasa butonul TOP inregistrarii precedente putem apasa butonul
PREV urmatoarei inregistrari putem apasa butonul
NEXT ultimei inregistrari putem apasa butonul
BOTTOM28
Cu ajutorul butonului FIND putem cauta inregistrarea pe care noi dorim sa o afisam.
Prin apasarea butonului PRINT putem declansa printarea inregistrarii.
Prin apasarea butonului ADD puteam adauga o noua inregistrare.
Prin apasarea butonului EDIT putem edita o inregistrare existenta.
Prin apasarea butonului DELETE putem sterge o inregistrare existenta.
Prin apasarea butonului EXIT se realizeaza iesirea din formularu curent catre formularul principal.
7.Butonul iesire are urmatorul cod:
La apasarea acestui buton se va parasi aplicatia FARMACIE.
29
RAPOARTEsi etichete
Raportul listaclienti afiseaza situatia din tabelul cumpar.dbf . Raportul arata astfel:
Din meniul view selectam preview si se va afisa:
30
Raportul medicamente afiseaza situatia din tabelul medicam.dbf. Raportul arata astfel:
Din meniul view selectam preview si se va afisa:
32
Raportul vanzari afiseaza situatia din tabela vanzari.dbf. Raportul arata astfel:
Din meniul view selectam preview si se va afisa:
34
Eticheta label1 contine informatii referitoare la tabela vanzari.dbf si arata astfel:
Pentru a previzualiza aceasta eticheta din meniul view selectam preview.
35