Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Doar rabdarea si perseverenta in invatare aduce rezultate bune.stiinta, numere naturale, teoreme, multimi, calcule, ecuatii, sisteme




Biologie Chimie Didactica Fizica Geografie Informatica
Istorie Literatura Matematica Psihologie

Informatica


Index » educatie » Informatica
» INFORMATICA - EVIDENTA PROFESORILOR


INFORMATICA - EVIDENTA PROFESORILOR


 



 

EVIDENTA PROFESORILOR

I. BAZE DE DATE

1.1. - Tipuri de baze de date

O baza de date este o modalitate de a stoca unele informatii (date) pe un suport extern cu posibilitatea regasirii acestor informatii.

Exista urmatoarele tipuri de baze de date:

baze de date retea (distribuite);

baze de date relationale;

baze de date orientate pe obiecte.

Baza noastra de date este un tip de baza de date relationala.

Organizarea datelor in vederea prelucrarii pe calculator este o activitate tot asa de importanta ca si realizarea programelor. Cele doua componente principale ale unui sistem informatic: datele si programele, se gasesc intr-o stransa interdependenta. Un program, oricat de elaborat si rafinat ar fi, nu va produce rezultatele scontate, daca va lucra cu o structura de date depasita. Tot asa de bine, o structura de date bine pusa la punct nu va putea suplini carentele unui program care o prelucreaza. Trebuie facuta distinctie intre date, informatii si cunostinte. Din punct de vedere al prelucrarii pe calculator, datele sunt definite de trei elemente: un identificator, atribute si valoare. Exemplu: cantitate (identificator), numar real si pozitiv (atribute), 50,5 (valoare).

O baza de date poate fi definita ca un ansamblu de date elementare sau structurate, accesibile unei comunitati de utilizatori. Mai concret, o baza de date este un ansamblu de fisiere intercorelate, care contine nucleul de date necesare unui sistem informatic (aplicatie informatica).

Un fisier este un ansamblu de inregistrari fizice, omogene din punct de vedere al continutului si al prelucrarii. O inregistrare fizica este unitatea de transfer intre memoria interna si cea externa a calculatorului. Aceasta este formata din una sau mai multe inregistrari logice. O inregistrare logica este unitatea de prelucrare din punct de vedere al programului utilizator. Aceasta este formata dintr-un ansamblu de campuri, care descriu o anumita realitate.

Centralizarea datelor permite: suprimarea redundantei, asigurarea unicitatii inregistrarii si controlul centralizat (asupra datelor). In prelucrarea clasica in care fisierele sunt dedicate aplicatiilor, aceleasi date apar inregistrate in mai multe fisiere si in formate diferite. Acest lucru implica o utilizare ineficienta a spatiului de memorie externa, actualizarea dificila a acestor date si lizibilitate redusa ca urmare a formatelor diferite.

Independenta intre date si prelucrari. Baza de date, ca imagine a unei anumite realitati, trebuie actualizata permanent. Acest lucru nu trebuie sa afecteze programele de prelucrare. Pentru aceasta trebuie ca fiecare program sa aiba o viziune proprie asupra BD

Realizarea de legaturi intre entitatile de date, care sunt indispensabile pentru exploatarea eficienta a sistemului informatic. Spre exemplu, in cadrul gestiunii aprovizionarii, trebuie asociat un furnizor la lista de produse pe care le vinde si invers, un produs la lista de furnizori, precizand conditiile de vanzare pentru un furnizor si un produs.

Integritatea datelor asigura fiabilitatea si coerenta bazei de date (BD). Pentru aceasta trebuie definite restrictii de integritate cum ar fi:

apartenenta la o lista de valori sau interval;

apartenenta la un anumit format;

reguli de coerenta cu alte date.

Securitatea datelor. Baza de date trebuie sa fie protejata impotriva unei distrugeri logice (anomalie de actualizare) sau fizice. Pentru aceasta exista instrumente care permit:

crearea unor puncte de repriza; altfel spus, salvarea din timp in timp a unor copii coerente ale bazei de date;

gestiunea unui jurnal de tranzactii; lista operatiilor realizate asupra bazei de date dupa ultimul punct de repriza.

Confidentialitatea datelor este asigurata prin proceduri de:

identificare a utilizatorilor prin nume sau cod;

autentificarea prin parole;

autorizarea accesului diferentiat prin drepturi de creare, consultare modificare sau stergere pentru anumite segmente de date.

Partajarea datelor permite inlantuirea tranzactiilor solicitate simultan pe aceeasi inregistrare din baza de date, prin blocarea cererilor in asteptare si deservirea ulterioara a acestora.

1.2. Nivele si modele de reprezentare a datelor in bazele de date. Modelul relational

In demersul realizarii unei baze de date exista trei niveluri de perceptie a acesteia, modelul relational corespunzand nivelului logic. Aceste nivele sunt:

- extern, corespunzator utilizatorilor, care isi exprima cerintele informationale prin asa-numitele scheme externe (subscheme, fiecare subschema corespunzand viziunii fiecarui utilizator al bazei de date);

conceptual, aferent administratorului bazei de date, care se concretizeaza in schema conceptuala; este o abstractizare a unei parti din lumea reala;

intern, corespunzator programatorului, care realizeaza reprezentarea datelor pe suportul fizic; poarta numele de baza de date fizica;

Determinarea structurii unei baze de date se poate aborda ascendent, realizandu-se descrierea schemelor externe, urmata de elaborarea schemei conceptuale, sau descendent, definind mai intai schema conceptuala si deducand ulterior schemele externe posibil de obtinut.

a) Nivelul extern (schema externa)

La nivel extern, fiecare grup de utilizatori care manipuleaza datele poseda o anumita descriere a acestora. Aceasta descriere corespunde felului in care grupul vede baza de date in programele lui de aplicatii.

Modelul extern este cel mai apropiat de utilizator. Modelul extern corespunzator unui utilizator sau grup de utilizatori reprezinta ceea ce vede acesta din baza de date.

Modelul extern este derivat din modelul conceptual, putand prezenta deosebiri substantiale fata de acesta. Astfel un model extern cuprinde o parte a elementelor din modelul conceptual, dar poate contine si elemente care nu exista in modelul conceptual si nu au corespondent in baza de date fizica.

Fiecare schema externa trebuie sa se regaseasca in modelul conceptual.

b) Nivelul conceptual (modelul conceptual)

Modelul conceptual integreaza viziunile tuturor utilizatorilor asupra bazei de date. De asemenea acest tip de model este o descriere a continutului de informatie al bazei de date si nu cuprinde nici un fel de referire la modul de memorare al datelor sau al strategiei de acces la aceste date. Prin modelul conceptual este realizata independenta fizica a datelor. Modelului conceptual i se asociaza o transformare care defineste modul in care structura logica de date este transpusa in structura fizica de memorare. Aceasta este interfata dintre modelul intern si cel conceptual.

Nivelul conceptual este nivelul central care reflecta datele structurate astfel incat acestea sa poata fi preluate si prelucrate cu ajutorul unui SGBD.

Schema conceptuala sta la baza modelului conceptual care va permite definirea proprietatilor elementare ale obiectelor care intereseaza dintr-o intreprindere (de exemplu: model de pantof, culoare, marime etc.), gruparea acestora, in functie de criterii de omogenitate stabilite, in scopul descrierii obiectelor lumii reale (comanda, articole de incaltaminte, livrare) si a relatiilor dintre ele (cantitatea si pretul fiecarui articol livrat). Sunt definite regulile de care trebuie sa se tina seama in manipularea datelor existente.

c) Nivelul logic (modelul relational)

Definirea modelului relational

Modelul relational are la baza conceptul de relatie definit in teoria matematica a multimilor ca fiind o submultime a produsului cartezian al mai multor multimi: R M1×M2× . ×Mn

Familia de multimi pe care este definita relatia se numeste domeniu, iar daca M1 = M2 = . = Mn, relatia este omogena. Numarul n se numeste gradul relatiei (aritatea relatiei), un element al relatiei t = (m1, m2, . , mn) este numit tuplu, iar numarul de tupluri indica cardinalul relatiei.

Domeniul este o notiune mai cuprinzatoare decat atributul, reprezentand multimea tuturor valorilor posibile care definesc o anumita proprietate a unui obiect, spre deosebire de atribut, care reprezinta multimea valorilor existente la un moment dat in coloana pe care o desemneaza in cadrul relatiei. Intr-o relatie pot exista mai multe atribute care iau valori in aceleasi domenii.

Relatiile se reprezinta intr-o forma simpla prin tabele, supuse urmatoarelor restrictii:

- in fiecare coloana toate valorile sunt de acelasi fel;

- fiecare valoare este un numar sau un sir de caractere (nu trebuie sa fie grup sau ansamblu);

- ordinea liniilor in tabel nu este predefinita si nu sunt admise duplicate;

- coloanele sunt identificate prin nume distincte care reprezinta atributele relatiei.

Prelucrarea relatiilor se face prin algebra relationala sau calculul relational pe tuplu sau domeniu.

Algebra relationala

Operatorii relationali se pot grupa in operatori de baza, care pot genera toata clasa operatorilor relationali, si operatori auxiliari. Operatorii relationali de baza se impart in operatori de asamblare si operatori unari.

Operatorii de asamblare sunt operatori binari, care primesc la intrare doua relatii si genereaza la iesire o singura relatie. Acestia sunt: reuniunea, diferenta si produsul cartezian, care au aceeasi semnificatie ca si in teoria multimilor. Operatorii unari se aplica asupra unei relatii si genereaza o alta relatie. Din aceasta clasa fac parte proiectia si selectia.

Proiectia. Prin intermediul proiectiei, dintr-un tabel cu un anumit numar de coloane se obtine unul cu un numar mai mic de coloane.

Selectia. Prin operatorul de selectie, dintr-un tabel cu un anumit numar de coloane se obtine unul cu aceleasi coloane, dar cu un numar mai mic de randuri.

Operatorii auxiliari pot fi dedusi din setul de operatori de baza si sunt: compunerea (Join), intersectia si impartirea (diviziunea). Acestia joaca un rol foarte important in interogarea bazelor de date relationale. Spre exemplu, realizarea produsului cartezian este foarte costisitoare, ceea ce face ca acesta sa fie inlocuit cu operatorul de Join.

Compunerea conditionala (Join) a doua relatii R1 si R2 dupa calificatorul multiatribut Q este relatia E ale carei tupluri sunt cele ale produsului cartezian R1 x R2 care satisfac calificatorul Q. In functie de calificatorul Q se disting mai multe tipuri de compuneri:

daca Q este de forma Ai = Bj, se numeste echicompunere;

daca Q este de forma Ai ò Bj, unde ò = se numeste ø compunere;

daca Q este de forma Ai = Aj, se numeste autocompunere.

Compunerea naturala este o echicompunere pe R1 si R2 dupa toate atributele avand acelasi nume in R1 si R2, urmata de o proiectie care permite conservarea unuia dintre aceste atribute, egale ca nume.

Intersectia o dau relatiile R1 si R2 cu aceeasi schema, aceasta este o relatie E care contine tuplurile comune celor doua relatii.

Diviziunea relatiei R1 (A1, A2 . An) de grad (p+m) prin relatia R2 (Ap+1, . , Am) de grad m este relatia E (A1, A2, . , Ap) de grad p, formata din toate tuplurile care, concatenate cu fiecare tuplu din R2, da totdeauna un tuplu din R1.

Privita prin prisma modelului relational, baza de date apare ca o colectie de relatii (tabele) normalizate, in care fiecare coloana reprezinta un atribut distinct, iar fiecare rand, un tuplu distinct. Tuplurile unei relatii se pot identifica in mod unic prin intermediul valorilor unuia sau mai multor atribute (eventual toate atributele), care joaca rol de cheie primara a relatiei respective. Se numeste domeniu primar un domeniu pe care este definit un singur atribut drept cheie primara. Dandu-se doua relatii R1 si R2 cu atributele A1 si A2 chei primare definite pe acelasi domeniu primar D, spunem ca A1 este cheie externa, daca, utilizand o parte din valorile ei sau toate, putem regasi tuplurile relatiei R2. Altfel spus, un atribut al unei relatii este cheie externa, daca se regaseste pe post de cheie primara intr-o alta relatie.

Deoarece relatiile reflecta un anumit aspect din realitate, acestea se supun unor restrictii care sunt de doua tipuri:

- restrictii de integritate care depind de semantica valorilor;

- alte restrictii care se aplica asupra tuplurilor relatiei si nu asupra domeniilor, reflectand anumite corelatii de ordin valoric (egalitate, inegalitate).

O relatie este in forma normala 3 ( 3NF ) daca si numai daca este in 2NF si fiecare atribut noncheie nu este dependent tranzitiv pe cheia primara.

d) Nivelul intern (fizic)

Nivelul intern (modelul fizic) este cel ce corespunde structurii in care sunt stocate datele in interiorul masinii. Sunt specificate tabelele (fisierele) care le contin (nume, organizare, localizare etc.), componentele fiecarui fisier (lungime, campuri, plasare a acestora in cadrul fisierului), caile de acces la componentele tabelelor (indecsi, relatii, legaturi intre tabele).

De exemplu, o factura poate fi accesata direct datorita unui index realizat pe numarul acesteia, iar cantitatile facturate pot fi cunoscute creand o legatura intre tabelele 'Factura_livrare' si 'Produse_facturate', prin intermediul asocierii 'Se_factureaza'.

Se vor avea in vedere cerintele privind asigurarea protectiei datelor, atat din punct de vedere al continutului campurilor din tabele (verificarea si validarea valorilor campurilor la introducere, evitarea stergerii, din greseala sau din rea-vointa, a datelor importante, cu secvente de program special concepute), cat si in ceea ce priveste accesul utilizatorilor la baza de date (stabilirea drepturilor de acces trebuie sa se faca tinand cont de rolul, functia si sarcinile fiecarui utilizator).

1.3 Sistemul de Gestiune a Bazelor de Date (S.G.B.D.)

Un sistem de gestiune a bazelor de date constituie o interfata intre utilizatori si BD, care permite in principal crearea, actualizarea si consultarea acesteia. In acest context putem defini SGBD ca un instrument de asamblare, codificare, aranjare, protectie si regasire a datelor in BD.

Principalele functiuni pe care le indeplineste un SGBD sunt urmatoarele:

memorarea datelor pe suportul extern prin sistemul de gestiune a fisierelor;

gestiunea datelor si a legaturilor dintre ele in vederea unei regasiri rapide prin intermediul sistemului de acces (SGBD intern);

introducerea si extragerea datelor din / spre exterior in forma ceruta de utilizator prin intermediul SGBD-ului extern.

SGBD-ul poate prelucra mai multe cereri, provenind de la mai multe aplicatii, fiecare aplicatie avand propria schema logica de descriere a datelor.

Necesitatea descentralizarii sistemelor informatice, pe de o parte, si realizarea pe plan mondial a unor retele de calculatoare care permit conectarea mai multor baze de date intr-o retea, pe de alta parte, au dus la aparitia bazelor de date distribuite si, implicit, a Sistemelor de Gestiune a Bazelor de Date Distribuite (SGBDD). Bazele de Date Distribuite reprezinta un salt calitativ superior in evolutia bazei de date, deschizand noi perspective in proiectarea si realizarea sistemelor informatice. Un sistem de BDD este format dintr-o colectie de baze de date locale, amplasate geografic in puncte diferite (noduri ale unei retele de calculatoare) si legate logic prin relatii functionale, astfel incat pot fi vazute la nivel global ca o singura baza de date.

Obiectivele principale ale unui SGBDD sunt:

- definirea si manipularea colectiilor de date distribuite pe calculatoare diferite, ca un singur ansamblu logic (baza de date distribuita);

- distribuirea datelor trebuie sa se faca dupa criterii foarte variate care sa raspunda tuturor necesitatilor utilizatorilor;

- utilizatorii manipuleaza datele fara a cunoaste locul unde sunt memorate;

- pentru cresterea gradului de fiabilitate sau de performanta, datele pot fi duplicate pe mai multe sisteme, fara ca utilizatorii sa cunoasca acest lucru;

- asigurarea coerentei bazei de date in cazul operatiilor de actualizare si de reluare in caz de incidente la unul sau la mai multe din nodurile retelei;

- exploatarea bazei de date in regim de multiacces;

- controlul accesului la date.

II. APLICATIA

2.1 Structura tabelelor

Aplicatia realizata este o baza de date utilizata pentru mentinerea evidentei personalului didactic al unei scoli. Baza de date ofera informatii complete despre personalul institutiei respectiv nume, prenume, adresa, specialitatea, data nasterii, numar de telefon.

Aplicatia a fost realizata utilizand aplicatia Microsoft Visual Fox Pro 6.0, soft ce face parte din pachetul Microsoft Visual Studio 6.0. Acest pachet ruleaza pe sistemele de operare Windows 98, Windows 2000, Windows XP create de Microsoft.

Cerintele soft ale acestei aplicatii sunt date de existenta unui sistem de operare Windows si de programul Visual Fox Pro. Cerintele hard minime sunt existenta unui sistem cu microprocesor 486, memorie RAM minim 16 Mb, si 10Mb spatiu liber pe hard disk.

Baza de date realizata este o baza simpla. Programul program.prg utilizeaza un singur tabel respectiv tabelul Elevi_pers.dbf

fig. 1 Tabelul Elevi_pes.dbf

Acest tabel contine urmatoarele campuri: Nr_inreg - camp ce contine date de tip numeric de lungime 3, Nume - camp care contine date de tip sir de caractere de lungime 15, Prenume - camp care contine date de tip sir de caractere de lungime 15, Data_n - camp care contine date de tip data, Local - camp care contine date de tip sir de caractere de lungime 25, Judet - camp care contine date de tip sir de caractere de lungime 15, Specialit - camp care contine date de tip sir de caractere de lungime 20 si Nr_tel - camp care contine date de tip numeric de lungime 10.

Pentru introducerea datelor, folosim formularul din figura 2:

fig. 2 - Formularul Elevi_per

2.2 Structura meniului

Meniul contine mai multe sectiuni dupa cum va fi evidentiat mai jos:

ACTUALIZARE cu submeniurile "ADAUGARI", "MODIFICARI" si "STERGERI", submeniuri din care se pot realiza operatiile enumerate respectiv adaugarea unei noi inregistrari, modificarea sau stergerea unei inregistrari existente.

CAUTARI - sectiune care contine submeniurile Nr.INREG - care permite cautarea unei inregistrari in functie de numarul de ordine al acesteia si VIZUALIZARE care permite vizualizarea tabelului Elevi_pers.dbf pentru vizualizarea tuturor inregistrarilor bazei de date;

LISTARE - sectiune care permite vizualizarea a doua rapoarte ale bazei de date, rapoarte ce pot fi imprimate apoi.

IESIRE - aceasta sectiune permite iesirea din program catre Fox Pro sau catre sistemul de operare.

2.3 Programul

Pentru realizarea bazei de date am utilizat programul program.prg al carui listing este prezentat mai jos :

CLOSE ALL

CLEAR ALL

SET CLOCK TO 33,97

SET CLOCK ON

define window prima from 10,1 to 40,128 title '*** Evidenta Profesori *** ' SHADOW DOUBLE FOOTER ' A T E S T A T 2006'

set century on

clear

define window primas from 2,25 to 11,75 title '* * * Evidenta Profesori - Atestat 2006* * *' shadow double footer ' A T E S T A T 2006'

activate window primas

*set escape on

USE Evi_pers

USE Evi_pers INDEX Evi_personal

DEFINE MENU Personal

DEFINE PAD O1 OF Personal PROMPT ' Actualizare ' AT 1,4

DEFINE PAD O2 OF Personal PROMPT ' Cautari ' AT 1,19

DEFINE PAD O3 OF Personal PROMPT ' Listare ' AT 1,33

DEFINE PAD O4 OF Personal PROMPT ' Iesire ' AT 1,47

DEFINE POPUP V1 FROM 3,4 TO 7,12

DEFINE POPUP V2 FROM 3,15 TO 6,23

DEFINE POPUP V3 FROM 3,26 TO 6,33

DEFINE POPUP V4 FROM 3,37 TO 6,43

DEFINE BAR 1 OF V1 PROMPT 'Adaugari '

DEFINE BAR 2 OF V1 PROMPT 'Modificari '

DEFINE BAR 3 OF V1 PROMPT 'Stergeri '

DEFINE BAR 1 OF V2 PROMPT ' Nr.Inreg '

DEFINE BAR 2 OF V2 PROMPT 'Vizualizare'

DEFINE BAR 1 OF V3 PROMPT 'Lista1 '

DEFINE BAR 2 OF V3 PROMPT 'Lista2 '

DEFINE BAR 1 OF V4 PROMPT ' Fox Pro '

DEFINE BAR 2 OF V4 PROMPT ' Windows '

ON PAD O1 OF Personal ACTIVATE POPUP V1

ON PAD O2 OF Personal ACTIVATE POPUP V2

ON PAD O3 OF Personal ACTIVATE POPUP V3

ON PAD O4 OF Personal ACTIVATE POPUP V4

ON SELECTION POPUP V1 DO ACT

ON SELECTION POPUP V2 DO CAUT

ON SELECTION POPUP V3 DO LIST

ON SELECTION POPUP V4 DO IES

ACTIVATE MENU Personal

USE

USE

PROCEDURE ACT

CLEAR

DO CASE

*de aici incepe adaugarea inregistrarilor

CASE BAR()=1

*APPEND

ACTIVATE WIND PRIMA

*DEAC POPUP V1

SET TALK OFF

SET ECHO OFF

SET COLO TO G+/N

CLEAR

close databases

do while .T.

nr_in=0

@ 1,15 SAY 'INTRODUCERE NOI INREGISTRARI'

@ 2,2 SAY 'Introduceti numar de inregistrare sau 0 pentru STOP:';

GET nr_in PICTURE '999' range 0,

READ

IF nr_in=0

DEAC WIND PRIMA

* acti POPUP V1

Exit

ENDIF && nr_in=0

USE Evi_pers INDEX Evi_personal

SEEK str(nr_in)

IF .NOT. EOF()

SET TALK OFF

CLEAR

@ 3,10 SAY 'Atentie ! Numar existent in baza de date.'

@ 6,10 SAY 'Introduceti alt numar'

ENDIF && .NOT. EOF()

scatter memvar

USE Evi_pers INDEX Evi_personal

SEEK str(nr_in)

IF EOF()

*CLEAR

@ 4,10 SAY ' '

@ 6,10 SAY ' '

* APPEND BLANK

@ 3,2 say 'NR.INREGISTRARE:'

@ 3,18 get m.nr_inreg

@ 4,2 say 'NUME:'

@ 4,18 get m.NUME

@ 5, 2 SAY 'PRENUME:'

@ 5, 18 GET m.PRENUME

@ 6,2 SAY 'DATA NASTERI:'

@ 6,18 GET m.DATA_N

@ 7,2 SAY 'LOCALITATEc:D_la_flori'

@ 7,18 GET m.LOCAL

@ 8,2 SAY 'JUDETUL:'

@ 8,18 GET m.JUDET

@ 9,2 SAY 'SPECIALITATE:'

@ 9,18 GET m.SPECIALIT

@ 10,2 say 'TELEFON:'

@ 10,18 GET m.NR_TEL

@ 12,18 say 'Apasati ESC daca nu doriti sa salvati'

READ

IF LASTKEY() != 27

append blank

GATHER MEMVAR

REPLACE nr_inreg WITH nr_in

ENDIF

*DEACTIVATE WINDOW PRIMA

ENDIF

enddo & .T.

READ

* de aici incepe modificarea inregistrarilor

CASE BAR()=2

ACTIVATE WIND PRIMA

SET ECHO OFF

set talk off

SET COLO TO G+/N

CLEAR

do while .T.

nr_in=0

@ 1,15 SAY 'MODIFICARI'

@ 2,2 SAY 'Introduceti numar de inregistrare sau 0 pentru STOP:';

GET nr_in PICTURE '999' range 0,

READ

IF nr_in=0

DEAC WIND PRIMA

Exit

ENDIF && nr_in=0

USE Evi_pers INDEX Evi_personal

SEEK nr_in

IF .NOT. EOF()

SET TALK OFF

@ 3,2 say 'NR.INREGISTRARE:'

@ 3,18 get nr_inreg

@ 4,2 say 'NUME:'

@ 4,18 get NUME

@ 5, 2 SAY 'PRENUME:'

@ 5, 18 GET PRENUME

@ 6,2 SAY 'DATA NASTERI:'

@ 6,18 GET DATA_N

@ 7,2 SAY 'LOCALITATEc:D_la_flori'

@ 7,18 GET LOCAL

@ 8,2 SAY 'JUDETUL:'

@ 8,18 GET JUDET

@ 9,2 SAY 'SPECIALITATE:'

@ 9,18 GET SPECIALIT

@ 10,2 say 'TELEFON:'

@ 10,18 GET NR_TEL

READ

ENDIF && .NOT. EOF()

USE Evi_pers INDEX Evi_personal

SEEK nr_in

IF EOF()

clear

@ 9,16 say 'Numarul de inregistrare nu exista'

ENDIF

enddo & .T.

****de aici incepe stergerea inregistrarilor

CASE BAR()=3

ACTIVATE WIND PRIMA

SET ECHO OFF

set talk off

SET COLO TO G+/N

CLEAR

do while .T.

nr_in=0

rasp=0

@ 1,15 SAY 'STERGERE INREGISTRARI'

@ 2,2 SAY 'Introduceti numar inregistrare sau 0 pentru STOP:';

GET nr_in PICTURE '99999' range 0,

READ

IF nr_in=0

DEAC WIND PRIMA

Exit

ENDIF && nr_in=0

USE Evi_pers INDEX Evi_personal

SEEK nr_in

IF .NOT. EOF()

SET TALK OFF

@ 3,2 say 'NR.INREGISTRARE:'

@ 3,18 get nr_inreg

@ 4,2 say 'NUME:'

@ 4,18 get NUME

@ 5, 2 SAY 'PRENUME:'

@ 5, 18 GET PRENUME

@ 6,2 SAY 'DATA NASTERI:'

@ 6,18 GET DATA_N

@ 7,2 SAY 'LOCALITATEc:D_la_flori'

@ 7,18 GET LOCAL

@ 8,2 SAY 'JUDETUL:'

@ 8,18 GET JUDET

@ 9,2 SAY 'SPECIALITATE:'

@ 9,18 GET SPECIALIT

@ 10,2 say 'TELEFON:'

@ 10,18 GET NR_TEL

*READ

*b= ' '

*@3,1 say 'Listati (Y/N) : ' get b pict '@!'

*read

*if upper(b)='Y'

* !copy anexa1.lst prn:

*endif

*deac wind a

*@1,0 clear to 24,79

b= ' '

@ 14,2 SAY 'Doriti stergerea acestei inregistrari[D / N]: ' get b pict '@!'

*GET rasp PICTURE '9' range 0,

READ

if upper(b) = 'D'

dele for nr_inreg=nr_in

pack

@16,16 say 'Inregistrarea a fost stearsa!'

endif

ENDIF && .NOT. EOF()

USE Evi_pers INDEX Evi_personal

SEEK nr_in

IF EOF()

clear

@ 6,16 say 'Numarul nu exista!'

ENDIF

enddo & .T.

ENDCASE

PROCEDURE CAUT

DO CASE

CASE BAR()=1

SET ECHO OFF

set talk off

SET COLO TO G+/N

CLEAR

do while .T.

nr_in=0

ACTI WIND PRIMAS

@ 2,2 SAY 'Introduceti numar inregistrare sau 0 pentru STOP:' GET nr_in PICTURE '9999' range 0,

READ

IF nr_in= 0

DEAC WIND PRIMAS

exit

ENDIF && nr_in=0

BROW FOR nr_inreg= nr_in

enddo & .T.

ENDCASE.

* de aici incepe vizualizarea inregistrarilor

DO CASE

CASE BAR()=2

SET ECHO OFF

set talk off

SET COLO TO G+/N

USE evi_pers.dbf EXCLUSIVE

brow

IF LASTKEY() != 27

endif

ENDCASE

*de aici incepe procedura de listare

PROCEDURE LIST

DO CASE

CASE BAR()=1

*SET ECHO OFF

*set talk off

*SET COLO TO G+/N

*CLEAR

*do while .T.

REPO FORM evi_per.frx PREVIEW

*enddo & .T.

endcase

DO CASE

CASE BAR()=2

*SET ECHO OFF

*set talk off

*SET COLO TO G+/N

*CLEAR

*do while .T.

REPO FORM Evi_perso PREVIEW

*enddo & .T.

endcase

PROCEDURE IES

DO CASE

* iesirea in Fox

CASE BAR()=1

DEACTIVATE MENU Personal

CLOSE ALL

CLEAR

RETURN

*iesirea din Fox

CASE BAR()=2

QUIT

ENDCASE

RETURN

ACTIVATE MENU Personal

USE

III CONCLUZII

Acest atestat contine o singura baza de date ce detine date despre evidenta cadrelor didactice dintr o unitate de invatamant.

In baza de date sunt retinute informatii ale profesorilor privind numele, data nasterii, adresa si numarul de telefon.

Aplicatia in Fox Pro nu este relativ dificil de realizat pentru ca are in prim plan realizarea unei baza de date capabila sa retina informatiile necesare si a unor proceduri care sa faciliteze accesul rapid la informatii.

Programul aplicatiei este conceput pentru a facilita accesul rapid la date despre cadrele didactice existente intr o unitate de invatamant.   

Programul este usor de utilizat, avand o structura simpla si eficienta. El poate fi utilizat in cadrul unei unitati scolare, astfel fiind nu numai o aplicatie utila pentru obtinerea atestatului la informatica, ci si putand avea o intrebuintare utila.





Politica de confidentialitate





Copyright © 2024 - Toate drepturile rezervate