Sunteți pe pagina 1din 12

Studiu de caz

Se dorete realizarea unei baze de date pentru contabilitatea firmei. Pentru realizarea bazei de date se vor analiza documentele utilizate in cadrul compartimentului de contabilitate. Se constat c firma dispune de un plan de conturi n care figureaz simbol cont, nume cont, tip cont (activ, pasiv). Operaiile contabile sunt nregistrate n registrul jurnal n baza unor documente justificative ce sunt identificate prin cod document, tip document (factura, proces verbal, etc.) i data document. Fiecare operaie contabil din registru jurnal este numerotat i datat i i se poate aduga o explicaie. O operaie contabil poate conine mai multe conturi specificndu-se pentru fiecare suma debitoare sau suma creditoare, dup caz. Din balana de verificare se constat c pentru fiecare cont se cunoate soldul iniial debitor sau soldul iniial creditor i se calculeaz rulajele debitoare (totalul sumelor de pe debit din operaiile contabile) i cele creditoare (totalul sumelor creditoare din operaiile contabile). Reguli de gestiune: 1. Simbolurile conturilor sunt unice 2. Unui cont i corespunde un singur sold iniial debitor sau un sold iniial creditor 3. Numerele operaiilor contabile sunt unice 4. Pentru simplificarea problemei presupunem c unui document justificativ ii este atribuit n contabilitate un cod unic. 5. Unei operaii contabile i corespunde un singur document justificativ 6. Un document poate genera mai multe operaii contabile 7. O operaie poate conine mai multe conturi debitoare/creditoare

Dictionarul de atribute
simbol cont nume cont tip cont cod doc tip document data document nr operatie data operatie explicatie suma debit

suma credit
sold iniial D sold iniial C

Determinarea dependentelor functionale


simbol cont nume cont tip cont sold iniial D sold iniial C

cod doc

tip document data document


TRANZITIV

nr operatie

cod doc tip doc data doc

data operatie

explicatie

suma debit suma credit

Pentru a identifica o sum debitoare sau creditoare dintr-o operaie contabil trebuie s cunoatem numrul operaiei, dar i simbolul contului din cadrul operatiei

nr operatie simbol cont

suma debit

suma credit

CONTURI ( simbol cont

, nume cont , tip cont ,sold iniial D ,sold iniial C )

DOCUMENTE ( Cod Doc

tip document

, data document )

OPERATII

( nr operatie

, Cod Doc ,

data operatie ,explicatie)

RULAJE

( nr operatie simbol cont

, suma debit ,

suma credit )

Rezolvare prin matricea dependenelor funcionale

Interogari SQL
Comenzi SQL pentru manipularea datelor
1. Sa se adauge in tabelul Conturi contul Fond Comercial cu simbol 207 (INSERT) 2. Sa se creeze tabelul ConturiD2 cu simbolurile, numele i soldurile iniiale debitoare ale conturilor din clasa a 2-a (Imobilizri) la care soldul iniial debitor depete 6.000 (SELECT INTO). 3. Pentru contul cu simbolul 1012 s se completeze tipul contului cu litera P si sa se mreasc soldul iniial creditor cu 300 RON (UPDATE). 4. Presupunnd c numele de conturi nu au fost scrise corect s se transforme toate realizrile din cmpul nume n majuscule (UPDATE): 5. S se tearg din tabela Operaii toate operaiile contabile mai vechi de 1 ianuarie 2002 de zile i operatia cu numarul 5 (DELETE)

Interogri de selecie
Exemple de interogri de selecie simple: 6. Afiai toate informaiile despre documentele de tipul Proces Verbal 7. Afiai lista ordonata alfabetic (dupa nume cont) cu simbolurile si numele conturilor din clasele 1 i 2. 8. Afiai lista cu numele, simbolurile si soldurile iniiale pentru primele 3 conturi cu cele mai mari solduri iniiale creditoare. 9. Calculai pentru fiecare cont soldul iniial debitor in euro fara zecimale (un euro =3,5 RON) si ordonai lista descresctor dup Soldul iniial debitor iar pentru conturile cu acelai sold, ordonai alfabetic dup nume cont. 10. Afiai lista operaiilor contabile (numr, data i explicaie) dintr-o anumit lun a anului 2006 precizat ca parametru. In cazul operaiilor fr explicaie se va preciza intr-o coloana numita Observaii textul De completat, pentru celelalte se va afia textul Corect Exemple de interogri de selecie avnd ca surs mai multe tabele 11. Afiai lista cu documentelor (cod si tip document) care au justificat operaii contabile in ultimele 30 de zile zile. In lista nu vor figura documentele de tip factura 12. Caz particular : Jonciuni externe (LEFT/RIGHT JOIN) : Care sunt conturile care nu au rulaje ? 13. Afiai lista far duplicate a conturilor care au nregistrat rulaje debitoare ntre 1 ianuarie i 30 aprilie 2006.

Exemple de interogri de selecie ce presupun gruparea datelor


14. Calculai rulajele totale debitoare i creditoare pentru fiecare dintre 5121 i 5122. 15. Calculai cte documente justificative exist n firm pe fiecare tip de document dupa 1 ianuarie 2006 i ordonai lista descresctor dup numrul de documente existente (doar pentru tipurile de documente din care exist cel puin 3) 16. Calculai suma maxim cu care a fost creditat fiecare cont de activ. 17. Calculai Soldul final (Sold iniial+Rulaje Debitoare-Rulaje creditoare) pentru fiecare Imobilizari (clasa 2).

Interogri DE TIP UNION


Pentru aceast interogare a fost adugat n baza de date un tabel intitulat ConturiVechi cu urmtoarele cmpuri: SimbolCont i NumeCont

18. Se dorete afiarea unei liste cu 3 coloane ce va conine numele i simbolurile conturilor din tabelele Conturi i Conturi Vechi iar n cea de-a treia coloan (numit Observaii) se va afia textul Cont utilizat pentru conturile provenite din tabelul Conturi i Neutilizat pentru cele provenite din tabelul ConturiVechi.

Interogri CROSSTAB
Sintaxa: TRANSFORM expresie Instruciune de selecie PIVOT cmpul ce urmeaz a fi afiat pe coloanele tabelului 19. Sa se realizeze o interogare de tip analiza ncruciata pentru a determina rulajele debitoare totale ale fiecrui cont in fiecare an. Se vor ordona anii pe coloane si simbolurile conturilor pe linii. 20. Sa se determine la cate operaii contabile a participat fiecare cont n fiecare lina a anului 2006. Se vor ordonalunile anului pe coloane si simbolurile conturilor pe linii.

INTEROGARI CU SUBINTEROGARI
21. Sa se adauge in tabela Conturi Vechi toate conturile de cheltuiei (din clasa 6).

22. S se afieze lista conturilor care au fost debitate cu cea mai mare sum n cadrul unei operaii contabile (se utilizeaz ALL)
23. S se afieze numerele pentru toate operaiile care au avut loc in zile in care a fost creditat contul 5121 (se utilizeaz ANY) 24. Care sunt conturile din tabelul Conturi care nu se regsesc i n tabela ConturiVechi. 25. S se diminueze cu 10% rulajele debitoare din operaiile nregistrate in ultimele 90 de zile (se utilizeaz IN) 26. S se tearg din tabela conturi toate conturile de Activ care au fost utilizate de mai puin de 2 ori in operatii contabile (se utilizeaz IN) .