Sunteți pe pagina 1din 45

Cuprins

1. Formularea problemei..........................................................................................3
2. Diagrama entitate-relaţie (diagrama ER) a bazei de date “AGENTIE”.............3
3. Descrierea datelor de intrare si de iesire.............................................................5
4. Schema conceptuala a bazei de date „AGENTIE”...............................................6
5. Interogari la baza de date „AGENTIE”...............................................................6
6. Descrierea interfetei aplicatiei...........................................................................11
 Formular de acces la date a diferitor utilizatori............................................15
 Meniul aplicatiei...........................................................................................22
 Formulare de actualizare a datelor in baza de date „AGENTIE”.................25
 Formulare simple a tabelelor din baza de date „Agentie”..........................29
 Rapoarte simple, de grupare si de totalizare.................................................32
7. Concluzie.............................................................................................................46

2
1. Formularea problemei
La practica tehnologica mi se cere sa elaborez un proiect ce va duce
evidenţa turiştilor, hotelurilor, agenţiilor, restaurantele si rutele unei AGENTIEI
TURISTICE.
Esenţa problemei în general consta în automatizarea procesului de lucru a
agenţiei. Scopul acestui proiect este gestiunea datelor prin intermediul unei baze de
date care reflectă activitatea agenţiei: agenţie, cazare, hotel, restaurant, rezervare,
ruta, transport, turist.

2. Diagrama entitate-relaţie (diagrama ER) a bazei de date


“AGENTIE”
O entitate este un obiect concret sau abstract care există şi poate fi distins de
un alt obiect (de exemplu o persoană, un concept, un sentiment etc.).
O mulţime sau o clasă de entităţi este un grup de obiecte concrete sau
abstracte de aceeaşi natură (de exemplu toate persoanele, toate conceptele, toate
sentimentele, etc.).
Un atribut reprezintă o proprietate caracteristică a entităţilor din aceeaşi
clasă.
O diagramă ER este reprezentarea grafică a unei colecţii de entităţi, relaţii,
constrângeri, condiţionări etc. care descriu complet o bază de date. Atunci când se
analizează necesităţile informaţionale ale unei mari firme se încearcă identificarea
entităţilor şi a relaţiilor dintre entităţi.
In cazul nostru entităţile sunt:
Agenţie (ud_agenţie ud_turist, denumire,)
Cazare (ud_cazare, ud_ruta, ud_restaurant, preţ)
Hotel (ud_hotel, denumirea, adresa, categoria, ud_cazare, ud_rezervare)
Restaurant (ud_restaurant, denumirea, adresa)
Rezervare (ud_rezervare, data_rezervare, nr._apartament)
Ruta (ud_ruta, denumirea)
Transport (ud_transport, denumirea, preţ, ud_ruta)
Turist (ud_turist, nume, prenume, ud_ruta).

3
Agentie Id_turis Id_turis Turist
t t nume
id_agenti
e Id_rut
Nume a Prenum
e
Id_rut Ruta
Cazare
id_restauran a
t
Id_rut Id_rut denumirea
a a
pret
id_cazare
Transport
id_transport
id_restauran id_cazare
t
pret denumire
Restaurant adresa

denumire id_cazare id_cazare


a

Hotel
id_hotel

categoria
denumire adresa
a

Rezervare id_rezervare id_rezervare

nr_apartament
data_rezervar
e 3. Descrierea datelor de intrare si de ieşire
Datele de intrare sunt acele valori (informaţii) pe care un program le primeşte
dintr-o sursa oarecare.

Datele de intrare pot fi:


*** introduse de câtre utilizator prin intermediul tastaturii sau al Mouse-ului;
***extrase chiar din fişiere de date aflate pe diverse suporturi de memorie
(hard-dis, flash, CD etc.);
***primite prin intermediul diverselor echipamente (placa de sunet, camera

4
video, placa de reţea, placa de achiziţie de date etc.);
***preluate din reţele locale sau la distanţă etc.
***preluate direct din Baza de Date;

Datele de ieşire reprezintă valorile pe care baza de date le generează ca urmare a


executării instrucţiunilor sale si le transmite utilizatorului.

Transmiterea datelor de ieşire se poate efectua:


***prin afişarea acestora pe monitor;
***prin salvarea in fişiere de date ce vor fi ulterior accesate de câtre utilizator ;
***prin stocarea in memorie pentru a fi utilizate ;
***dări de seamă privind activitatea firmei (pentru calcularea venitului);

***comenzi privind angajarea sau concedierea personalului, rapoarte privind


calitatea comenzilor si utilajului folosit etc.

În cazul dat ca date de intrare am folosit sursele directe adică date, texte, iar ca date
de ieşire formulare, rapoarte, meniuri etc.

4. Schema conceptuala a bazei de date „AGENTIE”


O schemă conceptuală este o reprezentare a întregii informaţii conţinute în
baza de date ce combină subschemele vederilor ce privesc o anumită aplicaţie
într-un model unitar. Acest tip de schemă trebuie să se bazeze pe un model
teoretic şi să fie simplă, adică uşor de înţeles şi de prelucrat.

5
Fig. 1.

5. Interogări la baza de date „AGENTIE”


Interogarea este operaţie prin care extrageţi date din baza de date fora sa le
ştergeţi sau sa le modificaţi si pe care le afişaţi intr-un anumit format. Extragerea
se face in funcţie de un anumit criteriu numit criteriu de interogare. Acestea trebuie
sa definească datele pe care vreţi sa le extrageţi: numele câmpurilor, tabelele din
care fac parte, criteriile prin care se extrag interogările si in care ordine sunt
reprezentate. Interogarea este scopul bazei de date. Când un utilizator interoghează
baza de date, el pune de fapt o întrebare „ce date din baza de date îndeplinesc
aceste condiţii?”.
In Visual Fox Pro putem crea o interogare prin doua moduri:
*interactiv(folosind generatorul de interogări Query Designer);
*prin limbajul de comanda SQL.

a) Aceasta interogare trebuie sa creeze un tabel care sa afişeze hotelul selectat din
ce categorie face parte.
*interactiv:
FileàNevàQueryàNev File.

6
Se deschide fereastra Add Table or Vie unde selectam tabelele de care avem
nevoie (Fig. 2).

Fig. 2.

In urma selectării se deschide fereastra Query Designer (Fig3).

Fig. 3.
In secţiunea Fields selectam câmpurile de care avem nevoie. (Fig. 4).

7
Fig. 4.

După care dam la execuţie prin apăsarea butonului .

* Prin comanda SQL.


Pentru a crea interogarea prin comanda SQL,crime următorul cod de program in
fereastra Comand.
SELECT Hotel. denumirea, Hotel. categoria, Hotel. adresa;
FROM ;
hotel!hotel;
WHERE Hotel. categoria = ( "5*" );
ORDER BY Hotel. denumirea

In urma acestora vom obţine tabelul cu următoarele date (Fig. 5).

(Fig. 5).
b) Aceasta interogare ne va afişa datele despre medici in ce secţie lucrează.
*interactiv:
FileàNevàQueryàNew File.
Se deschide fereastra Add Table or View unde selectam tabelele de care
avem nevoie.(Fig 6)

8
(Fig. 6).

In urma selectării se deschide fereastra Query Designer(Fig. 7) .

9
Fig. 7.
După care dam la execuţie prin apăsarea butonului .
* Prin comanda SQL.
Pentru a crea interogarea prin comanda SQL,crime următorul cod de program in
SELECT Hotel. denumirea, Hotel. adresa;
FROM ;
hotel!hotel;
WHERE Hotel. denumirea = ( "Cosmos" );
ORDER BY Hotel. denumirea

In urma acestora vom obţine tabelul cu următoarele date (Fig. 8).

Fig. 8.

10
6. Descrierea interfeţei aplicaţiei
O baza de date poate fi creata prin doua metode:
*Intelectiv:
File àNev si in caseta de dialog Nev activam butonul Database din lista File Type
si executam clic pe controlul New File. Se deschide caseta de dialog Create in
care scriem numele bazei de date (AGENTIE) in caseta de text Enter si apoi
executam clic pe declansatorul Save. Se deschide fereastra generatorului de baze
de date Database Designer in care vedem arhitectura bazei de date.

*prin comanda SQL:


Create database<agentie>

Baza de date AGENTIE este alcatuita din cinci tabele cu forma:

Tabelul Agentie (Fig. 9):

Fig 9.

11
Tabelul Cazare (Fig. 10):

Fig 10.
Tabelul Hotel (Fig. 11):

Fig 11.
Tabelul Restaurant (Fig. 12.):

Fig 12

12
Tabelul Rezervare (Fig. 13):

Fig 13.
Tabelul Transport (Fig. 14):

Fig. 14
Tabelul Ruta (Fig. 15):

Fig. 15

13
Tabelul Turist (Fig. 16)

Fig. 16

14
Formular de acces la date a diferitor utilizatori
Pentru a crea un formular de acces la date a diferitor utilizatori, vom efectua
mai multi pasi. Vom creea un formular pentru doua tipuri de utilizatori:
Administrator si User obisnuit. Pentru administrator am folosit un meniu, mult
mai larg deoarece acesta sa poata face modificari in baza de date. Pentru userul de
rind, insa am utilizat un alt meniu, mai simplu care nu-i va permite acestuia sa
faca careva shimbari.
Primul pas in crearea formularului este: mergem la fereastra Project
Manager unde selectam optiunea Forms si apasam butonul New (Fig 14).

Fig 17.
Se deschide fereastra New Form, unde selectam New Form (Fig. 18 ).

Fig 18.

15
In figura urmatoarea vedem fereastra Form Designer (Fig. 19 ) unde vom
plasa careva componente din bara cu componete (Fig. 20). Si anume vom plasa pe

forma o componenta ComboBox , una Text si un buton Command Button

ca in (Fig. 21).

Fig 19.

Fig 20.

16
Fig 21.

Pentru a redenumi forma din Form1 in „logare”, facem click pe ea si in fereastra


Properties-FormDoc1, selectam optiunea Caption si redenumim forma (Fig. 22).

Fig 22.

17
Astfel facem si cu butonul. Mai intii facem click pe ele si in fereastra Properties-
Login, selectam optiunea Caption si redenumim in Logare (Fig. 23).

Fig 23.

Pentru a activa proprietatile componentei ComboBox, facem click pe


aceasta si in fereastra Properties, activam optiunea RowSourceType facind
dublu-click pe ea. Pe optiunea RowSource facem click si introducem doua
cuvinte, administrator si user, care vor fi componentele ComboBox (Fig. 24).

Fig 24.

18
Pentru a programam butonul Logare , facem clik pe acesta
si ne se va deschide o fereastra Command1.Click (Fig 25) si scriem urmatorul cod
de program:
public a,b
a='1'
b='2'
if (thisform.combo1.listindex=1 and thisform.text1.value=a) then
messagebox('Felicitari ati intrat in Administrator')
do menu1.mpr
thisform.Release
else
if (thisform.combo1.listindex=2 and thisform.text1.value=b) then
messagebox('Ati introdus parola corect pentru USER')
do menu_user.mpr
thisform.Release
else
messagebox('Introduceti inca o data parola')
endif
ENDIF

Fig 25.

19
Pentru a da la executie apasam pe butonul din bara cu butoane.
Si in sfirsit obtinem (Fig. 26):

Fig 26.
Seletam optiunea administrator si introducem parola (Fig. 27):

Fig 27.

20
Ne afiseaza mesajul (Fig. 28):

Fig 28.
Si ni se deschide meniul pentru administratori (Fig. 29):

Fig 29.

Daca selectam optiunea user, si introducem parola (Fig. 30):

Fig 30

21
Ne apare mesajul (Fig. 31):

Fig 31.

Si ni se deschide meniul obisnuit pentru utilizator (Fig. 32):

Fig 32.

Meniul aplicatiei
Deoarece avem doua tipuri de utilizatori care au acces la baza de date, adica
administratorul si user-ul, vom crea doua meniuri:

a. Meniul pentru Administrator.


Din fereastra Project Manager selectam optiune Menus si apasam butonul
New (Fig. 33).

Fig 33.

22
In fereastra ce ne se va deschide Menu Designer (Fig. 34) creem meniul
principal va avea meniurile:
-„Creare fisier”
-„Open”
-„Formulare”
-„Rapoarte”
-„Interogări”
-„Pagina”
-„Imprima”
-„Despre”
-„Informatii VFP ajutor”
-„Schimba utilizator”
-„Iesire”

Fig 34.

b. Meniul pentru user.


Din fereastra Project Manager selectam optiune Menus si apasam butonul
New (Fig. 35).

23
Fig 35.

In fereastra ce ni se va deschide Menu Designer (Fig. 36) creem meniul


principal va avea meniurile:
-„Creare fisier”
-„Open”
-„Inregstrari”
-„Formulare”
-„Rapoarte”
-„Interogări”
-„Cautare turist”
-„Despre”
-„Schimba utilizator”
-„Exit”

24
Fig 36.

Formulare de actualizare a datelor in baza de date „AGENTIE”


Pentru a creea un formular de actualizare a datelor vom face din nou niste
pasi necesari pentru aceasta operatie. Din fereastra Project Manager selectam
optiunea Forms si tastam butonul New de alaturi. Astfel ne se va deschide o
fereastra ca in (Fig 37).

Fig 37.
Apoi se deschide nfereastra New Form de unde alegem optiunea New Form
(Fig. 38)
25
Fig 38.

Fereastra Form Designer ne va permite sa lucram in continuare asupra


formei noastre ( Fig. 39).

Fig 39.

Pentru a alege tabelul cu care vom lucra in continuare, facem click dreapta
pe forma si selectam optiune Builder din PopUpMenu, si astfel o sa ni se
deschida o noua fereastra Form Builder (Fig. 40) unde ne vom alege tabelul si
cimpurile ce dorim sa le contina forma.

26
Fig 40.

Dupa efectuarea acestei operatii cimpurile ne vor aparea pe componenta sub


o astfel de forma unde si plasam 8 componente CommandButton astfel (Fig. 41).
Aceste butoane le redenumim ca sa obtinem aceasta figura.

Fig 41.

Si pentru a programa butoanele facem dublu click pe ele si in fereastra ce o


sa ni se deschida scrim segventa de program:

27
APPEND BLANK
thisform.Refresh

thisform.Refresh

DELETE
Pack

if!BOF()
skip-1
endif
thisform.Refresh

if!eof()
SKIP
endif
thisform.Refresh

Dupa ce am efectuat aceste operatii vom obtine forma (Fig. 42) in care cu
succes vom putea adauga inregistrari, sterge sau modifica.

Fig 42.

28
Formulare simple a tabelelor din baza de date „Agentie”
Formularele obisnuite se creeaza mai simplu simplu ca cele de actualizare
sau de logare. Din fereastra Project Manager selectam optiunea Forms si tastam
butonul.
New de alaturi.Astfel ni se va deschide o fereastra ca in (Fig. 43).

Fig 43.

Apoi se deschide nfereastra New Form de unde alegem optiunea Form


Wizard (Fig 44).

Fig 44.

29
Din fereastra ce se deschide Wizard Selection vom selecta optiunea Form
Wizard ceea ce va insemna ca vom lucra cu un singur tabel (Fig. 45).

Fig 45.
Urmatorul pas vom selectiona tabelul de care avem nevoie pentru a face
forma dar si cimpurile din tabel (Fig. 46).

Fig 46.

In urmatoarea fereastra urmeaza sa alegem stilul formei si al butoanelor ce


vor aparea pe forma (Fig. 47).

30
Fig 47.

Urmatorul pas dam titlul formei (Fig. 48).

Fig 48.

31
Astfel noi am primit forma (Fig. 49):

Fig 50.

Rapoarte simple, de grupare si de totalizare.


Raportul este o colectie de informatii obtinute din datele stocate in tabelele
bazei de date, prezentate utilizatorului intr-o forma cit mai clara si mai concisa. El
poate fi tiparit la imprimanta sau afisat pe ecran si prezita un set de date legate
intre ele, preluate din tabelele bazei de date. Permite descrierea elementelor care
pot sa apara. Raportul nu modifica datele din tabel.
a) simple.
Pentru a crea un raport nou mergem pe fereastra Project Manager unde
selectam optiunea Reports si New (Fig. 51).

32
Fig 51.

Dupa aceasta se deschide o caseta New Report unde selectam optiunea


Report Wizard (Fig. 52).

Fig 52.
Din fereastra Wizard Selection selectam Report Wizard (Fig. 53), aceasta
optiune va lucra numai cu un singur tabel.

33
Fig 53.
In caseta Report Wizard selectam tabelul si cimpurile acestui tabel care vor
fi in raport (Fig. 54).

Fig 54.

34
In pagina urmatoare selectam stilul raportului (Fig. 55).

Fig 55.

In urmatorul pas selectam numarul de coloane, de rinduri si forma paginii


(Fig. 56).

Fig 56.

35
In pasul urmator vom alege cimpul dupa care vom face sortarea,adica care
cimp va fi pe primul loc (Fig. 57).

Fig 57.

Aici vom scri numele raportului si apasam finis (Fig. 58).

Fig 58.

36
Toate rapoartele realizate asupra basei de date AGENTIE se afla la anexe.
b) de grupare
Pentru a crea un raport nou mergem pe fereastra Project Manager unde
selectam optiunea Reports si New (Fig. 59).

Fig 59.

Dupa aceasta se deschide o caseta New Report unde selectam optiunea


Report Wizard (Fig. 60).

Fig 60.
Din fereastra Wizard Selection selectam One-to-Many Report Wizard
(Fig 61), aceasta optiune va lucra cu mai multe tabele.

37
Fig 61.

In fereastra de jos selectam din tabelul transport cimpurile de care avem


nevoie (Fig. 62).

Fig 62.

38
In urmatoarea fereastra selectam din tabelul ruta cimpurile de care avem nevoie
(Fig. 63).

Fig 63.

Urmatorul pas facem legatura dintre cele doua tabele. Selectam cimpul ce le
leaga pe aceste doua tabele (Fig. 64).

Fig 64.
39
Alegem stilul raportului (Fig. 65).

Fig 66.
Scriem titlul raportului si apasam finish (Fig. 67).

Fig 67.
Raportul se afla la anexe.

40
c) de totalizare.
Pentru a crea un raport nou mergem pe fereastra Project Manager unde
selectam optiunea Reports si New (Fig. 68).

Fig 68.
Dupa aceasta se deschide o caseta New Report unde selectam optiunea
Report Wizard (Fig. 69).

Fig 69.
Din fereastra Wizard Selection selectam Report Wizard (Fig. 70), aceasta
optiune va lucra cu un singur tabel.

41
Fig 70.
In fereastra de jos selectam din tabelul Transport cimpurile de care avem
nevoie (Fig. 71).

Fig 71.

Pentru urmatoarea fereastra actionam butonul Summary Options (Fig. 72)


unde se deschide o noua ferestra Summary Options (Fig. 73) unde bifam la
nivelul cimpului Pret optiunea „Count, Min, Max”, astfel la sfirsitul formularul
vom avea numarul total, minim si maxim al pretului.

42
Fig 72.

Fig 73.

43
Alegem stilul raportului (Fig. 74).

Fig 74.

Alegem numarul de coloane, rinduri si stilul foii. (Fig. 75).

Fig 75.

44
Facem sortarea dupa cimpul care dorim, in cazul nostru Pret (Fig. 76).

Fig 76.
Scrim titlul raportului (Fig. 77).

Fig 77.
Apasind finish ni se deschide o ferestra cu numele de Save As unde salvam
raportul. Raportul se afla la anexe.
45
7. Concluzie
Efectuind practica de instruire la obiectul «Sisteme de Gestiune a Bazelor de
Date», am acumulat o rezerva de cunostinte noi in domeniul programarii si SGBD-
ului. Am lucrat cu generatorul de rapoarte si cel de meniuri am creat interogări si
formulare care indeplineau anumite functii care pot fi cerute de utilizator
asemenea am lucrat in Microsoft Word.
In timpul rezervat practicii am elaborat baza de date “Agentie Turistica”
care ne da posibilitatea de a urmari cu mare precizie care este activitatea ei. De
asemenea se duce evidenta despre turistii care sunt plecati in excursie si cu o buna
experienta in domeniu a AGNTIEI. In darea de seama am explicat pe etape baza
de date, am afisat diagrama ER a bazei de date si schema conceptuala in care sunt
evidente legaturile intre tabele. Efectuind acest program am avut posibilitatea de a
acumula deprinderea in elaborarea programelor cu continut economic ceea ce este
necesar la etapa actuala.

46

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