Creeaza.com - informatii profesionale despre


Simplitatea lucrurilor complicate - Referate profesionale unice
Acasa » afaceri » economie » contabilitate
PROIECTAREA SI REALIZAREA UNUI SISTEM INFORMATIC PRIVIND CALCULUL SI CONTABILITATEA SALARIILOR

PROIECTAREA SI REALIZAREA UNUI SISTEM INFORMATIC PRIVIND CALCULUL SI CONTABILITATEA SALARIILOR


PROIECTAREA SI REALIZAREA UNUI SISTEM INFORMATIC PRIVIND CALCULUL SI CONTABILITATEA SALARIILOR

1.Locul si rolul sistemului informatic privind calculul si contabilitatea salariilor in cadrul sistemului informational al organizatiei

Sistemul informational este un ansamblu de principii, concepte, reguli si tehnici folosite pentru culegerea, inregistrarea si transmiterea datelor in vederea prelucrarii, pentru a obtine informatii care stau la baza luarii deciziilor. Acesta se defineste prin trei ipostaze:

1.un continut informatizabil;

un continut neformal, viu, dinamic;

3.un continut orientat catre proiectul unui decident.

a) J.L.Le. Moigne - vede sistemul informational ca un sistem al organizatiei legat de SISTEMUL OPERAND (DE EXECUTIE) ;i SISTEMUL DE PILOTAJ (DE DECIZIE) - vezi figura 1



Figura nr. 1-Sistemul informational in viziunea lui J.L.Le.Moigne

J. Meles- Sistemul informational reprezinta un ansamblu interconectat a tot ce duce la informarea membrilor unei organizatii :

viziune globala sistemica;

informatia este destinata personalului unui agent economic;

retea complexa de informatii vii, dinamice care intereseaza indivizii unei intreprinderi.

c) J.C. Emery - Sistemul informational include componente ce executa functii bine stabilite: Recunoasterea, Transmiterea, Stocajul, Compararea si distribuirea informatiei.

H.C. Lucas - Sistemul informational se refera la totalitatea procedurilor organizate, incat sa permita furnizarea de informatii necesare luarii deciziilor si/sau controlului organizatiei.

Sistemul informatic (Sistem de automatizare a informatiei) este o componenta a sistemului informational in care toate transformarile (prelucrarile) semnificative ale datelor in informatii sunt efectuate de calculator, compus din:

INTRARI PRELUCRARI IESIRI

Figura Sistemul informatic

1. Intrarile (date) - reprezentate de:

Tranzactii externe:

- redau dinamica operattiilor economice;

- provin din exteriorul sistemului electronic de calcul si sunt realizate de proceduri automate;

Tranzactii interne:

- redau modificarile structurale in cadrul bazei de date;

- sunt asigurate exclusiv in sistemul electronic de calcul prin proceduri automate.

Prelucrarile reprezinta un ansamblu omogen de proceduri automate (creare, actualizare, exploatare etc.) care actioneaza asupra bazei de date.

3. Iesirile (informatii) sunt rezultatul prelucrarii bazei de date, iar in functie de forma si continutul acestora ele pot fi:

- indicatori sintetici

- liste / situattii

- grafice

- stocare pe suporturi magnetice.

In fluxul sistemului informatic (de la intrare catre iesire), unele date se regasesc la iesire in forma initiala, in timp ce altele participa la operatii de calcul (in functie de formula de calcul) dand nastere unor parametrii (informatii) de iesire.

Figura 3 -Circuitul datelor in cadrul unui sistem informatic

Sistemul informatic poate fi constituit din mai multe subsisteme.

Figura 4 - Subsistemele sistemului informatic

Considerand orice unitate economica, drept un sistem de productie se pot identifica in structura ei trei subsisteme corelate intre ele si anume:

subsistemul tehnologic (condus)

subsistemul decizional (de conducere)

subsistemul informational (de legatura)

Subsistemul informational poate fi considerat, in aceste conditii, drept placa turnanta ce realizeaza legatura intre elementele componente ale unitatii economice la nivel macroeconomic sau la nivel microeconomic, de aici decurgand necesitatea organizarii corespunzatoare a subsistemului informational in concordanta cu structurile organizatorice ce le deserveste, pentru a le spori performantele de ansamblu ale acestora.

In procesul de conducere al unitatii economice, sistemul informational si sistemul informatic, ca o componenta a acestuia, trebuie sa asigure pregatirea, aplicarea si urmarirea deciziilor din cadrul unitatii economice. Intre sistemul informational si cel decizional exista o interdependenta. Cresterea continua a volumului de operatii in cadrul intreprinderii a impus ca necesitate obiectiva trecerea la folosirea pe scara larga a mecanizarii si automatizarii datelor contabile, care duc la efectuarea intr-un timp mai scurt si cu o economie de forta de munca, a lucrarilor necesare privind activitatile specifice evidentei operative, contabile si statistice.

Particularitatile organizatorice ale activitatii unei unitati economice duc la informatizarea activitatilor in conformitate cu anumite functii ale unitatii, desfasurate la nivelul compartimentelor functionale.

In cadrul functiei de personal regasim metodologia de evidenta a personalului si de calcul al salariilor. Aceasta trebuie sa urmareasca perfectionarea tuturor elementelor si operatiilor care intervin in cadrul functiei personal, desfasurate la nivelul compartimentelor functionale.

Obiectivele urmarite de perfectionarea sistemului informatic privind calculul si contabilitatea salariilor pot fi grupate dupa mai multe criterii. Astfel, putem avea obiective finale si intermediare sau obiective generale si specifice.

obiectivele finale urmaresc realizarea obiectivelor, prin utilizarea calculatorului electronic, referitoare la sistemul decizional si reflectate in parametrii de comportare ai sistemului condus

obiective intermediare - parametrii de functionare ai sistemului informational prin care se asigura legatura dintre sistemul de conducere si cel condus.

Perfectionarea calculului salariilor va fi realizata prin reducerea numarului de documente ce intervin in cadrul acestei activitati, reducerea timpului de circulatie a acestora intre servicii.

Perfectionarea sistemului informatic privind calculul si contabilitatea salariilor trebuie sa asigure in final, perfectionarea atat a sistemului de conducere, cat si a sistemului financiar-contabil.

2 Concepte de baza utilizate in proiectarea si modelarea unui sistem informatic

Un sistem informatic este format din doua elemente fundamentale: datele si prelucrarile. Prin urmare orice metoda de proiectare a unui sistem informatic urmareste doua obiective principale:

conceperea, si modelarea datelor

conceperea si modelarea prelucrarilor.

1 Modelarea conceptuala a datelor

Modelarea conceptuala a datelor este considerata a fi o modelare tactica a sistemului informatic deoarece colectiile de date nu descriu altceva decat latura statica a unui sistem informatic.

In scopul modelarii conceptuale a colectiilor de date au fost emise mai multe modele. Cel mai important dintre aceste este modelul entitate-asociere. Formalismul modelului se bazeaza pe trei elemente fundamentale:

Entitatea

Asocierea (relatia)

Atributul (proprietatea).

Entitatea este reprezentarea unui " obiect" concret sau abstract care apartine spatiului problemei de rezolvat, are o existenta de sine statatoare si poate fi identificata in raport cu celelalte obiecte de acelasi tip. Exemplu: salariat, compartiment, retineri, pontaj,etc.

O entitate este reprezentata printr-un ansamblu de atribute.

Atributul este o caracteristica sau proprietate a unei entitati, semnificativa pentru spatiul problemei de rezolvat.

Exemplu:

SALARIAT

Marca

Nume

Prenume

Data_Nasterii

Sex

Data_Angajarii

Functie

 
Nume entitate


Atribute


Entitatea este perceputa aici ca un tip (de "obiecte"). Fiecare obiect individual constituie o realizare a entitatii respective. Atributele au la randul lor, aceeasi conotatie tipologica, in sensul ca despre orice realizare a unei anumite entitati se cunosc aceleasi atribute, dar pentru fiecare dintre ele difera continutul sau valoarea atributelor respective.

Figura 5. Entitatea si relizarile acesteia

In functie de continutul lor, atributele pot fi:

-simple sau atomice: atunci cand pentru o entitate sau o asociere poate lua o singura valoare.Ex: Marca, Nume, Sex,Functie.

- compuse: formate din doua sau mai multe atribute.Ex: Adresa, care este format din mai multe atribute: strada, localitate, etc.

-repetitive: daca pentru o entitate sau asociere poate lua mai multe valori. Ex: limbi straine cunoscute, telefon.

-calculate sau derivate: obtinute in urma unor calcule.Ex: varsta.

In functie de rolul pe care il pot avea in cadrul unei entitati atributele pot fi:

-atribute de identificare sau identificatorul entitatii: este un atribut sau un grup de atribute care primesc valori unice pentru fiecare realizare a entitatii respective si pot servi pentru identificarea fara echivoc a acestora. Pentru simplitate se recurge frecvent la coduri, care sunt atribute construite special astfel incat sa raspunda cerintelor de identificare (ex: marca).In reprezentarea grafica , identificatorul entitatii se subliniaza.

Ex:


-atribute candidate: atribute cu valori unice si nenule, altele decat identificatorii.

-atribute simple sau de descriere.

Asocierea reprezinta o corelatie logica intre doua sau mai multe realizari de entitati. Spre deosebire de entitati, o asociere nu are o existenta de sine statatoare, depinzand de existenta relizarilor de entitati pe care le leaga, de aceea nu are identificatori specifici, dar poate avea atribute proprii. Entitatile care participa la o asociere constituie colectia acesteia. Din punct de vedere grafic o asociere se reprezita grafic sub forma unei elipse. Numarul de entitati care participa la o asociere formeaza dimensiunea sau gradul acesteia (mai mare sau egal cu numarul de entitati al colectiei).

Cardinalitatea minimala/ maximala exprima modul de participare al realizarilor fiecarei entitati la asociere.Valorile uzuale sunt: 0,1 ; 1,1 ; 0,n ; 1,n .

Asociere Cardinalitate

Nume asociere minimala maximala

SALARIAT

Marca

Nume

Prenume

Data_Nasterii

Sex

Data_Angajarii

Functie

 

1,1 0,n


Atribut al asocierii

Clasificarea asocierilor

1. Din punct de vedere al cardinalitatilor maxime asocierile pot fi:

-asocieri de tip 1-1: sunt acele asocieri in care cardinalitatile maxime sunt 1

-asocieri de tip 1-n, in care o cardinalitate maxima este 1, iar cealalta este n

-asocieri de tip m-n, pentru care ambele cardinalititi maxime sunt n

Din punct de vedere al cardinalitatilor minime asocierile pot fi :

-asocieri totale, asocieri in care toate cardinalitatile minime sunt strict mai mari ca zero. Aceasta asociere va exista pentru orice realizari ale tipurilor de entitate corespondente.

-asocieri partiale, asocieri in care cel putin o cardinalitate minima este zero si care nu se verifica pentru orice realizari ale entitatilor corespondente.

3.Din punct de vedere al numarului de entitati participante putem deosebi:

PERSOANA

CNP

NUME

PRENUME

DATA NASTERII

 
-asocieri unare, caz in care o entitate intra in asociere cu ea insasi, important fiind in acest caz rolul entitatii.Acesta este un nume care serveste pentru a desemna participarea entitatii la o asociere.

0,1 0,1


Sot Sotie


-Asocieri binare, asocieri la care participa doua entitati


1,1 0,n


0,n 0,n

0,n


-Asocieri n-are la care participa mai multe entitati

Alte elemente de care se tine seama in modelarea conceptuala a datelor sunt restrictiile de integritate.Acestea sunt reguli suplimentare, nereprezentabile direct in formalismul entitate-asociere, care trebuie respectate permanent de date. Modelul entitate-asociere a preluat o parte din restrictiile modeluli relational:

-restrictiile identificatorului, acesta trebuie sa ia valori unice si nenule

-restrictia referntiala, care impune ca o asociere sa refere numai entitati existente

-dependentele (functionale, multivaloare).

Pe langa acestea apar si restrictiile specifice modelului entitate asociere:

Cardinalitatile reprezinta constrangeri ale modelului entitate- asociere deoarece ele restrictioneaza numarul de entitati participante

Restrictiile de roluri reprezinta costrangeri definite asupra rolurilor unei entitati prin prisma asocierilor diferite la care aceasta participa si pot fi: restrictii de incluziune, restrictii de excluziune, restrictii de egalitate.

-Incluziunea de roluri presupune ca daca o entitate E joaca un rol r1 intr-o asociere a1, atunci trebuie sa joace si rolul r2 intr-o asociere a

-Egalitatea de roluri presupune ca restrictia de incluziune intre rolurile r1 si r2 ale entitatii sa fie reciproca.

-Excluziunea de roluri, caz in care cele doua roluri r1 si r2 se exclud reciproc.

Restrictiile de asocieri impun conditii care actioneaza asupra tuturor rolurilor dintr-o asociere; cu alte cuvinte, este vizata asocierea si toate entitatile participante , si nu numai participarea unei anumite entitati. Acestea pot fi , ca si restrictiile de roluri, de trei tipuri: de incluziune, de egalitate si de excluziune.

Restrictia de incluziune de asocieri impune ca realizarea unei asocieri sa presupuna existenta realizarii unei alte asocieri.

- Restrictia de egalitate de asocieri este o restrictie de incluziune reciproca intre asocieri, adica realizarile unor asocieri diferite se implica reciproc.

-Resctrictia de excluziune de asocieri interzice aparitia simultana a doua asocieri. Cele doua asocieri se exclud reciproc.

Modelarea conceptuala a prelucrarilor

Modelul conceptual al prelucrarilor prezinta succesiunea in timp a operatiilor de cautare la care este supuss modelul conceptual al datelor; este modelul ,,eveniment-rezultat" al metodei Merise ce repune in discutie elementele abordate de modelul conceptual al datelor. Ca si in cazul MCD, formalismul modelelor de prelucrare se bazeaza pe construirea unei diagrame avand ca elemente de baza:

evenimentul declansator, reprezentat grafic printr-o elipsa, de la care pleaca o sageata de legatura



operatia, reprezentata grafic printr-un dreptunghi;


Reguli de emisiune(conditii)

rezultatul (evenimentul emis), reprezentat tot printr-o elipsa;


sincronizarea, reprezentata grafic printr-un triunghi orientat catre operatie.


sau

Evenimentul declansator desemneaza un fapt a carui aparitie desmneaza o reactie in cadrul organizatiei; aparitia unui eveniment va antrena derularea de activitati, de operatii, reprezentand "motorul" unei actiuni, al unei operatii( de exemplu: prestare de munca).

Un eveniment poate fi: extern (receptionat din exterior) sau intern (generat de acivitatea sistemului din intrprindere).

Tip eveniment este un concept generic descriind toate aparitiile evenimentelor de aceeasi natura.

Se numeste operatie orice actiune( sau secventa continua de actiuni), producatoare de evenimente rezutat, care se executa fara intrerupere, ca reactie la un eveniment declansator( sau a mai multor evenimente declansatoare sincrone). O operatie constituie un bloc neintrerupt(nu trebuie sa apara rezultate intermediare in interiorul unei operatii). O operatie se finalizeaza intotdeauna prin emiterea de evenimente functie de situatiile identificate pe parcurs si de conditiile exprimate de aceste situatii( asa-numitele reguli de emisiune).

Rezultatul (evenimentul emis) este produsul executarii unei operatii. Intotdeauna trebuie respectata urmatoarea regula: o operatie produce unul sau mai multe rezultate. Un eveniment emis poate fi in acelasi timp un eveniment declansator pentru o alta operatie( sau alte operatii).

Sincronizarea

O anumita operatie nu poate avea loc decat daca sunt indeplinite anumite conditii privind manifestarea evenimentelor ce concura la declansarea operatiei respective. Expresia acestor conditii se numeste sincronizare. Ea exprima sub forma unei propozitii logice faptul ca operatia poate fi declansata sau nu si se exprima printr-o expresie booleana ce leaga evenimentele ce declanseaza operatia.

Daca E1,E2 si E3 sunt evenimente declansatoare pentru opertia Oi si daca a, b, c sunt aparitii corespunzatoare evenimentelor E1, E2 si respectiv E3, atunci sincronizarea a si (b sau c), indica faptul ca operatia Oi este declansata daca o aparitie a evenimentului E1 exista simultan cu una din aparitiile evenimentelor E2 sau E3.

Sincronizarea se exprima deci sub forma unei propozitii logice care trebuie sa respecte anumite reguli, dintre care cele mai importante sunt:

-conditia trebuie pusa pe evenimentele participative conjugate

-trebuie sa existe situatii care permit declansarea.

Conceptul de sincronizare exprima o logica si o dinamica si o dinamica a prlucrarilor. Ea face ca evenimentele sa aiba loc simultan.

3. Modelarea logica a datelor

Nivelul logic arata modul de organizare al comunicatiilor, al datelor si al prelucrarilor in noul sistem creat.Trecerea de la modelul conceptual al datelor (MCD), care este un model universal, spre o solutie informatica se face gradat, luand in considerare un anumit tip de solutie si apoi, in cadrul tipului respectiv, o solutie direct implementabila.

Expresia MCD in termenii unui anumit tip de solutie informatica constituie modelul logic al datelor (MLD).

Datorita faptului ca aplicatiile informatice de gestiune se caracterizeaza prin stocarea si prelucrarea relativ simpla a unor volume mari sau foarte mari de date, tipurile de solutii luate in considerare vizeaza modalitatile de gestionare a datelor pe suporturile de memorie externa.


MLD 

Conceptele modelului logic al datelor:

Domeniul este o multime de elemente de tip similar. Exemplu: NUME- Popescu, Ionescu, Popa, Calin, Ipate, Alexandrescu.

Atributul este o submultime a unui domeniu careia i s-a atribuit un nume. Numele exprima rolul sau semnificatia atribuite elementelor domeniului respectiv

Relatiile sunt multimi si se reprezinta grafic sub forma de tabele, in care se disting gradul relatiei (numarul de atribute utilizate) si cardinalitatea relatiei (numarul de tupluri- linii din tabel). vezi figura 1

Ex: Salariat(Marca, Nume, Prenume,Data_Nasterii)

Figura 6

Cardinalitatea unei relatii este variabila in timp datorita operatiilor de actualizare care pot adauga sau sterge tupluri.

Pentru o relatie pot exista trei tipuri de chei:

cheie primara - cel mai mic ansamblu de atribute (eventual unul singur) care permite identificarea fara echivoc al fiecarui tuplu al unei relatii; atributele care compun cheia primara trebuie sa aiba unice si nenule.

Cheie candidat - o alta posibila cheie primara, care nu a fost retinuta ca atare.

Cheie externa - un ansamblu de atribute (eventual unul singur) care este cheie primara in alta relatie.

Restrictia de integritate referentiala(RIR): daca intre un atribut A si o cheie primara B exista o restictie de integritate atunci A nu poate lua decat valori care exista si in B. Prin definitie, cheile externe sunt supuse RIR in raport cu cheile primare corespunzatoare.

Trecerea de la modelul conceptual al datelor la modelul logic al datelor (relational)

Entitatile devin relatii, atributele entitatilor devin atribute ale relatiilor, iar identificatorii entitatilor devin chei primare.

Asocierile se vor transforma in functie de tipul acestora :

In cazul asocierilor de tip 1-1 cu ambele cardinalitati minime 1 exista doua posibilitati, fie unul dintre tabele devine tabel parinte pentru cel de al doilea, fie cele doua entitati corespondente se compun intr-un singur tabel care va avea drept cheie primara una dintre cele doua chei primare.

In cazul asocierilor de tip 1-1 cu o cardinalitate minima 0 si cealalta 1, entitatea a careu cardinalitate minima este 0, preia drept cheie externa cheia primara a entitatii corespondente.

Asocieri de tip 1-n, caz in care tabelul derivat din entitatea cu cardinalitate maxima 1 preia drept cheie externa, cheia primara a entitatii cu cardinalitate maxima n.

Asocierea de tip m-n se va transforma intr-un tabel care va contine drept chei externe, cheile primare ale entitatilor participante la asociere, iar cheie primara poate fi o cheie compusa formata din cele doua chei primare sau o cheie surogat(artificiala), un camp de tip AutoNumber.

In cazul asocierilor de tip generalizare, specializare, reprezentarea mostenirii ca proces de transfer al proprietatilor generice ale tipului spre subtipuri nu beneficiaza de o solutie relationala dedicata. Din aceasta cauza, este necesar sa se recurga la defactorizarea proprietatilor comune

a) se favorizeaza specializarea: tipul de entitate generica dispare, iar atributele sunt adaugate la fiecare dintre subtipuri.

b) se favorizeaza generalizarea: tipul de entitate generica preia si atributele specializate care, in functie de subtipul reprezentat, primesc valori nule, fiind conservate atat tipul cat si subtipurile.

3. STUDIU DE CAZ: PROIECTAREA UNUI SISTEM INFORMATIC PRIVIND CALCULUL SI CONTABILITATEA SALARIILOR LA SC TITAN BRANCO SRL

Pentru a putea proiecta un sistem informatic trebuie sa se tina seama de ciclul de viata al unui sistem informatic. Astfel, un sistem informatic parcurge urmatoarele faze:

faza de analiza in care sunt specificate cerintele si obiectivele viitorului sistem informatic, facandu-se totodata o analiza a sistemului informatic existent.

faza de proiectare, cand sunt concepute doua modele, unul al datelor si altul al prelucrarilor care sunt modele independente de limbajele de programare sau/ si SGBD

faza de implementare sau realizare a aplicatiei care presupune transformarea modelului de date in structuri implementate intr-un SGBD sau limbaj de programare si transformarea modelului de prelucrari in proceduri sau functii definite in limbajul de programare. O etapa esentiala in aceasta faza este etapa de validare(de testare).

Faza de exploatare presupune punerea in functiune a sistemului, intretinerea lui sau chiar dezvoltarea lui.

In urma analizei problemei de rezolvat am putut elabora urmatorul model conceptual al datelor:

Modelul are in componenta sa entitatile SALARIAT, COMPARTIMENT, NOMENCLATOR, RETINERI, PONTAJ, CERTIFICATE_MEDICALE si asocierile "Lucreaza la", "Retinere", "ConcMedicale", "Are", "Prezenta". Cardinalitatile minime si maxime ale entitatilor sunt inscrise in imediata apropiere a entitatilor care participa la o asociere. De ex: cardinalitatea minima a entitatii SALARIAT in cadrul asocierii Retinere, este 0, ceea ce presupune ca un salariat poate sa nu aiba retineri, iar cardinalitatea maxima este n, fapt care arata ca un salariat poate avea mai multe retineri in acelasi timp.

Asociate modelului entitate-asociere trebuie definite restrictiile de integritate:

R1: Marca NOT NULL, Cod_Functie NOT NULL, Cod_Compartiment NOT NULL, Nr_Doct_Retinere NOT NULL, Nr_Certificat NOT NULL

R2: Nr_FCP NOT NULL

R3: CNP Like " ? ? "

R4: Salariu_Incadrare>390

R5: Sex=

R6: Data_Angajarii > Data_Nasterii

R7: Salariu_Maxim > Salariu_Minim

R8: Ore_Lucrate >=0, : Ore_CO >= 0, Ore_CM >= 0

R9: Data_Sfarsit_Retinere > Data_Inceput_Retinere

R10: Data_Sfarsit _CM > Data_ Inceput_CM

R11: Zile_Lucratoare <= 23

R12:Salariul de incadrare trebuie sa fie cuprins intre salariul minim si cel maxim definit pentru o anumita functie

Aceste restrictii sunt implementate la nivelul aplicatiei prin restrictii ale cheilor primare, restictii de domeniu sau restrictiii definite la nivelul tabelelor.

Conform regulilor ce trebuie respectate atunci cand se face trecerea de la modelul conceptual al datelor la modelul logic al datelor, fiecare entitate devine o relatie, a carei cheie primara este identificatorul entitatii, asocierea Prezenta devine si ea o relatie, a carei cheie primara este compusa din cele doua chei primare ale entitatilor Salariat si Pontaj.

Asfel se obtine urmatorul model logic al datelor:

SALARIAT (Marca, Nume, Prenume, CNP, Data_Nasterii, Sex, Data_Angajarii,Cod_Compartiment,Cod_Functie, Salariu_Incadrare, Stare_Civila, Nr_Pers_Intretinere, Localitate, Strada, Nr, Bloc, Scara, Ap, Sect)

COMPARTIMENTE (Cod_Compartiment, Denumire_Compartiment, Procent_Spor)

NOMENCLATOR (Cod_Functie, Denumire_Functie, Salariu_Minim, Salariu_Maxim)

RETINERI (Tip_Doc_Retinere, Nr_Doc_Retinere, Retinere_Lunara, Data_Inceput_Retinere, Data_Sfarsit_Retinere, Marca)

CERTIFICATE_MEDICALE (Nr_Certificat, Data_Certificat, Tip_CM, Data_Inceput_CM, Data_Sfarsit_CM, Marca )

PREZENTA (Marca, Nr_FCP, Ore_Lucrate, Ore_CO, Ore_CM)

PONTAJ (NrFCP,Luna, Anul, Zile_Lucratoare)

Alaturi de modelul conceptual al datelor si de cel logic, trebuie definit si modelul conceptual al prelucrarilor. ANEXA 1

Pentru implementarea modelului logic am ales sistemul de gestiune al bazelor de date Microsoft ACCESS care face parte din pachetul de programe Microsoft Office si are urmatoarele caracteristici:

este relational, lucreaza sub sistemul de operare Windows si este deschis comunicarii cu alte Sisteme de Gestiune a Bazelor de Date, cum ar fi FoxPro sau Paradox

este compatibil cu tehnologia ActiveX, care permite realizarea aplicatiilor client/server ;permite realizarea unor aplicatii complexe prin utilizarea limbajului Visual Basic

permite comunicarea cu SQL Server, un alt produs Microsoft care gestioneaza baze de date

permite accesul la baze de date din reteaua Internet, fiind un instrument util pentru publicarea informatiilor in paginile Web

contine instrumente wizard care permit utilizatorului crearea intr+o maniera foarte simpla a obiectelor bazei de date

permite personalizarea bazei de date

permite utilizarea obiectelor ACCESS din cadrul altor aplicatii rulate sub sistemul de operare Windows.

O baza de date ACCESS poate fi definita ca fiind o colectie de obiecte: tabele (table), cereri de interogare (query), formulare (form),rapoarte (report), pagini Web (pages), comenzi (macro) si module(module).

Un prim pas pentru relizarea bazei de date o reprezinta crearea tabelelor, fapt ce se realizeaza prin alegerea optiunii Create table in Design view. (vezi figura 7)

Figura 7

In momentul crearii tabelelor, se definesc numele campurilor (Field name), tipul de date(Data Type), dar sunt aplicate si anumite restrictii asupra acestora. Restrictiile pot fi :

-restrictii ce refera un camp dintr-un tabel - de ex. CNP like" ? ? " ceea ce presupune ca acesta trebuie sa contina 13 caractere (vezi figura 8)

Figura 8

-restrictii legate de valorile a doua campuri dintr-un tabel - de ex.Salariul maxim trebuie sa fie mai mare decat salariul minim, restrictii ce se implementeaza la nivelul proprietatii Validation Rule de la nivelul tabelelor(de ex. Salariu _Maxim > Salariu_Minim) vezi figura 9

Figura 9

-restrictii care verifica doua campuri din doua tabele diferite -de ex. Salariul de incadrare trebuie sa fie incadrat intre salariul mimim si cel maxim, restrictie ce este definita la nivelul formularului Salariat prin urmatorul cod :

Private Sub Form_BeforeUpdate(Cancel As Integer)

If controleaza(Me.Salariu_Incadrare, Me.Cod_Functie) = False Then

DoCmd.CancelEvent

End If

End Sub

Function controleaza(sSalariu_Incadrare As Integer, sCod_Functie As Integer) As Boolean

Dim r As Recordset

Set r = CurrentDb.OpenRecordset('select * from ' & 'Nomenclator where Cod_Functie=' + Str(sCod_Functie))

If sSalariu_Incadrare >= r!Salariu_Minim And sSalariu_Incadrare <= r!Salariu_Maxim Then

controleaza = True

Else

controleaza = False

MsgBox ('Salariu de incadrare trebuie sa se incadreze intre salariu minim si cel maxim!')

End If

End Function

Daca sunt incalcate aceste restrictii sistemul avertizeaza printr-un mesaj care a fost tastat in prealabil la proprietatea Validation Text a campului sau tabelului.(vezi figura 10)

Figura 10

Dupa crearea tabelelor, se stabilesc relatiile dintre tabele, cheie primara-cheie externa, care pot fi : relatii 1-1(one-to-one), relatii 1-n(one-to-many), relatii n-1(many-to-one) si relatii m-n(many-to-many). De asemenea se implementeaza si integritatea referentiala prin selectarea proprietatii Enforce Referential Integrity, care presupune ca atunci cand se introduce o noua inregistrare in tabela secundara, se verifica daca valoarea cheii externe se gaseste in tabela primara, printre valorile cheii primare . (vezi figura 11)

Figura 11

In urma acestei operatii se obtine modelul bazei de date relationale.ANEXA 2

Pentru a usura lucrul cu acest program , dar pentru a crea si o interfata prietenoasa, se va crea un formular cu care sa se deschida aplcatia. Pentru a se realiza acest lucru se apeleaza meniul Tools→ Start up unde se completeza titlul aplicatiei si obiectul Access cu care sa se deschida aplicatia.(vezi figura 10)

Figura 10

Acest formular contine doua butoane de comanda, unul care continua aplicatia cu un alt formular prin care se vor introduce date, se vor vizualiza si printa rapoarte(stat salarii, fluturasi salariali, dar si un buton care inchide aplicatia. ANEXA 3

La actionarea butonului CONTIUATI ? se deschide un formular ce contine trei frame-uri Introducere date, Date combinate si Situatii de iesire, fiecare dintre acestea continand butoane (CommandButtom).Astfel, fiecare buton apartinand frame-ului Introducere date deschide cate un formular, creat pe baza unui tabel ce permite introducerea datelor si stocarea acestora in baza de date. La nivelul fiecaruia dintre ele, proprietatea eveniment Before Update va contine expresia Event Procedure, procedura ce va fi editata cu ajutorul unui editor de module :

Figura 11

Astfel pentru formularul Retineri se va defini urmatorul cod:

Private Sub Form_BeforeUpdate(Cancel As Integer)

If (Not IsNull(Marca)) And (IsNull(Retinere_Lunara) Or IsNull(Nr_Doc_Retinere) Or IsNull(Tip_Doc_Retinere) Or IsNull(Data_Inceput_Retinere) Or IsNull(Data_Sfarsit_Retinere))) Then

Beep

MsgBox 'Nu ati introdus toate datele', vbCritical, 'EROARE'

Cancel = True

MsgBox 'Nu s-au adaugat date despre retineri', vbCritical, 'ATENTIE!'

End If

End Sub ;

Daca utilizatorul va introduce date numai intr-un camp al formularului si va dori sa il inchida, sa adauge sau sa stearga, va fi avertizat asupra faptului ca nu a fost salvata nici o inregistrare.

De asemenea proprietatea After Update va fi tratata printr-un macro, pentru afisarea unui mesaj prin care utilizatorul este instiintat ca inregistrarea a fost salvata(figura 11)

Figura 11

Aceste formulare au fost construite in modul Design view si contin casete text, dar si ComboBox-uri care refera campuri ale tabelelor bazei de date.

TextBox

ComboBox-uri

Buton parasire aplicatie

Butoane-comanda de navigare Buton de adaugare Buton de comanda de salvare

Cu ajutorul ComboBoxurilor se pot alege usor datele ce pot fi introduse. Astfel, la introducerea datelor prin formularul SALARIATI, codul compartimentului si cel al functiei se pot alege dintr-o lista ce contine compartimentele si functiile existente, afisandu-se si denumirea acestora pentru evitarea erorilor.ANEXA 4

Tot din formularul MENIU se pot obtine anumite situatii de iesire, vizualizandu-se si/sau printandu-se anumite rapoarte cum ar statul de salarii pe o anumita luna, fluturasii salariali, inregistrarile cu privire la contributiile datorate statului de catre unitate, cat si operatiile ce trebuie contabilizate cu privire la salariile datorate si contributiile angajatilor ce au fost retinute.

De asemenea, datele pot fi introduse si prin formularele cu subformular ce se deschid la evenimentul click asupra butoanelor de comanda din frame-ul Date Combinate. Astfel, se pot introduce date atat despre angajati, cat si despre pontaj sau certificate medicale. ANEXA 5

O alta facilitate oferita de ACCESS este posibilitatea de interogare a bazei de date pentru a extrage informatii. Interogarile(Query) se pot crea in modul Design view sau prin intermediul limbajului SQL si pot fi vizualizate in modul Design view, SQL view, Pivot Chart sau Pivot Table. ANEXA 6

Acestea pot fi:

interogari de selectie care pot fi : interogari de selectie propriu-zise(afisarea tuturor salariatilor care au functia de tipograf), interogari parametrizate(ex: afisarea tuturor salariatilor angajati dupa o anumita data specificata de utilizator), interogari cu campuri calculate(ex:calculul vechimii, statul de salarii, calculul varstei), interogari de sintetizare(de agregare) a datelor din tabele(de ex: salariul maxim pe fiecare compartiment, total cheltuieli salariale pe fiecare luna si an). ANEXA 7

interogari de actiune care pot fi : interogari de creare de noi tabele, interogari pentru modificarea datelor din tabele, interogari pentru stergerea inregistrarilor si interogari pentru adaugarea de noi inregistrari

interogari de tip analiza incrucisata (CrossTab Query) care sunt extrem de utile in scopul analizei multidimensionale a datelor. Practic este posibila elaborarea unor tabele in care gruparea si ordonarea datelor se realizeaza atat pe linii, cat si pe coloane, la intersectia carora se pot efectua calcule complexe.(de ex: cheltuieli cu salariile pe fiecare luna si an sau veniturile brute pe fiecare luna si pe fiecare compartiment ) ANEXA 8

Unele interogari pot fi vizualizate sub forma de grafice care sintetizeaza datele in functie de nivelul de agregare pe care il dorim.(de ex: cheltuielile salariale la nivel de o anumita luna, la nivel de un an sau de mai multi ani) ANEXA 9



I.Rosca, D.Zaharie- Proiectarea sistemelor informatice de gestiune, ASE Bucuresti 2003

Pentru simplificare, daca este necesar, elipsa poate fi omisa





Politica de confidentialitate


creeaza logo.com Copyright © 2024 - Toate drepturile rezervate.
Toate documentele au caracter informativ cu scop educational.