View
75
Download
0
Category
Preview:
Citation preview
LICEUL .........
ATESTAT
Evidenta elevilor într-un liceu
Elev:
Atestat Visual FOXPRO – Evidenta elevi liceu
Proiectul se numeşte LICEU şi conţine următoarele componente:
2
Atestat Visual FOXPRO – Evidenta elevi liceu
3
Atestat Visual FOXPRO – Evidenta elevi liceu
PROFILE
CLASE
- stocheaza date despre clasele existente in cadrul liceului
MATERII
- stocheaza date despre disciplinele din planul din invatamant aferent unei clase dintr-un an scolar.
4
Nume câmp
Tip Dimensiune
Codprofil Caracter
8
Denprofil Caracter
20
Nume câmp
Tip
Dimensiune
clasa c 8anuniversitar
C 10
codprofil c 8
Atestat Visual FOXPRO – Evidenta elevi liceu
ELEVI
- stocheaza date despre elevi
NOTE
- notele primite de elevi.
5
Nume câmp Tip
Dimensiune
codmaterie N 10Numematerie
C 20
Clasa C 10Nrore N 4numeprofesor
c 20
Nume câmp
Tip
Dimensiune
Codelev N 10Nume C 20Prenume C 20Adresa C 30Datanasterii
D 10
clasa C 10cnp C 13
Nume câmp
Tip
Dimensiune
Codnota C 10Codelev N 10Nota N 4Datanota D 10Codmaterie N 10
Atestat Visual FOXPRO – Evidenta elevi liceu
DIPLOME
- inregistreaza diplomele primite de elevi la sfarsitul anilor de scoala sau cu alte ocazii (limpiade,concursuri..)
6
Nume câmp
Tip
Dimensiune
Nrdiploma N 10Diploma C 20Datadiploma
D 10
Eveniment C 20Codelev N 10
Atestat Visual FOXPRO – Evidenta elevi liceu
MOD DE LUCRU:(Project manager-Data-local views-New view)
In fereastra view designer :-se aleg tabele sursa (click dreapta-add table) si se stabilesc relatiile intre acestea care apar in pagina Join. -se selecteaza campurile ce se afiseaza din pagina Fields. Se pot crea si campuri calculate folosind functiile si operatorii Foxpro in caseta text Functions and Expressions.-se scriu eventuale conditii in pagina Filter.-se aleg campurile de sortare in pagina Order By-in cazul unor grupari se aleg si campurile de grupare (pentru calcule de total in general) in paginaGroup By
VELEVI
- afiseaza elevii pe clase .
Codul SQL:
SELECT Profile.denprofil, Clase.clasa, Clase.anuniversitar,; Elevi.codelev, Elevi.nume, Elevi.prenume, Elevi.adresa, Elevi.datanasterii; FROM elevi!profile INNER JOIN elevi!clase;
7
Atestat Visual FOXPRO – Evidenta elevi liceu
INNER JOIN elevi!elevi ; ON Clase.clasa = Elevi.clasa ; ON Profile.codprofil = Clase.codprofil; ORDER BY Elevi.nume
Similar au fost create si celelalte obiecte de tip vedere (view)
VDIPLOME
- afiseaza lista diplomelor primite de elevi
VMATERII
- afiseaza lista materiilor din planul de invatamant
VNOTE
- afiseaza catalogul cu note pe studenti
VMEDIIMATERII
- afiseaza mediile pe elevi si materii
SELECT Elevi.codelev, Elevi.nume, Elevi.clasa, Elevi.prenume,; Note.codmaterie, Materii.numematerie, AVG(Note.nota) AS medie; FROM elevi!elevi INNER JOIN elevi!note; INNER JOIN elevi!materii ; ON Note.codmaterie = Materii.codmaterie ;
8
Atestat Visual FOXPRO – Evidenta elevi liceu
ON Elevi.codelev = Note.codelev; GROUP BY Elevi.codelev, Elevi.nume, Elevi.prenume, Elevi.clasa,; Note.codmaterie, Materii.numematerie
VMEDIIAN
- afiseaza mediile pe elevi (de an)
PRINCIPAL.prgon shutdown do iesireset date to britishset path to c:\_screen.caption="Aplicatie evidenta elevi in liceu"do meniu.mprdo form principalread events
IESIRE.prg
clear eventsclose data allset sysmenu to defaultquit
9
Atestat Visual FOXPRO – Evidenta elevi liceu
MOD DE LUCRU:
- Project manager-Documents-Forms-New Form- folosind Form Controls ToolBar se adauga etichete , casete text, combobox-uri…..pentru care se seteaza mai apoi eventuale proprietati (click dreapta pe control-properties)- click dreapta pe formular-Data Environment-Click dreapta-Add- se adauga tabele pe care se bazeaza formularul. Campurile din Data Environment se pot trage pe suprafata formularului generandu-se automat controale cu proprietatea ControlSource avand valoarea de genul tabel.camp- se adauga butoane sau alte controale pentru diverse actiuni (adaugare,stergere, listare, navigare,cautare) si prin dublu click se scriu comenzile aferente controlului respective in cazul aparitiei unui anumit eveniment (obiectul command1 si evenimentul Click)- se salveaza si se inchide formularul.
PRINCIPAL.SCX
10
Atestat Visual FOXPRO – Evidenta elevi liceu
Deschidere formular do form "CLASE"Deschidere raport REPORT FORM RELEVI PREVIEWIesire clear events
set sysmenu to defaultclose data allTHISFORM.RELEASE()
PROFILE.SCX
Proprietati DataSession: 2 – Private Data Session
Data environment Profile
Navigare <<
<
>
select profilego topthisform.combo1.refreshthisform.refresh
select profileskip -1if bof()messagebox("prima inregistrare",64,"Atentie!")go topendif
thisform.refresh
select profile11
Atestat Visual FOXPRO – Evidenta elevi liceu
>>
skip 1if eof()messagebox("ultima inregistrare",64,"Atentie!")go bottomendif
thisform.refresh
select profilego bottomthisform.combo1.refreshthisform.refresh
Adaugare select profileappend blankthisform.refresh
Stergere select profiledeletepackthisform.refresh
Listare posturi select profilebrowse
Iesire thisform.release
12
Atestat Visual FOXPRO – Evidenta elevi liceu
CLASE.SCX
COD SURSAProprietati DataSession: 2 – Private Data Session
Data environment clase, profile
Navigare clase Idem profile.scx
ComboBox in Grila pentru selectare valori chei externe(profilul clasei)
Se seteaza urmatoarele proprietati:- -BoundColumn:2- -BoundTo=true- -ControlSource: clase.codprofil- -RowSourceType: 6-Fields- -RowSource: profile.profil,codprofil- -Style:2-Dropdown List
Pentru combobox in grila Click dreapta pe grid1 in coloana dorita, se insereaza un combobox pentru care se stabileste proprietatea CurrentControl al unei coloane din grila la un combobox adaugat in modul Edit al gridului plus celelalte setari de mai sus.
Adaugare select claseappend blankthisform.refresh
Stergere select clasedeletepackthisform.combo1.requery()thisform.refresh
Cautare select CLASEseek thisform.Combo1.value
13
Atestat Visual FOXPRO – Evidenta elevi liceu
thisform.refresh
Listare functii select clasebrowse
Iesire thisform.release
Similar cu formularul CLASE s-au creat si formularele :
DIPLOME
MATERII
14
Atestat Visual FOXPRO – Evidenta elevi liceu
Formularul ELEVI este un formular de tip MASTER-DETAIL (one to many) , care permite vizualizarea si actualizarea datelor despre elevi, precum si actualizarea notelor acostora prin intermediul unei grile:
Proprietati DataSession: 2 – Private Data Session
Data environment Elevi, clase, note , materii
Navigare elevi Idem profile.scx
ComboBox in Grila pentru selectare valori chei externe(Codmaterie)
Se seteaza urmatoarele proprietati:- -BoundColumn:2- -BoundTo=true- -ControlSource: note.codmaterie- -RowSourceType: 6-Fields- -RowSource: materii.numematerie,codmaterie- -Style:2-Dropdown List
Pentru combobox in grila Click dreapta pe grid1 in coloana dorita, se insereaza un combobox pentru care se stabileste proprietatea CurrentControl al unei coloane din grila la un combobox adaugat in modul Edit al gridului plus celelalte setari de mai sus.
Adaugare elev
15
Atestat Visual FOXPRO – Evidenta elevi liceu
select eleviselect count(*) from elevi into array numar if numar=0 then cod=1 else select max(codelev)+1 from elevi into array cod endif insert into elevi(codelev,ADRESA,NUME,PRENUME,CLASA,CNP) values(cod,"","","","","")thisform.refresh
Stergere elev select elevideletepackthisform.refresh
Cautare elev select ELEVISET ORDER TO CODELEVseek thisform.CMBELEV.valuethisform.refresh
Adaugare nota select max(codnota)+1 from note into array cnmaxinsert into note(codnota,codelev,codmaterie) values(cnmax,elevi.codelev,0)thisform.Grid1.recordsource="note"thisform.refresh
Stergere nota select notedeletepackthisform.Grid1.recordsource="note"
select eleviset order to codelevseek thisform.cmbelev.valuethisform.refresh
Listare note select notebrowse
Iesire thisform.release
16
Atestat Visual FOXPRO – Evidenta elevi liceu
MOD DE LUCRU:
- Project manager-Documents-Reports-New report- click dreapta pe raport-Data Environment-Click dreapta-Add- se
adauga tabela sau vederea pe care se bazeaza raportul. Campurile din Data Environment se pot trage pe suprafata formularului generandu-se casete a caror expresie de calcul este de forma table.camp.
- Casetele din raport sunt legate la tabelele din Data Environment prin proprietatea ControlSource= alias.camp
- folosind Report Controls ToolBar se adauga etichete , campuri (din data environment sau calculate), imagini, linii …..pentru care se aplica ulterior elemente de formatare prin dublu click sau folosind meniul Format.
- Raportul contine mai multe zone: o Title (titlul raportului si eventual data raportului: date()),o Detail (zona de date : campurile din Data Environment sau
calculate). Pentru a insera un camp calculat se insereaza de pe bara Field si apoi prin dublu click apare fereastra Report Expression, in caseta Expression editandu-se fomula de calcul.
o Page Header (antetul paginii-informatii care se repeta pe fiecare pagina- cap de table cu numele campurilor afisate in zona de detalii)
o Page Footer (subsol pagina- aici se trece numarul paginii : "Page " + ALLTRIM(STR(_PAGENO))
o Group Header (antet de grup in cazul in care se grupeaza pe un anumit camp)
o Group footer (subsol de grup)- se pot scrie eventuale proceduri eveniment- se salveaza si se inchide formularul.
Pentru deschidere rapoarte:
REPORT FORM numeraport PREVIEW for conditii
17
Atestat Visual FOXPRO – Evidenta elevi liceu
RDIPLOME.frx
RELEVI.frx
18
Atestat Visual FOXPRO – Evidenta elevi liceu
RMATERII.frx
19
Atestat Visual FOXPRO – Evidenta elevi liceu
RNOTE.frx
20
Atestat Visual FOXPRO – Evidenta elevi liceu
RMEDIIMATERII.frx
RMEDIIAN.frx
21
Atestat Visual FOXPRO – Evidenta elevi liceu
MOD DE LUCRU:
-Project manager – Others – Menus – New Menu – Menu DesignerSe stabilesc meniurile barei de meniuri folosind butonul Insert si completand rubricile Prompt(textul ce apare pe ecran in meniu),result (daca se executa o comnda sau se activeaza un submeniu). Pentru elemntele cu resultat comanda se scrie in caseta text urmatoare comanda ce se va executa , iar pentru elementele submeniu se apsa butonul EDIT din dreapta cuvantului Submenu (RAPOARTE) si se stabilesc mai departe elemntele submeniului respective.
Menu.mnx
22
Atestat Visual FOXPRO – Evidenta elevi liceu
23
Recommended