Bazele de Date

CUPRINS

Introducere …………………………………………………………………….. Pagina 3

Capitolul 1: Noțiuni introductive despre bazele de date ………………… Pagina 4

1.1. Scurt istoric al bazelor de date …………………………………………….Pagina 4

1.2. Definirea bazelor de date ………………………………………………. Pagina 6

1.3. Sisteme de baze de date …………………………………………………. Pagina 7

1.4. Nivelul de organizare a datelor într-o bază de date …………………….. Pagina 8

1.5. Modelarea la nivel logic a datelor într-o bază de date ……………………Pagina 8

1.6. Conceptul de sistem de gestiune a bazelor de date ……………………….Pagina 10

1.7 Abordarea conceptuală a cadrului organizatoric și legislativ al salarizării .Pagina 14

Capitolul 2 Prezentarea Agentului economic …………………………….Pagina 19

2.1 Descrierea firmei ………………………………………………………… Pagina 19

2.2 Descrierea principalelor activități ………………………………………Pagina 17

2.3 Structura organizatorica a agentului economic ………………………… Pagina 23

Capitolul 3. Studiu de caz ………………………………………………….Pagina 28

3.1 Prezentarea aplicației ……………………………………………………. Pagina 28

3.2 Prezentarea tabelelor ……………………………………………………. Pagina 28

3.3 Prezentarea interfeței …………………………………………………….. Pagina 31

Concluzii finale …………………………………………………………….. Pagina 52

Bibliografie …………………………………………………………………..Pagina 54

Introducere

Resursa umană este fără îndoială cea mai importantă resursă din cadrul unei companii.

Utilizarea eficientă a forței de muncă și posibilitățile de evaluare a angajaților, realizarea optimă a proceselor de recrutare, derularea unor programe adecvate pentru trainingul personalului – sunt numai câteva din elementele care concură la succesul unei afaceri.

Managementul resurselor umane este “câmpul de manevră” cel mai important pentru creșterea profitabilității companiei. În acest context, utilizarea unor sisteme informatice pentru derularea proceselor informaționale legate de resursele umane a devenit o cerință obligatorie.

Sistemele informatice pentru resursele umane au înregistrat o evoluție importantă în ultimii ani, datorită necesității unei evidențe clare a resursei umane existente la un moment dat în firmă. În cazul firmelor mici, sau cele aflate în perioada de start-up, cu un număr mic de salariați , gestionarea salariaților și calculul salariilor , se preferă a se realiza cu ajutorul unui singur program , care sa aibă o bază de date comună, și care să ofere cât mai multe utilități: calculul automat al salariilor, calculul automat al contribuțiilor către stat, ore normale, ore suplimentare, ore de noapte, prime, sporuri, rețineri, facilități de administrare a personalului, cunoașterea în orice moment a costurilor salariale la nivel de firmă, detalii despre angajare , date despre angajat.

Lucrarea de față are ca obiectiv realizarea unui astfel de program de gestiune a salariaților și afișarea departamentelor și a funcțiilor existente în societatea comerciala S.C. IDEEA PROIECT S.R.L. București.

Necesitatea utilizării acestui gen de program a apărut tocmai datorita extinderii si dezvoltării afacerii, cu scopul de a optimiza activitatea persoanelor care se ocupă cu calculul salariilor si evidenta personalului, de a crește randamentul departamentului resurse umane.

Se dorește crearea unei baze de date care să poată înlesni corelarea cât mai bună a raportului muncă – responsabilitate – retribuție.

Capitolul 1

Noțiuni introductive despre bazele de date

1.1. Scurt istoric al bazelor de date

Primele baze de date au fost dezvoltate pe sisteme mainframe și au fost manipulate de oameni special pregătiți pentru a gestiona aceste sisteme. Aceste baze de date au fost simple S.G.B.D.-uri. Primul S.G.B.D.R. a fost lansat de corporația Oracle și folosea sistemul de interogare S.Q.L. Deși versiunea originală a fost dezvoltată pentru alt tip de sisteme, Oracle a fost unul dintre primii furnizori care a lansat o versiune pentru sistemele PC pe sistem de operare MS-DOS.

La jumătatea anilor 80, firma Sybase a lansat propriul său S.G.B.D.R. numit S.Q.L.Server. Acesta conținea biblioteci client pentru accesul la baza de date. Asigurând suportul pentru proceduri rezidente (mai târziu denumite proceduri stocate) și o interoperabilitate sporită cu diverse tipuri de rețele S.Q.L.-Server a devenit un produs de succes cu precădere in mediile client/server. Odată cu apariția sistemelor PC au apărut și primele aplicații de baze de date ce foloseau un singur fișier pentru a stoca toată informația din baza de date. Aceste aplicații erau de tip xBase, un limbaj care s-a răspândit foarte repede, fiind folosit în special pentru manipularea datelor.

Sistemele care au folosit xBase au fost: dBase, FoxBase și FoxPro. Aceste programe Rulau sub MS-DOS și, firesc, împărtășeau limitările acestuia.

La începutul anilor 90, mai exact în 1992 firma Microsoft lansează aplicația Access, aplicație care se bazează în mare parte pe logica FoxPro, licență achiziționată de Microsoft în 1989. În scurt timp Access devine cea mai folosită aplicație de baze de date de tip „flat file”de pe sistemele PC.

În prezent Access ajuns la a VI-a versiune denumită Access 2002 integrată în pachetul de aplicații Microsoft Office XP. Începând cu această versiune s-a schimbat sistemul de stocare, aplicația fiind pregătită să fie scalată către o bază de date S.Q.L.-Server.

Totodată începând cu versiunea a III-a i s-a adăugat un limbaj de programare dedicat numit Visual Basic for Applications (denumit în continuare VBA), bazat pe limbajul de programare Visual Basic. Prin intermediul VBA se pot manipula datele mai ușor, se pot folosi automatisme pentru diverse interogări, afișări, etc.

Începând cu versiunea a V-a (Access 2000) limbajul integrat, VBA este compatibil cu VB, dar și cu limbajul folosit de Microsoft S.Q.L.-Server. La începutul anului 2003 compania Microsoft a anunțat lansarea Visual Studio for Applications, prima tehnologie care livrează capabilități de personalizare a aplicațiilor integrate în pagini Web.

În ultimul deceniu, mediul economic a suferit o serie de schimbări, cele mai semnificative referindu-se la:

comportamentul consumatorului, care a devenit mult mai exigent, mai bine informat, acordând o mai mare atenție timpului dedicat cumpărăturilor;

saturarea pieței. În țările dezvoltate, aproape orice persoană adultă posedă cont bancar, cărți de credit, astfel încât extinderea pieței serviciilor bancare este foarte dificilă. Aceeași situație se înregistrează și la automobile, polițe de asigurare, alimente de bază;

noile segmente de piață, respectiv diferitele grupuri etnice;

noile metode de marketing și canale de distribuție, precum marketingul direct, comerțul electronic, etc.;

ciclul de viață scurt al celor mai multe dintre produse;

creșterea competiției și a riscului în afaceri.

Consecința a acestor transformări petrecute de-a lungul ultimelor decenii, asupra civilizației umane, în general si a mediului economic, în particular, se impune tot mai pregnant necesitatea stocării informației economice într-o manieră care să permită accesul rapid, precum si posibilitatea de a extrage si a evidenția in mod inteligent doar informația solicitată.

O organizare sistematică a informațiilor este oferită de bazele de date, care asigură condițiile necesare pentru consemnarea datelor, păstrarea lor și un acces optim la acestea, și tind să devină totodată principalul rezervor de informații al oricărei organizații.

1.2. Definirea bazelor de date

Baza de date reprezintă un ansamblu de date integrat, anume structurat și dotat cu o descriere a acestei structuri. Descrierea structurii poartă numele de dicționar de date sau metadate și crează o interdependență între datele propriu-zise și programe.

Baza de date poate fi privită ca o colecție de fișiere interconectate care conțin nucleul de date necesare unui sistem informatic. Astfel, poate fi considerată drept un model al unor aspecte ale realității unei unități economice, modelată prin intermediul datelor. Diferitele obiecte din cadrul realității ce prezintă interes sunt denumite clase sau entități. Pentru aceste obiecte sunt achiziționate și memorate date referitoare la diferite caracteristici (atribute). Baza de date se constituie ca un ansamblu intercorelat de colecții de date, prin care se realizează reprezentarea unei realități.

Datele constituie orice mesaj primit de un receptor, sub o anumită formă.

Informațiile reprezintă cantitatea de noutate adusă de un mesaj din exterior(realitate).

Un fișier este un ansamblu de înregistrări fizice, omogene din punct de vedere al conținutului și al prelucrării.

O înregistrare fizică este o unitate de transfer între memoria internă și cea externă a calculatorului.

O înregistrare logică este unitatea de prelucrare din punct de vedere al programului utilizator. O înregistrare se compune din câmpuri (atribute) care descriu anumite aspecte ale realității.

Câmpurile sunt înregistrări logice.

O baza de date trebuie să asigure:

• abstractizarea datelor (baza de date fiind un model al realității);

• integrarea datelor (baza de date este un ansamblu de colecții de date intercorelate, cu redundanță controlată);

• integritatea datelor (se referă la corectitudinea datelor încărcate și manipulate astfel încât să se respecte restricțiile de integritate);

• securitatea datelor (limitarea accesului la baza de date);

• partajarea datelor (datele pot fi accesate de mai mulți utilizatori, eventual în același timp);

• independența datelor (organizarea datelor să fie transparentă pentru utilizatori, modificările în baza de date să nu afecteze programele de aplicații).

1.3. Sisteme de baze de date

Sistemele de baze de date sau băncile de date reprezintă un sistem de organizare și prelucrare, respectiv teleprelucrare (prelucrare la distanță) a informației, constituit din următoarele 3 elemente:

• colecția de date aflate în interdependență

• descrierea datelor și a relațiilor dintre ele

• un sistem de programe care asigură exploatarea bazei de date (actualizare, interogare)

Arhitectura sistemului de baza de date este formată din următoarele componente (Figura 1.1):

• baza/bazele de date – reprezintă componenta de tip date a sistemului (colecțiile de date propriu-zise, indecșii);

• sistemul de gestiune a bazei/bazelor de date – ansamblul de programe prin care se asigură gestionarea și prelucrarea complexă a datelor și care reprezintă componenta software a sistemului de baze de date (Sistem de Gestiune a Bazelor de Date – SGBD);

• alte componente – proceduri manuale sau automate, inclusiv reglementări administrative, destinate bunei funcționări a sistemului, dicționarul bazei de date (metabaza de date) care conține informații despre date, structura acestora, elemente de descriere a semanticii, statistici, documentații, mijloacele hardware utilizate, personalul implicat.

Figura 1.1 Arhitectura sistemului de baza de date

1.4. Nivelul de organizare a datelor într-o bază de date

Datele dintr-o bază de date pot fi structurate pe 3 niveluri, în funcție de categoria de personal implicată:

• nivelul conceptual (global) – exprimă viziunea administratorului bazei de date asupra datelor.

Acestui nivel îi corespunde structura conceptuală (schema) a bazei de date, prin care se realizează o descriere a tuturor datelor, într-un mod independent de aplicații, ce face posibilă administrarea datelor.

• nivelul logic – exprimă viziunea programatorului de aplicație asupra datelor. La acest nivel se realizează o descriere a datelor corespunzătoare unui anumit program de aplicație.

• nivelul fizic – care exprimă viziunea inginerului de sistem asupra datelor.

Corespunde schemei interne a bazei de date prin care se realizează o descriere a datelor pe suport fizic de memorie.

1.5. Modelarea la nivel logic a datelor într-o bază de date

Modelul de date reprezintă ansamblul de concepte și instrumente necesare pentru a construi o schemă a bazei de date. Modelarea datelor poate viza totalitatea datelor din cadrul bazei de date (schema/arhitectura datelor) sau o parte a acestora (subscheme ale bazei de date). Schema și subschema bazei de date sunt modelele logice ale bazei de date, care au asociate principii generale pentru gestionarea/definirea (structurarea) datelor, manipularea și asigurarea integrității datelor, fără a reflecta modul de reprezentare și stocare a acestor date pe suportul de memorie (atributele modelului fizic).

Se cunosc mai multe tipuri de baze de date după modul de organizare, modul de dispunere pe suport magnetic a informației și a elementelor componente:

• modele primitive – datele sunt organizate la nivel logic în fișiere, structura de bază este înregistrarea, mai multe înregistrări fiind grupate în structuri de tip fișier;

• baze de date ierarhice – legăturile dintre date sunt ordonate unic, accesul se face numai prin vârful ierarhiei, un subordonat nu poate avea decât un singur superior direct și nu se poate ajunge la el decât pe o singură cale;

• baze de date în rețea – datele sunt reprezentate ca într-o mulțime de ierarhii, în care un membru al ei poate avea oricâți superiori, iar la un subordonat se poate ajunge pe mai multe cai;

• baze de date relaționale – structura de bază a datelor este aceea de relație – tabel, limbajul SQL (Structured Query Language) este specializat în comenzi de manipulare la nivel de tabel. Termenul relațional a fost introdus de un cercetător al firmei IBM dr. E. F. Codd în 1969 cel care a enunțat cele 13 reguli de bază necesare pentru definirea unei baze de date relaționale. Baza de date relațională reprezintă o mulțime structurată de date, accesibile prin calculator, care pot satisface în timp minim și într-o manieră selectivă mai mulți utilizatori.

Această mulțime de date modelează un sistem sau un proces din lumea reală și servește ca suport unei aplicații informatice;

• baze de date distribuite – sunt rezultatul integrării tehnologiei bazelor de date cu cea a rețelelor de calculatoare. Sunt baze de date logic integrate, dar fizic distribuite pe mai multe sisteme de calcul. Integrarea bazei de date distribuite se face cu ajutorul celor 3 tipuri de de scheme care sunt implementate:

1. schema globală – definește și descrie toate informațiile din baza de date distribuită în rețea;

2. schema de fragmentare – descrie legăturile dintre o colecție globală și fragmentele sale. Ea este de tipul unu la mai mulți și are forma unei ierarhii;

3. schema de alocare – descrie modul de distribuire a segmentelor pe calculatoarele nodurile) din rețea. Fiecare segment va avea o alocare fizică pe unul sau mai multe calculatoare. Schema de alocare introduce o redundanță minimă și controlată: un anumit segment se poate regăsi fizic pe mai multe calculatoare.

Utilizatorul unei asemenea baza de date o vede ca pe o bază de date unică, compactă (nivel logic), cu toate că în realitate ea este distribuită pe mai multe calculatoare legate în rețea (nivel fizic). Această organizare a dus la o creștere substanțială a vitezei de acces la o bază de date într-o rețea de calculatoare. Anumite date stocate pe un server local sunt mult mai rapid accesate decât dacă ele s- ar afla pe un server la distanță, unde baza de date ar fi fost stocată în întregime (nedistribuită);

• modele semantice – orientate spre obiecte. Aceste modele sunt orientate pe reprezentarea semnificației datelor. Structura de bază folosită pentru reprezentarea datelor este cea de clasă de obiecte definită prin abstractizare din entitatea fizică pe care o regăsim în lumea reală. Aici există entități simple și clase de entități care se reprezintă prin obiecte simple sau clase de obiecte, ordonate în ierarhii de clase și subclase. Acest tip de bază de date a apărut din necesitatea gestionării obiectelor complexe: texte, grafice, hărți, imagini, sunete (aplicații multimedia) și a gestionării obiectelor dinamice: programe, simulări.

1.6. Conceptul de sistem de gestiune a bazelor de date

Sistemele de gestiune a bazelor de date (SGBD) sunt sisteme informatice specializate în stocarea și prelucrarea unui volum mare de date, numărul prelucrărilor fiind relativ mic.

Termenul de bază de date se va referi la datele de prelucrat, la modul de organizare a acestora pe suportul fizic de memorare, iar termenul de gestiune va semnifica totalitatea operațiilor ce se aplică asupra datelor din baza de date.

Un SGBD trebuie să asigure următoarele funcții:

• definirea – crearea bazei de date;

• introducerea (adăugarea) datelor în baza de date;

• modificarea unor date deja existente în baza de date;

• ștergerea datelor din baza de date;

• consultarea bazei de date – interogare/extragerea datelor.

În plus un SGBD mai asigură și alte servicii:

• suport pentru limbaj de programare;

• interfață cât mai atractivă pentru comunicare cu utilizatorul;

• tehnici avansate de memorare, organizare, accesare a datelor din baza de date;

• utilitare încorporate: sistem de gestiune a fișierelor, liste, tabele etc.;

• “help” pentru ajutarea utilizatorului în lucrul cu baza de date.

Apariția și răspândirea rețelelor de calculatoare a dus la dezvoltarea SGBD-urilor în direcția multiuser: mai mulți utilizatori folosesc simultan aceeași bază de date.

Principalul avantaj al rețelelor a fost eficiența sporită de utilizare a resurselor sistemelor de calcul: la o bază de date aflată pe un server central au acces simultan mai mulți utilizatori, situați la distanță de server, de unde rezultă o bună utilizare a resurselor server-ului și economie de memorie datorată memorării unice a bazei de date.

Un sistem de gestiune a bazelor de date este dotat cu un limbaj neprocedural de interogare a bazei de date SQL care permite accesul rapid și comod la datele stocate în baza de date.

Un sistem de gestiune a bazelor de date este un ansamblu complex de programe care asigură interfața între o bază de date și utilizatorii acesteia. Sistemul de gestiune a bazelor de date este componenta software a unui sistem de baze de date care interacționează cu toate celelalte componente ale acestuia asigurând legătura și interdependența între ele.

1.6.1. Activitățile asigurate de sistemele de gestiune a bazelor de date

Un sistem de gestiune a bazelor de date trebuie să asigure următoarele activități:

• definirea și descrierea structurii bazei de date – se realizează printr-un limbaj propriu, limbaj de definire a datelor (LDD), conform unui anumit model de date;

• încărcarea datelor în baza de date – se realizează prin comenzi în limbaj propriu, limbaj de manipulare a datelor (LMD);

• accesul la date – se realizează prin comenzi specifice din limbajul de manipulare a datelor. Accesul la date se referă la operațiile de interogare și actualizare.

Interogarea este complexă și presupune vizualizarea, consultarea, editarea de situații de ieșire (rapoarte, liste, regăsiri punctuale).

Actualizarea presupune 3 operațiuni: adăugare, modificare efectuate prin respectarea restricțiilor de integritate ale BD și ștergere;

• întreținerea bazei de date – se realizează prin utilitare proprii ale SGBD;

• reorganizarea bazei de date – se face prin facilități privind actualizarea structurii de date și modificarea strategiei de acces. Se execută de către administratorul bazei de date;

• securitatea datelor – se referă la asigurarea confidențialității datelor prin autorizarea si controlul accesului la date, criptarea datelor.

1.6.2. Obiectivele unui SGBD

Un sistem de gestiune a bazelor de date are rolul de a furniza suportul software complet pentru dezvoltarea de aplicații informatice cu baze de date.

El trebuie să asigure:

• minimizarea costului de prelucrare a datelor,

• reducerea timpului de răspuns,

• flexibilitatea aplicațiilor și protecția datelor.

Pentru satisfacerea performanțelor enumerate, sistemul de gestiune a bazelor de date trebuie să asigure un minim de obiective.

1. Asigurarea independenței datelor – trebuie privită din două puncte de vedere:

ƒ independența logică – se referă la posibilitatea adăugării de noi tipuri de înregistrări de date sau extinderea structurii conceptuale, fără a determina rescrierea programelor de aplicație;

ƒ independența fizică – modificarea tehnicilor fizice de memorare fără a determina rescrierea programelor de aplicație.

2. Asigurarea redundanței minime și controlate a datelor – stocarea informațiilor în bazele de date se face astfel încât datele să nu fie multiplicate. Totuși, pentru a îmbunătăți performanțele legate de timpul de răspuns, se acceptă o anumită redundanță a datelor, controlată, pentru a asigura coerența bazei de date și eficiența utilizării resurselor hardware.

3. Asigurarea facilităților de utilizare a datelor – presupune ca sistem de gestiune a bazelor de date să aibă anumite componente specializate pentru:

• folosirea datelor de către mai mulți utilizatori în diferite aplicații – datele de la o aplicație

trebuie să poată fi utilizate și în alte aplicații.

• accesul cât mai simplu al utilizatorilor la date – fără ca ei să fie nevoiți să cunoască structura întregii baze de date; această sarcină cade în seama administratorului bazei de date.

• existența unor limbaje performante de regăsire a datelor – care permit exprimarea interactivă a unor cereri de regăsire a datelor.

• sistemul de gestiune trebuie să ofere posibilitatea unui acces multicriterial la informațiile din baza de date – spre deosebire de sistemul clasic de prelucrare pe fișiere unde există un singur criteriu de adresare, cel care a stat la baza organizării fișierului.

4. Asigurarea securității datelor împotriva accesului neautorizat.

5. Asigurarea coerenței și integrității datelor împotriva unor ștergeri intenționate sau neintenționate – se realizează prin intermediul unor proceduri de validare, a unor protocoale de control concurent și a unor proceduri de refacere a bazei de date.

6. Asigurarea partajabilității datelor – se referă pe de o parte la asigurarea accesului mai multor utilizatori la aceleași date și de asemenea la posibilitatea dezvoltării unor aplicații fără a se modifica structura bazei de date.

7. Asigurarea legăturilor între date – corespund asocierilor care se pot realiza între obiectele unei aplicații informatice. Orice SGBD trebuie să permită definirea și descrierea structurii de date, precum și a legăturilor dintre acestea, conform unui model de date (de exemplu modelul relațional).

8. Administrarea și controlul datelor – sunt asigurate de SGBD, în sensul că datele pot fi folosite de mai mulți utilizatori în același timp, iar utilizatorii pot avea cerințe diferite și care pot fi incompatibile. SGBD trebuie să rezolve probleme legate de concurență la date, problemă care apare mai ales în lucrul în mediu de rețea de calculatoare.

1.6.3. Funcțiile unui sistem de gestiune a bazelor de date:

Evidențiem următoarele funcții ale unui SGBD

funcția de descriere a datelor – se face cu ajutorul LDD, realizându-se descrierea atributelor din cadrul structurii BD, legăturile dintre entitățile BD, se definesc eventualele criterii de validare a datelor, metode de acces la date, integritatea datelor.

Concretizarea acestei funcții este schema BD.

 funcția de manipulare – este cea mai complexă și realizează actualizarea și regăsirea datelor.

 funcția de utilizare – asigură mulțimea interfețelor necesare pentru comunicare a tuturor utilizatorilor cu BD. Categorii de utilizatori:

neinformaticienii – beneficiarii informației trebuie doar să le folosească prin intermediul unei interfețe suficient de prietenoase.

informaticienii – crează structura BD și realizează procedurile complexe de exploatare a BD;

administratorul bazei de date – utilizator special, cu rol hotărâtor în funcționarea optimă a întregului sistem.

 funcția de administrare – administratorul este cel care realizează schema conceptuală a bazei de date, iar în perioada de exploatare a BD autorizează accesul la date, reface baza în caz de incident.

Figura 1.2.Functiile unui SGBD

1.7 Abordarea conceptuală a cadrului organizatoric și legislativ al salarizării

1.7.1 Sistemul de salarizare

Sistemul de salarizare reprezintă un ansamblu de reguli și norme prin care se asigură legătura, între munca prestată și salariul primit.

Salariul este prețul muncii prestate, exprimate în bani, reintrodus în legislația muncii prin Decretul -Lege 35/1990, fiind sinonim termenului de retribuție, utilizat în legislația premergătoare, legea 57/1974.

După Legea salarizării nr. 14/1991, în articolul 1 “ pentru munca prestată în condiții prevăzute în contractul de muncă, fiecare persoană are dreptul la un salariu în bani, convenit la încheierea contractului”.

Salariul de bază se stabilește pentru fiecare persoană în raport cu calificarea, importanța, complexitatea lucrărilor ce revin postului în care este încadrat, cu pregătirea și competența profesională.

Salariile se stabilesc prin negocieri colective sau individuale între conducerea unității

și liderii de sindicat sau, după caz, cu fiecare persoană în parte. Hotărârile cu privire la sistemul de salarizare produce efecte pentru toți membrii societății indiferent de data angajării. Plata salariului se face periodic, fie la intervale de cel mult o lună. Drepturile salariale cuvenite salariaților se plătesc înaintea oricăror alte obligații bănești ale unității.

Salariile de bază pentru întreg personalul societății nu pot fi negociate și stabilite sub salariul de bază minim pe economie.

1.7.2 Elementele componente ale sistemului de salarizare, principii in salarizare si clasificare

Elementele componente ale salariului

a) Salariul de bază

b) Adaosuri la salariul de bază

c) Sporuri la salariul de bază

d) Alte drepturi bănești

Salariul de bază se stabilește prin negocieri colective, sau individuale, ori este impus.

Salariul de bază reprezintă partea principală a salariului, cuvenit persoanei încadrate, pentru munca depusă la un loc de muncă. Este partea fixă a salariului total stabilit după diferitele forme de salarizare utilizate de societate.

Adaosurile reprezintă partea “variabilă” în cadrul drepturilor salariale și se acordă în raport cu performanțele individuale ale angajatului. Ele se iau în calcul la stabilirea drepturilor care se determină în raport cu salariul în măsura în care sunt prevăzute de lege.

Conform Contractului colectiv de munca unic Art.42, se concretizează în :

Adaosul de acord (direct, progresiv, indirect);

Premiile acordate din fondul de premiere,

Alte adaosuri cuvenite la nivelul unității.

Sporurile la salariul de bază se acordă unor categorii de angajați, pentru vechime in munca, pentru munca prestată în condiții deosebite. O parte din ele sunt incluse în salariul de bază, pentru calculul unor drepturi salariale. În cadrul sistemului de sporuri se pot include următoarele categorii de sporuri:

Spor de vechime

Spor pentru ore suplimentare

Spor pentru exercitarea unei funcții suplimentare

Spor pentru exercitarea unei funcții de conducere

Spor pentru lucrul în zilele de sărbători legale

Spor pentru lucrul în zilele de sâmbătă și duminică

În categoria altor drepturi bănești pot fi menționate:

Indexările de salarii

Ajutoare materiale pentru căsătorie, în caz de deces membru de familie sau pentru naștere copil

Indemnizațiile acordate pentru concediile de odihnă, etc.

Adaosuri la salariu cu ocazia sărbătorilor de Paști, Crăciun, etc.

Indemnizații

Salariații care se pensionează pentru limita de vârstă, cei concediați pentru motive care nu țin de persoana salariatului conform art.66 din Codul Muncii, cei concediați pe motive medicale conform art.61 litera c din Codul Muncii primesc o indemnizație egală cu unul sau mai multe salarii de bază avute in ultima lună de lucru. Indemnizația se acordă după predarea notei de lichidare.

Principiile sistemului de salarizare sunt următoarele:

principul descentralizării si al liberalizării salariului;

principiul nediscriminării;

principiul salarizării în raport cu pregătirea, calificarea si competenta profesionala;

principiul salarizării după importanța muncii, complexitatea lucrărilor efectuate și nivelul de răspundere;

principiul salarizării după rezultatele muncii;

principiul salarizării în raport cu condițiile de muncă;

principiul confidențialității.

principiul existenței sau a fixării salariului minim;

Caracterul confidențial al salariilor:

La angajarea personalului și încheierea contractelor de muncă trebuie avut în vedere toate aceste elemente, pentru a îndeplini cerințele fiecărei părți, ce au interese diferite cu privire la mărimea salariului și pentru a îndeplini cerințele impuse de legislația în vigoare.

Forme de salarizare

Cointeresarea angajaților în rezultatele obținute de firmă și progresul economic al acesteia, se realizează prin aplicare de forme de salarizare diferite în funcție de specificul muncii.

Clasificarea, diversitatea și unitatea formelor de salarizare:

1. Salarizare în regie.

2. Salarizare în acord sau în bucată.

3. Salarizare după timpul alocat:

sistemul “ora -standard”, sau cu normă de munca/oră

sistemul “minut-standard”, sau cu norma de muncă/minut

4. Salarizarea de tip premial;

5. Alte forme de salarizare, ca:

sistemul în remiză, sau cote procentuale

sistemul bazat pe indicatori.

Salarizarea în regie sau după timp se bazează pe evaluarea muncii prestate și a cheltuielilor de personal în funcție de timpul de lucru plătit, indiferent de randamentul muncii salariatului.

Salarizarea în regie este caracteristica personalului de administrație, dar se aplică și în cazul muncitorilor, în situații cum ar fi:

procese de aparatură, de supraveghere a instalațiilor de lucru;

dacă considerentele de calitate cer acest lucru (C.T.C.)

în situații în care normarea nu se poate face cu precizie, sau necesită un volum apreciabil de muncă (întreținere și reparații, paza și transport intern)

activități cu caracter nerepetitiv din munca de administrație a firmei.

Salarizarea în acord sau cu bucata se bazează pe evaluarea muncii prestate și a cheltuielilor de personal în funcție de volumul realizărilor, fără a ține seama de durata timpilor de lucru pentru obținerea acestora. Această formă de salarizare stimulează salariatul să-și amelioreze randamentul muncii sale.

Salarizarea în acord poate îmbrăca una din formele: in acord direct, in acord progresiv, in acord indirect, care la rândul lor se pot aplica individual sau progresiv.

Acordul direct presupune stabilirea salariului sub forma produsului dintre normele de timp pentru lucrările, operațiile, activitățile, produsele executate si tariful pe unitate.

Acordul poate fi individual sau progresiv. Acordul direct este modul de determinare al salariului in funcție de posibilitatea, abilitatea si efortul angajatului. Acesta este aplicabil în orice activitate, unde munca se poate face individual.

Acordul progresiv presupune stimularea salariaților pentru realizarea unui număr de produse cât mai mare, aceștia fiind plătiți mai bine pentru realizări mai bune. Se stabilește salariul progresiv in funcție de realizări.

Acordul indirect presupune repartizarea "bugetului" de salarii conducătorului echipei care lucrează pentru realizarea unui produs și care este răspunzător de distribuirea salariilor potrivit sarcinilor fiecărui salariat. Se folosește cu precădere în construcții, pe șantierele navale, proiectare.

Acordul colectiv este aplicabil când se lucrează în grup, echipă, brigadă . Grupa de muncă realizează în comun o sarcină unitară de muncă, răspunzând în comun de rezultatele

obținute.

Salarizarea pe bază de cote procentuale sau remiză este asemănătoare acordului direct, dar se aplică îndeosebi în comerț, turism etc. In acest caz, plata se va face în funcție de vânzări de produse sau de servicii, cu asigurarea salariului minim brut pe țară.

Capitolul 2

Prezentarea Agentului economic

2.1 Descrierea firmei

S.C. IDEEA PROIECT S.R.L. a fost înființată în anul 2002, fiind o societate comercială cu răspundere limitată, (constituită în conformitate cu prevederile Legii Nr. 31/1990, modificată și completată prin O.U.G. Nr. 32/1997), specializată în proiectarea oricărui tip de structuri în construcții (beton, zidarie, lemn, metal, B.A.R. etc).

Împreună cu mai multe birouri de arhitectură consacrate, folosindu-se de forța programelor de analiză structurală de ultimă oră bazate pe metoda elementelor finite, firma poate elabora rapid și eficient soluții de proiectare,expertizare sau consolidare pentru orice tip de construcții.  

Societatea are ca asociat unic și Administrator pe domnul inginer Melinceanu Lucian, cetățean român, domiciliat în București. Sediu social al societății este Str. Lalelelor, Nr. 12, Sat Ostratu, Comuna Corbeanca, Ilfov, iar punctul de lucru:Str. Constantin Ghercu, Nr. 14, Etaj 3, Sector 6, București.

Obiectul principal de activitate al societății este proiectarea structurilor de rezistență a construcțiilor, cod CAEN 7112 „ Activități de inginerie și cosultanță tehnică legate de acestea”.

2.2.Prezentarea principalelor activități:

Societatea oferă următoarele servicii:

Proiectarea structurilor din beton, zidărie, lemn și metal:

conformarea structurilor și stabilirea materialelor;

modelarea în programe avansate de calcul (ETABS 9.20, Perform 3D,V4);

efectuarea analizelor liniare, neliniare, dinamice și statice pentru determinarea eforturilor de dimensionare;

dimensionarea și verificarea structurilor în ansamblu și în detaliu;

detalierea 2D și/sau 3D și redactarea documentațiilor S.F. (studiu de fezabilitate), D.T.A.C. (documentație pentru obținerea avizelor de construire), P.T. (proiect tehnologic), D.E. (detalii de execuție) precum și verificarea lor conform legilor.

Expertizarea structurilor existente:

investigații complete ale obiectivului studiat (încercări distructive și nedistructive, relevee, studierea documentației existente a imobilului etc.);

efectuarea analizelor liniare și neliniare, dinamice și statice pentru determinarea procesului de degradare, a eforturilor de verificare, cât și a capacităților structurale;

determinarea gradului de Risc Seismic sau a altor factori de risc și a măsurilor de intervenție.

Proiectarea incintelor/construcțiilor îngropate:

stabilirea soluției în funcție de studiul geotehnic a temei de arhitectură și/sau a tehnologiei impuse;

efectuarea de analize dinamice și statice, liniare sau neliniare privind stabilitatea și deplasările posibile a terenurilor și/sau a construcțiilor învecinate;

dimensionarea și verificarea de ansamblu și în detaliu a incintei/construcției îngropate;

detalierea 2D/3D și redactarea documentațiilor.

Consultanță și asistență tehnică de șantier:

identificarea problemelor în șantier sau în proiecte existente;

găsirea de soluții optime.

Societatea colaborează cu specialiști de înaltă clasa profesională, printre care:

Prof. Dr. Ing. Pavel Constantin, expert, verificator, atestat MLPTL, exigențele A1, A2, A3, A11.

Prof. Dr. Ing. Oprea Gheorghe, expert, verificator, atestat MLPTL, exigențele A1, A2, A3, A11.

Prof. Dr. Ing. Darie Maria, expert, verificator, atestat MLPTL, exigențele A1, A2.

Cifra de afaceri total

Obiective generale ale societății

Creșterea cifrei de afaceri;

Retehnologizarea societății prin înlocuirea aparaturii a căreifuncționare nu mai poate asigura realizarea calitativă și la timpul potrivit;

Organizarea și conducerea activităților în condiții de rentabilitate,impuse de economia de piață;

Creșterea investițiilor în scopul modernizării intreprinderii;

Satisfacerea totală a clienților prin asigurarea unui raport calitate/preț cât mai performant;

Aplicarea unui sistem performant de management.

Analiza S.W.O.T. a societății

Puncte tari (STRENGTHS)

Cunoaștere foarte bună a pieței producătorilor de materiale de construcții;

Firma este cunoscută pe piață;

Existența unei bune colaborări cu cliențiiși furnizorii;

Deținerea unor abilități comerciale deosebite;

Existența unei imagini favorabile despre firmă.

Puncte slabe (WEAKNESSES)

Puține noi strategii de dezvoltare;

Inexistența unei direcții strategice clare;

Lipsa unor abilități sau competențe deosebite;

Vulnerabilitatea la presiunile concurenței;

Reducerea ponderii pe piață;

Existența unor dezavantaje competitive (handicap tehnologic, costuri ridicate).

Oportunități (OPPORTUNITIES)

Creșterea rapidă a pieței;

Existența cererii de noi produse și/sau servicii pe piețele existente sau pe piețe noi.

Amenințări (THREATS)

Imposibilitatea plății furnizorilor datorită nerecuperării la timp a creanțelor;

Apariția unor concurenți cu o strategie clară de piață;

Intrarea într-o perioadă de recesiune economică la nivel național sau internațional;

Schimbări demografice nefavorabile;

Creștere mai lentă, stagnare sau chiar recesiune a pieței;

Puterea de negociere în continuă creștere a furnizorilor și/sau a clienților.

Structura organizatorică a agentului economic

Structura organizatorică de conducere a societății Ideea Proiect S.R.L., în raport cu numărul compartimentelor funcționale și în funcție de tipul de legături structurale, are o structură de tip ierarhic funcțională (mixtă).

Structura de tip ierarhic-funcțională se caracterizează prin faptul că în componența sa sunt constituite compartimente funcționale, managerii acestora neavând însă autoritatea ierarhică asupra executanților din alte compartimente.

În societate activează un număr de 22 de angajați,între care se stabilesc relații de cooperare prin furnizarea de informații, astfel :

Directorul general coordonează întreaga activitate a firmei, are ca principala activitate contractarea de noi lucrări și planificarea efectuării lor. Răspunde de buna funcționare a firmei și contrasemnează lucrările întocmite de subordonați. Verifică prin sondaj lucrările efectuate și aprobă achizițiile solicitate de departamentul aprovizionare.

– Are in subordine directa pe :

 Asistent Manager

 Director Adjunct

 Director Tehnic

Sef departament Financiar

Sef departament Proiectare

Sef departament Oficiu calcul

Sef departament Aprovizionare

Sef departament Contractare/Planificare

Sef departament Administrativ

Sef departament Financiar – contabil

Directorul adjunct este subordonat direct directorului general si analizează activitatea compartimentului aflat in subordinea sa, dispune anumite măsuri si raportează managerului general. Are în subordine departamentul proiectare, departamentul financiar contabil și departamentul administrativ.

Șeful departamentului proiectare :

– are în subordine departamentul de proiectare.

– urmărește întocmirea proiectelor, verifică și corectează eventualele greșeli.

– urmărește întocmirea corectă a lucrărilor efectuate de desenatorul tehnic

– verifică respectarea proiectului tehnic de către executanții de șantier

– avizează proiectele executate de departament.

Șeful biroului de expertize:

Coordonează departamentul

Întocmește expertizele de rezistență

Verifică lucrările efectuate de subordonați.

Contabilul șef este subordonat directorului adjunct si analizează activitatea departamentului. De asemenea el :

Organizează contabilitatea în cadrul societății;

Organizează controlul financiar preventiv conform legislației în vigoare;

Păstrează confidențialitatea lucrărilor încredințate;

Propune măsuri pentru eficientizarea și modernizarea activității societății;

Urmărește calitatea și corectitudinea actelor și avizelor emise de personalul din subordinea sa;

Verifică și avizează corectitudinea informațiilor supuse atenției șefului societății;

Coordonează activitatea compartimentului aflat în subordinea sa;

Coordonează plățile către bugetul statului sau alte instituții publice;

Coordonează plățile către furnizori, în limita disponibilităților bancare;

Aplică strategia și politicile de dezvoltare economică a societății;

Aprobă fișa postului pentru toți salariații din subordine;

Asigură efectuarea inventarierii patrimoniului;

Propune bugete de venituri si cheltuieli;

Coordonează întocmirea bugetului de venituri și cheltuieli al societății, stabilește măsuri de încadrare în acesta;

Coordonează asigurarea resurselor financiare necesare realizării programelor de exploatare, întreținere, reparație, modernizare, dezvoltare în corelare cu bugetul de venituri și cheltuieli aprobat;

Coordonează întocmirea raportului de gestiune;

Coordonează modul de aplicare si respectare a legislației în vigoare, a instrucțiunilor de serviciu, reglementărilor, ordinelor și dispozițiilor conducerii societății;

Economistul-contabil din subordinea contabilului sef îndeplinește următoarele sarcini:

Asigură evidența derulării plăților către furnizori;

Asigură legăturile cu Direcția Generală de Administrare a Marilor Contribuabili cu privire la impozitul pe salarii;

Asigură întocmirea, păstrarea fișelor fiscale pe toată durata angajării salariaților, transmiterea anuală a fișei fiscale la organul fiscal teritorial, iar fiecărui salariat câte o copie a fișei fiscale;

Asigură procurarea de la Administrația Finanțelor Publice a programului pentru calculul impozitului pe venitul global și alte programe de transmitere a datoriilor firmei față de Bugetul Statului;

Calculează și ține evidența drepturilor bănești, a reținerilor legale din salariu, a datoriilor pentru fiecare salariat din centralul societății, conform legislației în vigoare;

Centralizează lunar declarațiile privind obligațiile de plată la bugetul de stat, bugetul asigurărilor sociale, bugetul fondului de șomaj, bugetul asigurărilor sociale de sănătate, fondul de risc, etc.;

Întocmește și depune (până la 31 ianuarie a fiecărui an) declarațiile privind impozitele și taxele locale, urmărind confirmarea și plata la termen către bugetele locale;

Efectuează plăți și transferuri de sume bănești în limitele disponibilităților financiare;

Efectuează plăți în limita disponibilităților bancare către furnizori, în baza situațiilor operative, a facturilor din evidență;

Efectuează plăți pentru ajutoarele sociale acordate salariaților societății în baza hotărârilor CA, în limita disponibilului pentru asistență socială existent;

Eliberează adeverințe de venit, etc. pentru salariații societății;

Directorul tehnic se ocupă cu calculul indicatorilor de rezistență, supervizează expertizele de rezistență și verifică respectarea standardelor de rezistență în proiectare. Colaborează cu seful departamentului proiectare și cu șeful biroului expertize. De asemenea, supraveghează respectarea specificațiilor tehnice la implementarea proiectelor.

Concluzii

IDEEA PROIECT S.R.L. în urma activității de 13 ani și-a format o bună reputație în domeniul proiectării, fiind una dintre firmele credibile din acest domeniu;

Managerul a ales o bună strategie de afacere, cunoscând astfel cerințele pieței și nevoile clienților și selectând resursele umane de care are nevoie pentru a crește încrederea clienților că furnizează lucrări corecte, complete și predate în timp util.

societatea deține un portofoliu destul de generos al proiectelor desfășurate;

personalul este eficient și lucrează foarte bine în echipă;

societatea s-a adaptat foarte bine recesiunii și s-a menținut pe linia de plutire;

societatea a dezvoltat parteneriate cu societăți străine, dar și interne.

Capitolul 3

Studiu de caz

3.1. Prezentarea aplicației

Aplicația utilizată în cadrul acestui proiect, pentru evidența salariaților agentului economic S.C. IDEEA PROIECT S.R.L, a fost dezvoltată în cadrul sistemului de gestionare a bazelor de date “Microsoft Access 2003” , iar pentru realizarea interogărilor s-a utilizat limbajul de interogare “S.Q.L.”.

Datele de intrare au fost organizate în patru tabele relaționate, după cum urmează:

3.2. Prezentarea tabelelor:

Tabelul angajat :acest tabel cuprinde următoarele coloane:

Cod – memorează codul angajatului , cheie primară

Nume – memorează numele angajatului

Prenume – memorează prenumele angajatului

CNP – memorează codul numeric personal al fiecărui angajat

Adresa – memorează adresa fiecărui angajat

Data_Nașterii- memorează data nașterii pentru fiecare angajat

Data_Angajării – memorează data angajării

Id_Departament- codul fiecărui departament în parte

Id_Job – codul pentru fiecare job.

Tabelul departamente cuprinde 3 coloane:

Cod – fiecare departament are un cod diferit

Denumire – memorează denumirea departamentului

Id_Localitate – codul fiecărei localități

Tabelul job este alcătuit din 3 coloane:

Cod – memorează un număr unic atribuit fiecărui job.

Denumire – memorează numele fiecărui job

Nivel-este un număr atribuit fiecărui job în funcție de gradul de dificultate al acestuia.

Tabelul județ este format din două coloane:

Cod- reprezintă un număr unic atribuit fiecărui județ.

Denumire – memorează denumirea fiecărui județ.

Tabelul localitate este alcătuit din 3 coloane

Cod-reprezintă numărul atribuit fiecărei localități.

Denumire-memorează denumirea fiecărei localități.

Cod_județ – reprezintă codul județului din care face parte localitatea.

ERD – Entity Relationship Diagram

ERD-ul este un model neformalizat pentru reprezentarea unui sistem din lumea reală. Este un model de date conceptual de nivel înalt dezvoltat pentru a facilita proiectarea bazelor de date.

Caracteristicile ERD-urilor:

Sunt un instrument de proiectare

Sunt o reprezentare grafică a unui sistem de date

Oferă un model conceptual de înalt nivel al bazelor de date

Sunt independente de implementare

Această diagramă ERD prezintă legăturile dintre tabelele folosite în aplicație.

3.3. Prezentarea interfeței

Inserare angajat

În fereastra inserare angajat am adăugat etichete cu denumirile datelor pe care utilizatorul trebuie să le introducă pentru a înregistra un nou angajat în baza de date. Aceste etichete sunt: NUME, PRENUME, CNP, DATA NASTERII, DATA ANGAJARII, COD JOB (codul fiecărei funcții) și COD DEPARTAMENT (codul atribuit fiecărui departament).

Numele, prenumele, CNP-ul și adresa angajaților se introduc de la tastatura, pentru data nașterii și pentru data angajării am adăugat cate un calendar de unde se pot selecta foarte ușor datele necesare,iar pentru codurile joburilor si departamentelor am atașat cate o casetă de text pentru a face cât mai ușoară adăugarea informațiilor necesare pentru fiecare angajat in parte.

Inserare angajat

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class angajat : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\elev\documents\visual studio 2010\Projects\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public angajat()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string insert = @"insert into angajat(nume, prenume, cnp, adresa,data_nasterii,data_angajarii,id_job,id_departament) values(@nume,@prenume,@cnp,@adresa,@data_nasterii,@data_angajarii,@id_job,@id_departament)";

SqlCommand cmd = new SqlCommand(insert, c);

cmd.Parameters.AddWithValue("nume", textBox1.Text);

cmd.Parameters.AddWithValue("prenume", textBox2.Text);

cmd.Parameters.AddWithValue("cnp", textBox3.Text);

cmd.Parameters.AddWithValue("adresa", textBox4.Text);

cmd.Parameters.AddWithValue("data_nasterii", dateTimePicker1.Value);

cmd.Parameters.AddWithValue("data_angajarii", dateTimePicker2.Value);

cmd.Parameters.AddWithValue("id_job", listBox1.Text);

cmd.Parameters.AddWithValue("id_departament", listBox2.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

textBox1.Text = "";

textBox2.Text = "";

textBox3.Text = "";

textBox4.Text = "";

}

private void angajat_Load(object sender, EventArgs e)

{

c.Open();

string select = "select cod from job";

SqlCommand cmd = new SqlCommand(select, c);

SqlDataReader r = cmd.ExecuteReader();

while (r.Read())

{

listBox1.Items.Add(r[0].ToString());

}

c.Close();

c.Open();

string select1 = "select cod from jdepartament";

SqlCommand cmd1 = new SqlCommand(select1, c);

SqlDataReader r1 = cmd.ExecuteReader();

while (r1.Read())

{

listBox2.Items.Add(r1[0].ToString());

}

c.Close();

}

}

}

Inserare departament

În fereastra departament am adăugat etichetele DENUMIRE SI COD LOCALITATE , o casetă text pentru a fi completată cu denumirea departamentului respectiv și o casetă listă din care se poate selecta codul localității.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class departament : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\elev\documents\visual studio 2010\Projects\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public departament()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string insert = @"insert into departament(denumire, id_localitate) values(@denumire,@id_localitate)";

SqlCommand cmd = new SqlCommand(insert, c);

cmd.Parameters.AddWithValue("denumire", textBox1.Text);

cmd.Parameters.AddWithValue("id_localitate", listBox1.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

textBox1.Text = "";

}

private void departament_Load(object sender, EventArgs e)

{

c.Open();

string select = "select cod from localitate";

SqlCommand cmd = new SqlCommand(select, c);

SqlDataReader r = cmd.ExecuteReader();

while (r.Read())

{

listBox1.Items.Add(r[0].ToString());

}

c.Close();

}

}

}

Inserare job

În fereastra job am adăugat două etichete: DENUMIRE și NIVEL . În caseta de text din dreptul primei etichete trebuie adăugat numele funcției pe care dorim să o adăugăm în baza de date, iar în dreptul celei de a doua etichetă trebuie adăugat un coeficient de dificultate a funcției respective.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class job : Form

{

SqlConnection c=new SqlConnection (@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\elev\documents\visual studio 2010\Projects\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public job()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string insert=@"insert into job(denumire, nivel) values(@denumire,@nivel)";

SqlCommand cmd=new SqlCommand (insert,c);

cmd.Parameters.AddWithValue("denumire",textBox1.Text);

cmd.Parameters.AddWithValue("nivel",textBox2.Text);

SqlDataReader r=cmd.ExecuteReader();

c.Close();

textBox1.Text = "";

textBox2.Text = "";

}

}

}

Inserare judet

Această fereastră cuprinde o singură eticheta,și o casetă de text pentru introducerea numelui județului .

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class judet : Form

{

SqlConnection c=new SqlConnection (@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\elev\documents\visual studio 2010\Projects\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public judet()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string insert = @"insert into jUDET(denumire) values(@denumire)";

SqlCommand cmd = new SqlCommand(insert, c);

cmd.Parameters.AddWithValue("denumire", textBox1.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

textBox1.Text = "";

}

}

}

Inserare localitate

În fereastra localitate am atașat două etichete: DENUMIRE și COD JUDET. Pentru adăugarea numelui unei noi localități am adăugat o casetă de tip text , iar pentru adăugarea codului județului din care face parte localitatea am adăugat o casetă de tip listă din care putem selecta rapid codul județului.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class localitate : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=c:\users\elev\documents\visual studio 2010\Projects\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public localitate()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string insert = @"insert into localitate(denuumire, cod_judet) values(@denuumire,@cod_judet)";

SqlCommand cmd = new SqlCommand(insert, c);

cmd.Parameters.AddWithValue("denuumire", textBox1.Text);

cmd.Parameters.AddWithValue("cod_judet", listBox1.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

textBox1.Text = "";

}

private void localitate_Load(object sender, EventArgs e)

{

c.Open();

string select = "select cod from judet";

SqlCommand cmd = new SqlCommand(select, c);

SqlDataReader r = cmd.ExecuteReader();

while (r.Read())

{

listBox1.Items.Add(r[0].ToString());

}

c.Close();

Interogări:

Interogarea constă în extragerea datelor dintr-o tabelă (tabele), dintr-o interogare anterioară sau din ambele, prelucrarea acestora într-o formă mai mult sau mai puțin complexă și furnizarea informațiilor către utilizatori.

Principalele operații care se pot realiza cu ajutorul interogărilor sunt:

– extragerea din tabele numai a câmpurilor relevante pentru utilizatori;

– extragerea înregistrărilor din tabele prin specificarea unor criterii de selecție;

– regăsirea și ordonarea datelor după anumite criterii;

– crearea de câmpuri calculate;

– extragerea datelor din una sau mai multe tabele și realizarea unor informații sintetice;

– crearea de tabele, adăugarea înregistrărilor în tabele, ștergerea înregistrărilor din tabele și actualizarea datelor;

– combinarea și compararea ieșirilor prin realizarea mai multor interogări în același timp;

În meniul interogări am adăugat o listă cu denumirile operațiilor pe care le putem utiliza în cadrul aplicației dezvoltate.

Afisare department :

În fereastra afișare departament am adăugat o serie de 3 etichete : COD,DENUMIRE,ID_LOCALITATE pentru a specifica denumirile câmpurilor prezente în tabel.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class AFISARE_DEPARTAMENTE : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\DNC\Desktop\lic\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public AFISARE_DEPARTAMENTE()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

label1.BackColor = Color.Azure;

label2.BackColor = Color.Gold;

label3.BackColor = Color.DarkBlue;

string select = "select * from departament";

SqlCommand cmd = new SqlCommand(select, c);

SqlDataReader r = cmd.ExecuteReader();

while (r.Read())

{

label1.Text = label1.Text + "\n" + r[0] + "\n";

label2.Text = label2.Text + "\n" + r[1] + "\n";

label3.Text = label3.Text + "\n" + r[2] + "\n";

}

c.Close();

}

}

}

Afișare angajați:

În fereastra afișare angajați regăsim toate detaliile necesare pentru a ține evidența acestora.

În acest tabel se pot efectua modificări astfel încât baza de date sa fie actualizată.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace licenta

{

public partial class AfisareAngajati : Form

{

public AfisareAngajati()

{

InitializeComponent();

}

private void AfisareAngajati_Load(object sender, EventArgs e)

{

// TODO: This line of code loads data into the 'database1DataSet3.angajat' table. You can move, or remove it, as needed.

this.angajatTableAdapter.Fill(this.database1DataSet3.angajat);

}

}

}

Afișare job :

În această fereastră putem vizualiza funcțiile existente in firma noastra cât si coeficientul de dificultate al acestora.

Pentru a putea vizualiza tabelul cu funții am adăugat o vizualizare de tip grilă pe care am conectat-o la baza de date.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class joburi : Form

{

SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\DNC\Desktop\lic\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public joburi()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

string sql = "SELECT * FROM job";

SqlDataAdapter dataadapter = new SqlDataAdapter(sql, conn);

DataSet ds = new DataSet();

conn.Open();

dataadapter.Fill(ds, "job");

conn.Close();

dataGridView1.DataSource = ds;

dataGridView1.DataMember = "job";

dataGridView1.RowsDefaultCellStyle.BackColor = Color.Azure;

dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.Beige;

dataGridView1.CellBorderStyle = DataGridViewCellBorderStyle.None;

}

}

}

Modificare adresă:

În această fereastră am adăugat doua etichete și doua casete de text : ADRESA VECHE SI ADRESA NOUA.

În prima casetă de text situate in partea dreaptă introducem adresa atribuită anterior angajatului ,pe care dorim să o modificăm,iar in cea de a doua casetă adăugam adresa nouă ,cea pe care dorim să o atribuim angajatului.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class MODIFICARE_ADRESA : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\DNC\Desktop\lic\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public MODIFICARE_ADRESA()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

string update = "update angajat set adresa=@adresa_noua where adresa=@adresa_veche";

SqlCommand cmd = new SqlCommand(update, c);

cmd.Parameters.AddWithValue("adresa_veche", textBox1.Text);

cmd.Parameters.AddWithValue("adresa_veche", textBox2.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

}

}

}

Ștergere department:

Fereastra ștergere departament conține o singură eticheta și o singura casetă de text în care trebuie sa introducem denumirea departamentului pe care dorim să îl ștergem.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class STERGERE : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\DNC\Desktop\lic\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public STERGERE()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string delete = "delete from departament where denumire=@denumire";

SqlCommand cmd = new SqlCommand(delete, c);

cmd.Parameters.AddWithValue("denumire", textBox1.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

}

}

}

Ștergere angajat :

Fereastra ștergere angajat conține eticheta prenume angajat , care ne indică datele pe care trebuie să le scriem în caseta de text pentru a putea efectua o ștergere în tabelul angajați.

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.Data.SqlClient;

namespace licenta

{

public partial class StergereAngajat : Form

{

SqlConnection c = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\DNC\Desktop\lic\licenta\licenta\Database1.mdf;Integrated Security=True;User Instance=True");

public StergereAngajat()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

c.Open();

string delete = "delete from angajat where prenume=@prenume";

SqlCommand cmd = new SqlCommand(delete, c);

cmd.Parameters.AddWithValue("prenume", textBox1.Text);

SqlDataReader r = cmd.ExecuteReader();

c.Close();

}

}

}

Concluzii finale

Prin intermediul prezentei lucrări mi-am propus să fac o trecere de la general la particular în ceea ce privește activitatea de evidență a salariaților și a remunerării acestora în cadrul unei societăți comerciale prin dezvoltarea unui program informatic bazat pe sistemul de gestiune Vizual Studio 2010.

Deoarece dezvoltarea unui astfel de program vizează atât domeniul informatic prin prisma dezvoltării unei aplicații, cât și domeniul economic sub aspectul conținutului informațional al bazei de date, în primul capitol am expus fundamentele teoretice referitoare atât la bazele de date si sisteme de gestionare a bazelor de date, cât și noțiuni

economice despre salarii si metode de salarizare.

În capitolul doi am menținut abordarea temei din punct de vedere economic,

prezentând activitatea și organizarea societății comerciale studiate.

Capitolul trei, de altfel cel mai important, am analizat societatea comercială prin

prisma aplicației. Astfel plecând de la rezultatele pe care le doream de la acest program, am prezentat rând pe rând funcțiile programului, iar în final obținând informații utile intr-un format accesibil și ușor de utilizat.

De-a lungul acestui proiect pot concluziona ca :

 pentru monitorizarea resurselor umane dintr-o societate comercială este imperativ necesar a se implementa o bază de date pentru evidența salariaților, în condițiile în care se dorește sporirea eficienței utilizării resurselor umane disponibile.

 Implementarea unui program informatic pentru gestionarea informațiilor economice in cadrul unei firme private sau de stat, va avea ca rezultat o creștere semnificativă a eficienței pe ansamblul activităților prin reducerea timpilor necesari procesării unui număr mare de documente individuale, disparate, toate acestea, în cazul bazelor de date, găsindu-se într-un singur loc, relaționate si structurate logic. De asemenea, obținerea tuturor rapoartelor necesare desfășurării activității, devine în acest fel extrem de facilă.

 Implementarea unei baze de date, indiferent de dimensiunile sau domeniul de

activitate ale companiei în care urmează a funcționa, necesită un studiu riguros al tuturor detaliilor legate de structura sa organizatorică, al modului in care se realizează comunicația între departamentele firmei, astfel încât să se obțină un sistemde gestiune informatică a datelor cât mai robustă și mai eficient dimensionată la dimensiunile și caracteristicile respectivei companii.

Pentru maximizarea profiturilor firmei este necesară evidența la zi a datoriilor

către stat în ceea ce privește personalul.

Un alt factor demn de monitorizat sunt salariile si sporurile acordate personalului și modul în care acordarea sporurilor influențează pozitiv calitatea serviciilor și productivitatea muncii la nivelul firmei.

Bibliografie:

1. Andy Oppel. SQL fara mistere – ghid pentru autodidacti. Rosetti Educational, 2006

2. Cicortaș Alexandru – Inițiere în Access și în SQL, „Vasile Goldiș” University Press,

Arad, 2002

3. Chris Fehily . SQL: Visual quickstart guide . Bucuresti: All, 2004

4. Connolly, Thomas; Begg, Carolyn. Baze de date: proiectare, implementare, gestionare. Bucuresti : Teora, 2001

5. Done, Ioan. Salariul si motivatia muncii. Bucuresti: Expert , 2000

6. Eugenia Sandu. Probleme practice in activitatea de salarizare , evidenta si gestionare

a personalului. Gandirea Economica 2008

7. Forta, Ben. SQL in lectii de 10 minute. Bucuresti: Teora, 2004,

8. Hutupasu, Ana. Salarizarea personalului. Bucuresti: Tribuna Economica, 2006

9. Ioan Mocian Baze de date. Terminologie, proiectare, SQL, Access. Matrixrom, 2007

10. Jeff Perkins, Bryan Morgan. SQL fara profesor, in 14 zile. Teora 1997

11. Lungu, Ion; Musat, Nely. Baze de date relationale: utilizarea limbajului SQL PLUS.

Bucuresti: All, 1992

12. Teodorescu Alexandru – Lecții de Access, Editura Teora, București, 2005

13. Trandafir Romica, Nistorescu Mihai, Mierlus-Mazilu Ion. Bazele informaticii si

limbaje de programare 2. Baze de date relaționale. Universitatea București 2007

14. Wynkoop, Stephen. Totul despre Microsoft SQL Server 7.0. București: Teora, 2001

15. Contractul colectiv de muncă unic la nivel național pe anii 2007-2010, încheiat

conform art. 10 si 11 din Legea nr. 130/1996, republicata, inregistrat la Ministerul Muncii, Solidarității Sociale si Familiei cu nr. 2.895 din 21 din 29 decembrie 2006, publicata in Monitorul Oficial al României, Partea a V-a, nr. 5cc din 29 ianuarie 2007

16. Legea nr. 53/2003 Codul muncii (publicata in Monitorul Oficial nr. 72 din 5 februarie 2003) si modificările ulterioare

17. http://www.marketwatch.ro/articol/5767/Introducere_in_bazele_de_date/

18. http://www.scritube.com/stiinta/informatica/Conceptul-de-baza-de-

date10310211217.php

19. http://www.ancaflorea.ro/ro/?id=10028&lang=ro

20. http://www.legislatiamuncii.ro/articole/salarizare-18/

Similar Posts