Documente Academic
Documente Profesional
Documente Cultură
EVIDENTA ANGAJATILOR
Clasa a XII a D
EVIDENTA ANGAJATILOR
&roiectul nostru de atestat poate fi considerat o aplicatie care sa tina evidenta angajatilor unei mici firme.
$m folosit facilitatile oferite de mediul de programare Micro oft !i ual C""# pentru a crea o interfata prietenoasa aplicatiei mele, insa in realizarea proiectului am utilizat, in principal, principiile programarii invatate in orele de informatica. /icrosoft 8isual '99 permite $rogramarea orientata programare se bazeaza pe cla e. O cla a este un tip de date care define te o multime de valori i o$eratiile care actionea&a a u$ra ace tor valori. 8alorile se numesc date mem%ru# iar operatiile se numesc functii membru metode". ,ntr!un proiect creat cu ajutorul instrumentului A$$ 'i&ard un adevarat :vrajitor; oferit de 8isual '99" avem clase predefinite de e#emplu, in aplicatia mea, e#ista clasele $re o%iecte. $cest tip de
CProiectDlg si CA%outDlg, generate odata cu proiectul" si clase generate in momemtul in care se adauga aplicatiei resurse de tip dialog CDatePer onale 5 asociata resursei ,DD<D,$-O61 ce permite introducerea unui datelor personale pentru un angajat, CFi ! asociata resursei ,DD<D,$-O6+ ce permite specificarea numelui unui fisier din care se va face preluarea unor date, COm 5 asociata resursei ,DD<D,$-O62 ce permite introducerea numelui unui angajat ce va fi cautat in :baza de date;, CPa ! asociata resursei
,DD<D,$-O6% in care va fi introdusa parola ce permite utilizarea aplicatiei, CSal 5 asociata resursei ,DD<D,$-O6. utilizata pentru a putea modifica salariul angajatilor. 0oate aceste
clase sunt generate automat de $pp(izard, insa eu le!am putut dezvolta prin adaugarea de date si metode membre". &entru a pastra datele personale ale fiecarui angajat in parte am definit o tructura
tagOm cu ajutorul careia se pot retine angajatii si apoi am declarat un masiv m(angAngajati)*+, pentru a retine numarul ma#im deangajati ai firmei. truct tagOm CString Nume. int nServciu. int n!ir ta. dou%le dSalariu. long lTelefon. /. 'u ajutorul unui control ar%ore, se vor afisa angajatii, grupati pe servicii, iar cu ajutorul unui control li ta se va afisa lista tuturor angajatilor cu informatii suplimentare: varsta si salariu. 'u ajutorul unui control de ti$ li ta derulanta se pot selecta operatiile aplicatiei: Cumul alarii# Angajare# Concediere# Modificare Preluare date din fi ier. &entru aceste operatii asupra vectorilor. ,n randurile urmatoare prezint cateva din aceste functii.
00functie ce terge un element dintr1un vector 2 elementul de $e $o&itia $o&
void CProiectDlg::sterg(tagOm v[50], int &dim, int poz) { or(int i!poz"i#dim$%"i&&) v[i]!v[i&%]" dim$$" '
00fct intoarce $o& in vector o omului cautat au 134 daca ace ta nu e5i ta
int CProiectDlg::ca(tare(tagOm v[50],int dim, tagOm om) { or(int i!0"i#dim"i&&) { v[i])s*(me)+a,e-pper()" om)s*(me)+a,e-pper()" i (v[i])s*(me!!om)s*(me &&v[i])n.ervci(!!om)n.ervci() ret(rn i" ' ret(rn $%" '
void CProiectDlg::date/isier() { i (dlg/)Do+odal()0!1DC2*C34) { stream (dlg/)m5 is,ios::in)" c6ar n(me[%00]" C.tring 6" int 7" 887" or(int i!0"i#7"i&&) { 88n(me" m5ang2nga9ati[m5n*(mar])s*(me)/ormat(:;s:,n(me)" 88m5ang2nga9ati[m5n*(mar])n.ervci(" 88m5ang2nga9ati[m5n*(mar])n<irsta" 88m5ang2nga9ati[m5n*(mar])d.alari(" 88m5ang2nga9ati[m5n*(mar])l=ele on" m5n*(mar&&"
&I&LIOGRA'IE
1" D$0$ S0=>'0>=ES! $ &SE>DO'ODE $&&=O$'? (,0? '99 Ric(ard '" Gilber)* &e(rou+ A" 'orou+an
2" @>AD$/EA0$-S O@ D$0$ S0=>'0>=ES ,A ' Ellis ,oro-it+* .arta/ .a(ni* .usan Anderson 'omputers Scince &ress, Ae) Bor2, 1**%
%" D$0$ S0=>'0>=ES $AD $-6O=,0?/S 0" Mell(orn Springer 8erlag, 1*C.
." 0=$0$0 DE &=O6=$/$=E$ '$-'>-$0O$=E-O=. SO=0$=E S, '$>0$=E. D"E"0nut( Editura tehnica Ducuresti, 1*EF
+" $A$-,G$ S, S,A0EG$ $-6O=,0/,-O= Leon Li$o$s1i* ,oria Geor)escu Editura Stiintifica, Ducuresti 1*CF