Sunteți pe pagina 1din 8

Proiect Siad

DSS pentru analiza eficientei angajatilor pentru un


producator de confectii textile

Student Focariu Simina


Tehnologiile OLAP sunt concepute pentru exploatarea bazelor de date multidimensionale şi
au ca rol exploatarea facilă a dimensiunilor în care sunt structurate datele. Soluţiile OLAP se
bazează pe principiul restructurării datelor într-un format multidimensional cunoscut sub
numele de hypercub. Acest tip de analiză multidimensională necesită accesarea unui volum
mare de date şi existenţa unor instrumente adaptate pentru a le analiza din diferite puncte de
vedere.
Pentru a realiza un astfel de soft am utilizat urmatoarele componente Visual Studio 2008
Microsoft SQL Server,
Microsoft Analysis service //special dedicat Data Warehouse si Data Mining
Visual Basic .NET
Crystal Reports
*si numeroase componente Visual Basic distribuite gratuit pe Internet
Aplicarea modelului multidimensional de date

Modelul multidimensional, cel mai des utilizat în cazul implementării depozitelor de date,
reprezintă o modalitate mult mai adecvată pentru sistemele decizionale decât modelul
relaţional, bazat pe a treia formă normală, specific sistemelor tranzacţionale (OLTP).
Fără a face abuz de detalii, ne vom limita la o expunere sumară a noţiunilor de bază ale
modelului multidimensional: dimensiunea, atributul, ierarhia, tabelele de fapte şi cele de
dimensiuni.

Dimensiunile reprezintă categorii de informaţie. Exemplul cel mai des întâlnit în cadrul
depozitelor de date este dimensiunea timp. Alegerea dimensiunilor constituie una dintre
etapele cele mai importante în proiectarea unui depozit de date şi presupune atât o bună
cunoaştere a domeniului economic de către proiectant, cât şi spirit de anticipaţie privind
viitoare cerinţe informaţionale.

Un atribut specifică un nivel al unei dimensiuni (de exemplu anul sau luna,în cadrul
dimensiunii “timp”). Atributele unei dimensiuni se poziţionează într-o succesiune de niveluri
numită generic ierarhie. De exemplu, în cadrul dimensiunii “Locaţie Geografica” se poate
configura ierarhia ţară – regiune –judeţ – localitate).
Ierarhie
Tabela de fapte a unui model este tabela ce conţine măsurile activităţii (de exemplu
cifra de afaceri sau suma salariilor pot reprezenta astfel de măsuri). În tabela de fapte măsurile
sunt stocate conform granularităţii stabilite a depozitului. Granularitatea reprezintă gradul
de detaliere a depozitului. Astfel, în funcţie de granularitatea stabilită, se poate specifica cifra
de afaceri la nivel de zi sau la nivel de lună. În determinarea granularităţii depozitului sunt
parcurse două etape:
1. Se vor determina dimensiunile ce vor fi luate în
consideraţie pentru măsurile din tabela de fapte.
2. Se va stabili pentru fiecare dimensiune, în cadrul ierarhiei,
până la ce nivel de detaliu este necesar şi util să se ajungă.
Informaţiile detaliate despre atributele dimensiunilor sunt
stocate în tabelele dimensiuni. Un model multidimensional
va include cel puţin o tabelă de fapte şi mai multe tabele
dimensiune. Relaţiile dintre tabela sau tabelele de fapte şi
tabelele dimensiune se realizează pe bază de chei externe.
(FK)

Utilizarea dimensiunilor:

Primul tab al aplicatiei cuprinde partea de generare a datelor. Fiind un soft educational a
fost mult mai usor sa inserez cuajutorul Visual basic date aleatoare am utilizat random
Private Sub genereazaPersonal(ByVal al As Integer, ByVal persech As Integer)
DimEchipaTA.Fill(SalariiDS.DimEchipa)
DimFunctieTA.Fill(SalariiDS.DimFunctie)
DimProdusTA.Fill(SalariiDS.DimProdus)
DimTimpTA.Fill(SalariiDS.DimTimp)
Dim r1 As Random = New Random(DateAndTime.Today.Millisecond)

For Each echipa As salariiDataSet.DimEchipaRow In SalariiDS.DimEchipa.Rows

For c As Integer = 1 To persech


Dim nume As String = ListNume.Items.Item(r1.Next(0,
ListNume.Items.Count))
Dim prenume As String = ListPrenume.Items.Item(r1.Next(0,
ListPrenume.Items.Count))

Dim idxfunctie As Integer = r1.Next(0, SalariiDS.DimFunctie.Rows.Count)


Dim idxprodus As Integer = r1.Next(0, SalariiDS.DimProdus.Rows.Count)

Dim functie As salariiDataSet.DimFunctieRow =


SalariiDS.DimFunctie.Item(idxfunctie)
Dim produs As salariiDataSet.DimProdusRow =
SalariiDS.DimProdus.Item(idxprodus)

DimPersonalTA.Insert(nume, prenume, "", al, 999999, echipa.id,


functie.id)
Dim personal As salariiDataSet.DimPersonalRow =
DimPersonalTA.GetData().Item(DimPersonalTA.GetData().Count - 1)

Si rezultatul

Aplicatia contine 2 raporte pentru Situatii si pentru Stat de plata fiecare avand cate 2
moduri de raportare table si chart care pot fi exportate in 3 medii diferite HTML(web), XLS
pentru Microsoft Office Excel si pdf pentru a nu fi modificate ulterior
Raportele pot fi facute pe Filiale, Departamente, Sectii, Echipe intre 2 date specifice de
exemplu 1 ianuarie si 30 iunie 2008
Raport exemplu html:

Raportul Stat de plata pentru Departamentul 2 cu tabelele sortabile


Analiza Olap
Remarcam ca putem schimba dimensiunile dupa care efectuam analiza