Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Sistem cu baza de date pentru gestiunea unui magazin cu produse IT - proiect -

Informatica


Universitatea "Transilvania"
Facultatea de Matematica si Informatica


Sistem cu baza de date pentru gestiunea unui magazin cu produse IT

- proiect -

Sistem cu baza de date pentru gestiunea unui magazin

cu produse IT

Pasul 1: Proiectarea logica a bazei de date relationale: 

Pasul 1.1.  Identificarea tipurilor de entitati

În urma studierii documentelor implicate în gestiunea din cadrul firmei se disting urmatoarele entitati:

Furnizori

Factura fiscala

Produse

Bon fiscal

Chitanta fiscala

Clienti

În documentarea tipurilor de entitati includem o descriere amanuntita a fiecarei entitati:

Nume tip de entitate

Descriere

Factura fiscala

(intrare,iesire)

Document contabil care însoteste marfa primita/vânduta în/din firma de la/catre alte firme .

Furnizori

Totalitatea furnizorilor de la care firma se aprovizioneaza cu produse.

Produse

Totalitatea produselor comercializate în firma.

Bon fiscal

Descriere detaliata a produselor cumparate de un client (persoana fizica) la un moment dat.

Chitanta fiscala

(intrare, iesire)

Document contabil care atesta ca  o factura, o cota parte din factura sau mai multe ale unui furnizor au fost achitate.

Clienti

Totalitatea firmelor care achizitioneaza produse de la firma mea.

Pasul 1.2.  Identificarea tipurilor de relatii.

Tipurile de relatii care intervin între tipurile de entitati prezente în sistem sunt expuse în continuare:

Tip de entitate

Tip de relatie

Tip de entitate

Furnizori

emit 14214q164o

Facturi fiscale

Produse

se primesc cu

Facturi fiscale

Produse

se cumpara cu

Bonuri fiscale

Produse

se cumpara cu

Facturi fiscale

Facturi fiscale(intrare,iesire)

se achita cu

Chitante fiscale

(intrare,iesire)

Clienti

primesc

Facturi fiscale

Determinarea cardinalitatii si a participarii tipurilor de relatii:

Tip de entitate

Tip de relatie

Tip de entitate

Cardinalitate

Furnizori

emit 14214q164o

Facturi fiscale

1:N

Produse

se primesc cu

Facturi fiscale

M:N

Produse

se cumpara cu

Bonuri fiscale

M:N

Produse

se cumpara cu

Facturii fiscale

M:N

Facturi fiscale

se achita cu

Chitante fiscale

M:N

Clienti

primesc

Facturi fiscale

1:N

Pasul 1.3.  Identificarea si atribuirea de atribute la tipurile de entitati si tipurile de relatii si determinarea domeniilor de definitie a atributelor.

Tip entitate

Atribut

Domeniu

Furnizori

IdFurnizor

AutoNumber

Cod Furnizor

Number

Denumire

Text(50)

Cod fiscal

Text(7)

Nr RC Firma

Text(13)

Adresa

Text (50)

Telefon

Text(10)

Cod IBAN

Text(24)

Banca

Text(50)

Facturi fiscale

IdFactura

Autonumber

Serie Factura

Text(5)

Nr Factura

Number

Furnizor/Clienti

Number

Data

Data/Timp

TVA*

Number

Achitat

Da/Nu

Nr Aviz*

Number

Casier**

Text(50)

Produse

CodProdus

Autonumber

Denumire

Text(50)

Unitate masura

Text(6)

Cantitate initiala

Number

Chitante fiscale

IdChitanta

Autonumber

NrChitanta

Number

Data

Data/Timp

Emitent/Client

Number

Bon fiscal

NrBon

Autonumber

Data emit 14214q164o erii

Data/Timp

Casier

Text(50)

Clienti

IdClient

AutoNumber

Cod Client

Number

Denumire

Text(50)

Cod fiscal

Text(7)

Nr RC Firma

Text(13)

Adresa

Text (50)

Telefon

Text(10)

Cod IBAN

Text(24)

Banca

Text(50)

* doar pentru intrari

** doar pentru iesiri

Pentru întelegerea domeniilor atributelor din tabelul anterior, sunt explicati termenii folositi:

Text(x) - tip de data sir de caractere alfanumeric, dimensiunea fiind de 'x' caractere

Data/timp - tip de data reprezentând data calendaristica

Number- tip de data reprezentând un numar

Autonumber-tip de data reprezentând un numar cu incrementare automata.

Pasul 1.4.  Determinarea atributelor care compun cheile candidate si primare.

Urmatorul tablel prezinta cheile ce intervin în cadrul sistemului:

Tip de entitate

Chei candidat

Cheie primara

Furnizori

IdFurnizor

Cod_furnizor

Cod Furnizor

Cod fiscal

Nr RC Firma

Facturi fiscale

IdFactura

IdFactura

Serie Factura+

Nr Factura

Produse

CodProdus

CodProdus

Chitanta fiscala

IdChitanta

IdChitanta

Bon fiscal

NrBon

NrBon

Clienti

IdClient

CodClient

Cod Client

Cod fiscal

Nr RC Firma

Pasul 1.5.  Desenarea diagramei entity-relationship:

Pasul 2.   Crearea si validarea modelului logic local

Pasul 2.1.  Proiectarea modelului conceptual local pe un model logic local.

În acest pas eliminam acele structuri din baza de date, care sunt dificil de implementat în sistemul de gestiune al bazelor de date. Pentru a rezolva aceasta problema, se vor urma urmatorii pasi:

Eliminarea relatiilor de tipul N:M.

Avem urmatoarele relatii M:N

a)"O factura fiscala se poate achita cu mai multe chitante fiscale"

"Mai multe facturi fiscale se pot achita cu o chitanta fiscala"

b)"Un produs se gaseste pe mai multe bonuri fiscale"

"Pe un bon fiscal se gasesc mai multe produse "

c) "O factura fiscala contine mai multe produse"

"Un produs se gaseste pe mai multe facturi facturi"


 

 

N

 

N

 
devine


devine


devine


devine


Eliminarea relatiilor complexe.

Modelul nostru nu contine astfel de relatii.

Eliminarea relatiilor recursive.

Modelul nostru nu contine astfel de relatii

Eliminarea relatiilor cu atribute.

Modelul nostru nu contine astfel de relatii

Reexaminarea relatiilor de tipul 1:1.

Modelul nostru nu contine astfel de relatii.

Eliminarea relatiilor redundante.

Modelul nostru nu contine astfel de relatii.

Desenarea diagramei E-R


Trebuie sa reactualizam si lista atributelor pentru tipurile de entitati: DetaliuChitanta, IntrariProduse si IesiriProduse.

Tip entitate

Atribut

Domeniu

DetaliuChitante

IdIntrareChitanta

AutoNumber

IdChitanta

Number

NrFactura

Number

Valoare

Number

IntrariProduse

IdIntrare

Autonumber

IdFactura

Number

Denumire

Number

Cantitate

Number

Pret unitar

Number

Adaos

Number

IesiriProduse

IdIesire

AutoNumber

NrDocument

Number

Denumire

Number

Cantitate

Number

Pasul 2.1.  Crearea relatiilor pentru modelul logic local.

Entitati tari:

Furnizori(IdFurnizor, CodFurnizor, Denumire, Cod fiscal, Nr RC Firma, Adresa, Telefon, Cod IBAN, Banca )

Cheie primara: IdFurnizor

Produse(CodProdus, Denumire, U/M, Cantitate initiala)

Cheie primara: CodProdus

Bon fiscal(NrBon, Data emit 14214q164o erii, Casier)

Cheie primara: NrBon

Clienti(IdClient, CodClient, Denumire, Cod fiscal, Nr RC Firma, Adresa, Telefon, Cod IBAN, Banca )

Cheie primara: IdClient

Entitati slabe:

Factura fiscala intrare (IdFactura, Serie Factura, Nr Factura, Furnizor, Data, TVA, Achitat, Nr aviz)

Cheie primara: IdFactura

Cheie straina: Furnizor

Factura fiscala iesire (IdFactura, Serie Factura, Nr Factura, Client, Data, Achitat, Casier)

Cheie primara: IdFactura

Cheie straina: Client

Chitanta fiscala intrare(IdChitanta, NrChitanta, Data, Emitent)

Cheie primara: IdChitanta

Cheie straina: Emitent

DetaliuChitante intrare (IdIntrareChitanta, IdChitanta, NrFactura, Valoare)

Cheie primara: IdIntrareChitanta

Cheie straina: NrFactura, IdChitanta

Chitanta fiscala iesire(IdChitanta, NrChitanta, Data, Client)

Cheie primara: IdChitanta

Cheie straina: Client

DetaliuChitante iesire (IdIntrareChitanta, IdChitanta, NrFactura, Valoare)

Cheie primara: IdIntrareChitanta

Cheie straina: NrFactura, IdChitanta

IntrariProduse (IdIntrare, IdFactura, Denumire, Cantitate, Pret unitar, Adaos)

Cheie primara: IdIntrare

Cheie straina: IdFactura, Denumire

IesiriProduse (IdIesire, NrDocument, Denumire, Cantitate)

Cheie primara: IdIesire

Cheie straina: NrDocument, Denumire

Pasul 2.2.  Validarea modelului, utilizând normalizarea.

Forma normala 1

În aceasta etapa de normalizare se urmareste eliminarea grupurilor repetitive din fiecare tabela.

Analizând fiecare tabela se observa ca nu exista grupuri repetitive, deci baza de date este în forma normala 1.

Forma normala 2

O relatie este în 2NF daca este în 1NF si orice atribut neprimitiv este complet dependent de orice cheie. Forma normala 2 se verifica doar la relatiile care au o cheie compusa pe pozitia de cheie primara. Daca pt o relatie, cheia primara se compune dintr-un singur atribut atunci ea este în forma normala 2.

Tabelele bazei de date din sistemul nostru au chei primare care se compun dintr-un singur atribut, in concluzie toate relatiile sunt deja in forma normala 2.

Forma normala 3

O relatie este in 3NF daca este în 2NF si nu exista nici un atribut care sa nu apartina cheii primare si care sa fie tranzitiv dependent de cheia primara.

Examinând relatiile în forma normala de mai sus, observam ca nu exista dependente tranzitive. Deci relatiile sunt în forma normala 3.

Pasul 2.3.  Validarea modelului din nou, utilizând tranzactiile.

Tranzactiile cerute de utilizator sunt:

T1. Crearea si modificare înregistrarilor despre un anumit furnizor

Datele unui furnizor sunt memorate în tabela FURNIZORI. Cheia primara pentru acest tabel este IdFurnizor. În momentul în care se încearca introducerea unui nou furnizor în baza de date, se verifica automat daca acesta exista, caz în care sunt afisate datele acestuia si este permisa modificarea anumitor date precum: Adresa, Nume, Telefon, Cod IBAN, Banca. stergerea unui furnizor din baza de date nu este permisa, acest lucru datorându-se faptului ca datele sale sunt necesare atât în cazul facturilor fiscale emise de acesta cât si al chitantelor fiscale care îi apartin .

T2. Listarea detaliilor despre un furnizor

Tranzactia poate fi rezolvata facând o cautare dupa denumirea furnizorului.

T3. Crearea si modificarea înregistrarilor despre o anumita factura

Se verifica daca numarul facturii fiscale exista deja în baza de date, caz în care nu admitem inserarea. Altfel putem insera detaliile despre factura.

T4. Listarea facturilor neachitate ale unui furnizor/client

Dupa ce în prealabil calculam valoarea facturii, verificam daca valoarea achitata este mai mica, caz în care vom lista factura respectiva.

T5. Listarea facturilor pe o anumita luna

Se va introduce ca parametru luna dorita, iar rezultatul va fi reprezentat de facturile primite în luna respectiva.

T6. Crearea si modificarea inregistrarilor despre un anumit produs

Se verifica daca codul produsului, exista deja in baza de date, caz în care nu admitem inserarea. Altfel putem insera detaliile despre noul produs.

T7. Listarea stocului de produse

Se va lista stocul de produse existent în firma.

T8 . Crearea si modificarea inregistrarilor despre o anumita chitanta fiscala

Se verifica daca numarul chitantei exista deja in baza de date, caz in care nu admitem inserarea. Altfel putem insera detaliile despre noua chitanta .

T9 . Crearea si modificarea inregistrarilor despre o anumita factura fiscala

Se verifica daca numarul facturii exista deja in baza de date, caz in care nu admitem inserarea. Altfel putem insera detaliile despre noua factura .

T10. Listarea chitantelor

Se vor lista chitantele emise de firma.

T11. Crearea si modificarea inregistrarilor despre un bon fiscal

Se verifica daca numarul bonului exista deja in baza de date, caz in care nu admitem inserarea. Altfel putem insera detaliile despre noul bon.

T12. Listarea bonurilor fiscale

Rezultatul va fi afisarea tuturor bonurilor fiscale emise de firma.

Pasul 2.4.  Desenarea diagramei E-R

În cazul nostrum aceasta diagrama nu se modifica

Pasul 2.5.  Definirea regulilor de integritate a bazei de date.

Necesitatea datelor:

Aceste reguli deja le-am identificat, când am documentat atributele în pasul 1.3.

Reguli asupra domeniului atributelor.

Domeniile de definitie au fost deja identificate când am documentat domeniile atributelor în pasul 1.3.

Integritatea entitatilor.

Aceste reguli au fost deja identificate, când am documentat cheile primare în pasul 1.4.

Integritatea relatiilor.

Furnizori(IdFurnizor, CodFurnizor, Denumire, Cod fiscal, Nr RC Firma, Adresa, Telefon, Cod IBAN, Banca )

Cheie primara: IdFurnizor

Produse(CodProdus, Denumire, U/M, Cantitate initiala)

Cheie primara: CodProdus

Bon fiscal(NrBon, Data emit 14214q164o erii, Casier)

Cheie primara: NrBon

Clienti(IdClient, CodClient, Denumire, Cod fiscal, Nr RC Firma, Adresa, Telefon, Cod IBAN, Banca )

Cheie primara: IdClient

Factura fiscala intrare (IdFactura, Serie Factura, Nr Factura, Furnizor, Data, TVA, Achitat, Nr aviz)

Cheie primara: IdFactura

Cheie straina: Furnizor, nenula, cascada referindu-se la Furnizori(.)

Factura fiscala iesire (IdFactura, Serie Factura, Nr Factura, Client, Data, Achitat, Casier)

Cheie primara: IdFactura

Cheie straina: Client, nenula, cascada referindu-se la Clienti(.)

Chitanta fiscala intrare(IdChitanta, NrChitanta, Data, Emitent)

Cheie primara: IdChitanta

Cheie straina: Emitent, nenula, cascada referindu-se la Furnizori(.)

DetaliuChitante intrare (IdIntrareChitanta, IdChitanta, NrFactura, Valoare)

Cheie primara: IdIntrareChitanta

Cheie straina:

NrFactura, nenula, cascada referindu-se la Facturi fiscale intrare(.)

IdChitanta, nenula, cascada referindu-se la Chitante fiscale intrare(.)

Chitanta fiscala iesire(IdChitanta, NrChitanta, Data, Client)

Cheie primara: IdChitanta

Cheie straina: Client, nenula, cascada referindu-se la Clienti(.)

DetaliuChitante iesire (IdIntrareChitanta, IdChitanta, NrFactura, Valoare)

Cheie primara: IdIntrareChitanta

Cheie straina:

NrFactura, nenula, cascada referindu-se la Facturi fiscale iesire(.)

IdChitanta, nenula, cascada referindu-se la Chitante fiscale iesire(.)

IntrariProduse (IdIntrare, IdFactura, Denumire, Cantitate, Pret unitar, Adaos)

Cheie primara: IdIntrare

Cheie straina:

IdFactura, nenula, cascada referindu-se la Facturi fiscale intrare(.)

Denumire, nenula, cascada referindu-se la Produse(.)

IesiriProduse (IdIesire, NrDocument, Denumire, Cantitate)

Cheie primara: IdIesire

Cheie straina:

NrDocument, nenula, cascada referindu-se la Facturi fiscale iesire(.) în uniune cu Bon fiscal(.)

Denumire, nenula, cascada referindu-se la Produse(.)

Diagrama E-R finala:


Document Info


Accesari: 9940
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )