GRUPUL SCOLAR INDUSTRIAL



Unitatea de invatamant............................

[pic]

LUCRARE PENTRU OBŢINEREA ATESTATULUI PROFESIONAL

= profil matematică – informatică =

Profesor Îndrumător,

..................................

Absolvent,

...............................

- 2010 -

1. MEMORIU JUSTIFICATIV

Dupa anii ’90 a devenit posibila tranzactionarea de valuta. Sigur, la inceput aceste tranzactii nu au prezentat un mare interes pentru populatie, dar o data cu cresterea necontrolata a inflatiei, populatia a inceput sa-si plaseze economiile in valuta. Deoarece piata neagra de valuta a cunoscut si ea o larga dezvoltare in aceasta perioada si a inceput sa apara valuta falsa, s-a impus ca o necesitate infiintarea caselor de schimb valutar, la care orice cetatean poate tranzactiona diferite valute. Astfel numarul de tranzactii valutare a crescut foarte mult, fiecare casa de schimb trebuind sa-si stabileasca cursul de la o zi la alta in asa fel incat sa creasca numarul de tranzactii, ceea ce ii va aduce castiguri prin diferenta dintre preturile de vanzare si cumparare. Ori pentru a lua astfel de decizii trebuie tinuta o evidenta a vanzarilor si cumpararilor pe fiecare zi, pentru fiecare valuta in parte. Avand o astfel de evidenta se pot analiza evolutiile comparative pe luni sau ani, de exemplu.

Sunt doar cateva motive pentru care am considerat foarte utila o aplicatie care sa tina evidenta tranzactiilor unei case de schimb valutar.

2. DESCRIEREA LIMBAJULUI FOXPRO

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.

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 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)

noi tipuri de organizare a bazelor de date si noi tipuri de acces (de exemplu accesul indexat)

FOXPRO 2.6 este un sistem de gestiune al bazelor de date relational iar in comparatie cu concurentii sai directi (DBASE 4 si PARADOX 2.5) se mentine in frunte datorita performantelor sale. Principalele sale atuuri sunt folosirea optimizarii Rushmore si prezenta in limbaj a unor instructiuni SQL.

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 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 fereastra, care reprezinta o portiune a ecranului tratata ca un unic element, cu anumite caracterisitici ce determina actiunile ce se pot executa asupra acesteia. Pe langa feresttrele ce apartin mediului FoxPro si care au fost definite la crearea acestui sistem de programe se pot defini ferestre si de catre utilizator, care pot fi utilizate in programele de aplicatii create sub mediul FoxPro.

Modul de lucru cu aceste ferestre este urmatorul:

▪ mai intai acestea se definesc, cu ajutorul comenzii DEFINE WINDOW, moment in care se precizeaza si atributele lor

▪ dupa definire se vor afisa pe ecran, folosind comenzile ACTIVATE WINDOW sau SHOW WINDOW si vor fi inlaturate de pe ecran la executarea comenzilor DEACTIVATE WINDOW sau HIDE WINDOW

▪ pentru inlaturarea ferestrelor din memorie si bineinteles, de pe ecran, se folosesc comenzile CLEAR WINDOWS sau RELEASE WINDOWS

Alaturi de ferestre, meniurile 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.

Meniul 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.

Un meniu este format dintr-o “bara a meniului” si mai multe “submeniuri”. Bara meniului contine la randul ei mai multe optiuni, numite “optiuni bara”, fiecareia dintre acestea putandu-i-se atasa un submeniu. Fiecare submeniu este format la randul lui din “optiuni”.

Modul de lucru cu submeniurile definite de utilizator este urmatorul:

- mai intai se defineste meniul respectiv, prin urmatoarele etape:

- definirea barei meniului

- definirea optiunilor bara

- definirea submeniurilor

- definirea optiunilor

- definirea actiunilor ce se executa la alegerea unei optiuni sau a unei optiuni bara a meniului

- se activeaza meniul, urmand a se selecta optiunea dorita a acestuia

- se efectueaza diferite operatii specifice meniului

3. Introducere

Aplicaţie permite gestionarea contactelor de asigurare la o societate de asigurari într-un mod sigur şi eficient.

Aplicaţia conţine baze de date ce reţin informaţii atât despre clienti cat si depspre tipurile de asigurari incheiate .

Se simplifică operaţii ca :

← adăugarea unui nou client

← modificarea/stergerea/cautarea unui client

← incheierea unuei asigurari a masinii,a locuintei sau de calatorie

← modificarea/stergerea/cautarea unui contract incheiat anterior

Aplicaţia poate deasemenea genera rapoarte ale clientilor precum si rapoarte cu contractele de asigurare incheiate.

4. Descrierea aplicatiei

Baza de date este realizata printr-o relationare intre tabelele „clinet” cu „masina”,”locuinta” si ”calatorie” .

Aplicatia contine meniu in care se gasesc toate operatiunile posibile.

Operatiile posibile sunt umatoarele:

- Adauga un client

- Modifica/sterge date despre un client

- Asigurarea locuintei

- Asigurarea calatoriei

- Asigurarea masinii

- Modifica contract asigurare locuinta

- Modifica contract asigurare masina

- Modifica contract asigurare calatorie

- Raport clineti

- Raport asigurare locuinta

- Raport asigurare masina

- Raport asigurare calatorie

5.1.Operatii clienti

5.1.1.Adauga client

Aceasta optiune da poibilitatea de a adauga in baza de date un nou client.

La apelare va aparea o noua fereastra (fig. 3) in care va trebui sa completati campurile prezente cu datele referitoare la clientul pe care doriti sa il adaugati .

Pentru a efectua adaugarea apelati butonul „Adauga” care la randul sau va verifica daca datele sunt introduse corect.In cazul in care nu ati ompletat toate campurile aplicatia va afisa mesajul „Nu ati completat toare campurile necesare pentru a adauga un client!” (fig. 2).

[pic]

Fig. 1

[pic]

Fig. 2

[pic]

Fig. 3

Pentru a inchide fereastra apelati butonul „Iesire” . Butonul „Reseteaza” goleste toate campurile fomularului.

5.1.2. Modifica/sterge date despre un client

Aceasta optiune da posibilitatea de a modifica in baza de date datele clientilor.

Pentru inceput se introduce un CNP al unui clinet deja existent in baza de date dupa care se da butonul „cauta”. In cazul in care CNP ul nu este valid sau nu exista nici o persoana cu un astfel de CNP programul genereaza o eroare.(fig 4)

[pic]

Fig. 4

Odata introdus un CNP valid forma se completeaza automat cu datele clientului.

[pic]

Fig. 5

Butonul „modifica” activeaza campurile din forma actuala precum si butonul „salveaza”. Pentru a modifica o inregistrare din tabela client.dbf se modifica valorile din capurile acestei forme dupa care se da butonul „Salvare”. Astfel se suprasciu datele clientului din tabela c datele modificate in aceasta forma. In cazul in care nu ati introdus un CNP valid butonul „sterge” respectiv „modifica” genereaza o eroare ca in fig 6.

[pic]

Fig. 6

5.2 Incheie o asigurare

Meniul permite incheierea a 3 tipuri de asigurari:

5.2.1 Asigurarea locuintei

Primul pas este adaugarea unui CNP valid , in caz contrar programul genereaza o eroarea ca in fig. 4. Odata compeltat cu un CNP se da butonul „cauta”, actiune ce genereaza cu afisarea unor campuri ascunse ce contin datele despre clientul corespunzator CNP ului introdus. Aceste campuri sunt doar informative, nu pot fi modificate.

Al doilea pas este compeltarea formularului din partea dreapta cu datele despre locuinta. Daca se omite completarea vreunui camp programul genereaza o eroare (Fig. 7).

Butonul „reseteaza” realizeaza golirea toturor campurilor din formular.

Odata completat formularul se da click pe butonul „Incheie contract” ce realizeaza actiunea de validare a campurilor plus calcularea pretului pentru contractul de asigurarea al locuintei respective. Campul pentru pret este doar pentru vizualizare nu poate fi modificat in mod direct, el se calculeaza automat dupa o anumita formula.

[pic]

Fig. 7

Aceasta forma mai contine in plus un buton care permite adaugarea unui nou client . Forma completa este urmatoarea:

[pic]

Fig. 8

5.2.2 Asigurarea masinii

Asemenea formei care permite asigurarea locuintei si aceaasta forma ruleaza la fel , tot pe baza CNP ului insa difera campurile din formular. Aceasta are forma urmatoare:

[pic]

In calcularea pretului a fost aplicata o formula pe baza capacitatii cilindrica a motorului, a anului de fabricatie, a perioadei de asigurare si a tipului de masina.

5.2.3 Asigurarea de calatorie

Este asemenea cu celelalte forme doar ca contine alte campuri iar introducerea clientului sta pe baza de CNP.

Formula care sta la baza calculatii pretului unei astfel de asigurari este in functie de data plecarii , data intoarcerii, tipul calatoriei precum si zona de plecare (spatiu shengen sau altul).

[pic]

5.3. Modifica un contract

Acest meniu permite modificarea datelor introduse intr un contract.

5.3.1 Modificarea unui contract pentru locuinta

Primul pas, la fel ca in toate formele, este introducerea unui CNP valid a unui client din baza de date. Odata introdus un CNP existent in tabela „client.dbf” , campurile formularului ce contin informatii despre client precum si datele despre contractul de locuinta pe care l-a incheiat se completeaza automat.

Pentru modificare se activeaza butonul „modifica” care la randul sau face vizibil un alt buton „salvare” plus campurile ce tin de caontractul de asigurare al locuintei. Modificand aceste campuri si dand butonul „salvare” se suprascrie in baza de date mai exact in tabela „locuinta.dbf” datele despre contractl incheiat. In plus odata modoficate aceste campuri pretul pentru acesasta asigurare este recalculat dupa aceasi formula si inlocuit in baza de date . Erori posibile ale formei sunt cele legate de CNP, in cazul inca re nu a fost introdus niciunl sau CNP ul introdus nu este valid.

Fora mai contine si un buton care trimite la formularul pentru incheiere a unei asigurari de locuinta.

[pic]

5.3.2 Modificarea unui contract pentru masina

Este contruit la fel ca formularul de mai sun, difera doar campurile. Forma sa este urmatoarea:

[pic]

5.3.3 Modificarea unui contract pentru calatorie

Este contruit la fel ca formularul de mai sun, difera doar campurile. Forma sa este urmatoarea:

[pic]

5.4. Rapoartele

- Raport asigurare locuinta (fig. A)

- Raport asigurare masina (fig. B)

- Raport asigurare calatorie (fig. C)

[pic]

Fig. A

[pic]

Fig B

[pic]

Fig C

6. Baza de date

Baza de date numita „baza.dbc” este alcatuita din 4 tabele.

Tabela „client.dbf”, contine datele despre clientii societatii si este indexata pe baza campului „id” si a campului „cnp”

[pic]

Tabela „locuinta.dbf” contine contractele incheiate pentru asigurarea locuintei si este indexata pe baza campului „id_c” camp care este egal cu valoarea campului „id” din tabela „clienti.dbf”. Cu alte cuvinte fiecarui contract de asigurare al locuintei ii corespunde un id si NUMAI UNUL din tabela client.dbf. Valoarea campului „pret” care este de tip float este calculata automat in formularele pentru incehierea unui contract de asigurare a locuintei.

[pic]

Tabela „masina.dbf” este indexata dupa campul „id_m” camp ce corespunde unui alt camp SI NUMAI UNUL din tabela „client.dbf” si anume campul „id”

[pic]

Tabela „clatorie.dbf” este indexata dupa campul „id_c” si are urmatoarea structura:

[pic]

7. Codul sursa al aplicatiei

//// aici se pozitioneaza si se explica codul sursa al aplicatiei

8. Bibliografie

1. Mariana Panţiru, Manual FoxPro clasa a XII-a, Editura L&S Infomat, anul 1907

2. Internet

3. Visual FoxPro 8.0 Help

Cuprins

1. MEMORIU JUSTIFICATIV 2

2. DESCRIEREA LIMBAJULUI FOXPRO 3

3. Introducere 7

4. Descrierea aplicatiei 8

5.1.Operatii clienti 8

5.1.1.Adauga client 8

5.1.2. Modifica/sterge date despre un client 10

5.2 Incheie o asigurare 12

5.2.1 Asigurarea locuintei 12

5.2.2 Asigurarea masinii 13

5.2.3 Asigurarea de calatorie 14

5.3. Modifica un contract 15

5.3.1 Modificarea unui contract pentru locuinta 15

5.3.2 Modificarea unui contract pentru masina 17

5.3.3 Modificarea unui contract pentru calatorie 17

5.4. Rapoartele 18

6. Baza de date 20

7. Codul sursa al aplicatiei 24

8. Bibliografie 25

................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download