Dezvoltarea aplicațiilor web in C# și SQL SERVER COORDONATOR ȘTIINȚIFIC Conf. Dr. Baranga Andrei ABSOLVENT Cristian Despa București 2017 1 CUPRINS… [612888]
UNIVERSITATEA DIN BUCUREȘTI
FACULTATEA DE MATEMATICĂ ȘI INFORMATICĂ
LUCRARE DE LICENȚĂ
Dezvoltarea aplicațiilor web in C# și SQL SERVER
COORDONATOR ȘTIINȚIFIC
Conf. Dr. Baranga Andrei
ABSOLVENT: [anonimizat]
2017
1 CUPRINS
CAPITOLUL 1 INTRODUCERE 3
1.1. Alegerea temei 3
1.2. Rolul aplicației 3
1.3. Structura lucrării 4
CAPITOLUL 2 TEHNOLOGII UTILIZATE 5
2.1. Server web: Generalități 5
2.2. Pagini web: Generalități 6
2.2.1. Pagini web statice și dinamice 6
2.3. Elemente grafice: HTML, CSS, JavaScript 7
2.3.1. HTML (HyperText Markup Language) 7
2.3.2. CSS (Cascading Style Sheets) 8
2.3.3 . JavaScript 9
2.4. AJAX: Generalități 9
2.5. JSON: Generalități 10
2.6. Limbaj de programare: C# 11
2.7. .NET Framewok 12
2.7.1. ASP.NET Framework 13
2.8. Baza de date: Microsoft SQL Server 14
2.8.1. SQL Server Management Studio (SSMS) 14
2.9. SQL Server Reporting Services (SSRS) 16
2.9.1. Report Builder 16
2.9.2. Report Server Database 17
CAPITOLUL 3 APLICAȚIE IN C# ȘI MICROSOFT SQL SERVER 17
3.1. Mediul de dezvoltare Error! Bookmark not defined.
3.2. Arhitectură aplicație Error! Bookmark not defined.
3.3. Arhitectură bază de date Error! Bookmark not defined.
3.4. Funcționalități aplicație Error! Bookmark not defined.
2 3.4.1. Sistem de autentificare și autorizare Error! Bookmark not defined.
3.4.2. Meniul principal Error! Bookmark not defined.
3.4.4. Schimbarea parolei utilizatorului Error! Bookmark not defined.
3.4.5. Raportare Error! Bookmark not defined.
3.4.6. Introduc ere Date Error! Bookmark not defined.
CAPITOLUL 4 CONCLUZII Error! Bookmark not defined.
CAPITOLUL 5 LISTĂ FIGURI Error! Bookmark not defined.
CAPITOLUL 6 BIBLIOGRAFIE Error! Bookmark not defined.
3 CAPITOLUL 1 INTRODUCERE
1.1. Alegerea temei
Tema prezentei lucrări constituie într -o aplicație destinată unei firme de salubrizare în
vederea automatizării anumitor procese de lucru.
Istoria ne demonstrează cel mai bine cum omul a creat unelte pentru a -și face munca mai
ușoară. De la bățul de arat, pana la pluguri, apoi tractoare, am ajuns la o agricultura modernă,
unde munca fizică este considerabil mai redusă. Acesta este unul dintre multele exemple ale
evoluției. Evoluția este într -o legătură strânsă cu automatizarea proceselor de lucru. Procesel e
automatizate ne oferă mai mult timp în care putem să elaborăm noi idei, noi produse, noi servicii.
Automatizarea proceselor de lucru a devenit esențială în lumea modernă. Accesul la
informații, analiza datelor cât și prelucrarea lor într -un timp foarte s curt, au devenit în ziua de azi
o necesitate pentru o bună funcționare a unei afaceri.
1.2. Rolul aplicației
Aplicația prezentată este un produs conceput în urma studierii nevoilor unei firme de
salubrizare în vederea stocării, analizei și pregătirii p entru facturare a activităților prestate de
anumite categorii de utilaje. Aceasta este o aplicație care automatizează mai multe procese de
calcul.
Activitățile pe care utilajele le prestează sunt împărțite în patru operațiuni: măturat
mecanizat, stropit c arosabil, spălat carosabil și spălat trotuare. Fiecare operațiune are mai multe
programe prestabilite în funcție de zi, tură (ziua este împărțita în doua ture de cate 12 ore) și
săptămâna. Pentru a face dovada activității utilajelor în fața părții contract ante a fost implementat
un sistem GPS ( Global Positioning System ) complex care ne transmite când și unde utilajul a
prestat o activitate. După prelucrarea datelor, oferite de aplicația GPS, și identificarea zonelor
unde utilajul a avut activitate, operator ul de date introduce, la sfârșitul turei, aceste zone în
aplicația prezentată.
Beneficiile aduse în urma implementării aplicației sunt următoarele:
● Reducerea timpului de prelucrare a datelor în vederea normării și facturării
activităților prestate de utila jele specifice;
● Analiza, de către responsabili, a activității utilajelor (efectuarea programelor,
recuperarea zonelor restante) în vederea eficientizării lor;
● Un istoric solid al activității prestate de utilaje;
4 ● Generarea programelor (calendarului de activ ități) care trebuiesc respectate în
funcție de operațiunea și data selectată și vizualizarea lor de către diferiți
utilizatori;
1.3. Structura lucrării
Prezenta lucrare este structurata pe n capitole, după cum urmează:
Capitolul 2 – Tehnologii utilizate – o prezentare generală a tehnologiilor utilizate în
vederea dezvoltării aplicației web: prezentare generală a serverelor web și a paginilor web,
elementele de interfață grafică pentru utilizator, limbajul de programare utilizat în dezvoltarea
aplicației, metoda de stocare a datelor, prezentarea mediilor de dezvoltare a aplicației;
Capitolul 3 – Aplicație în C# și SQL – descrierea detaliilor în vederea dezvoltării aplicației
Capitolul 4 – Concluzii –
5 CAPITOLUL 2 TEHNOLOGII UTILIZATE
2.1. Server web: Generalități
În 1989, Tim Berners -Lee, actual director al World Wide Web Consortium , a propus un
protocol pentru a accesa o colecție de documente ( World Wide Web ) găzduite pe diverse
calculatoare (numite și Servere Web), pe care l -a numit Hypertext Transfer Protocol (HTTP) [1].
Principiul protocolului era unul simplu: pentru a accesa documentele găzduite pe alte
calculatoare, acestea trebuie sa aibe o adresă unică pe internet.
Un Server Web este un computer conceput să furnizeze pagini web. Când un utilizator
solicita o pagina web, infrastructura internetului trimite o cerere către un Server Web, iar acel
computer caută informația în componența sa hardware. În cazu l în care găsește acea solicitare,
computerul întoarce informația prin infrastructura internetului în navigatorul web și o afișează.
Serverele Web sunt diferite prin construcție față de computerele cunoscute publicului
larg. Acestea necesita un sistem d e ventilație mai mare, deoarece funcționează 24 din 7. Din
același motiv, cele mai multe sunt ținute în camere ventilate, la temperaturi optime. În general,
Serverele Web au o capacitate mare de memorie, deoarece trebuie să stocheze o multitudine de
date.
Ca un Server Web să funcționeze corect, are nevoie, pe lângă o structură hardware
specifică, și de o structură software. Doua dintre cele mai consacrate structuri software pentru
Servere Web sunt: Windows Server și Linux Server . Windows Server este un sis tem de operare
dezvoltat de Microsoft , care trebuie achiziționat. Linux Server , pe de altă parte, este un open
source , un soft gratuit, care se “înțelege”, în general, cu PHP (un limbaj de programare).
Windows Server “preferă” limbajul C#.
Comunicarea in tre un Client și un Server Web se realizează pe baza unor cereri ale
utilizatorului. Înțelegem prin Client dispozitive folosite de utilizatori, precum: calculator, telefon,
tablete, laptopuri etc. Ca utilizatorul să acceseze un site web de pe un Server Web , el trebuie, în
primul rând, să fie conectat fizic la internet. Folosind setul de protocoale TCP/IP, stabilește
conexiunea utilizând o combinație de cabluri media și suporturi wireless, astfel încât să existe
mediul potrivit pentru ca Severul Web să comun ice cu calculatorul utilizatorului. În momentul în
care conexiunea la internet este realizată și funcțională, clientul trimite o cerere (mesaj HTTP)
către Serverul Web. Acesta procesează cererea și trimite rezultatul înapoi către client.
O diagramă sugest ivă în ceea ce privește comunicarea Client -Server este cea descrisa în
Figura 2.1 [2]:
6
Figura 2.1 – Comunicare Client -Server
2.2. Pagini web: Generalități
Informațiile din World Wide Web (WWW) sunt stocate in Pagini Web. O Pagina Web
este un document text, scris într -un limbaj de marcare, numit HyperText Markup Language
(HTML ). O pagina poate să conțină oricare dintre următoarele elemente: tabele, formulare, text,
liste, animație, element e grafice, stiluri, script -uri, obiecte multimedia, secvente audio etc. Prima
Pagina Web a fost realizată in anul 1991 de către Tim Berners -Lee.
Utilizatorul poate accesa o Pagina Web prin intermediul unui navigator web ( Chrome,
Internet Explorer, Lynx, Mo zilla etc.) care interpretează limbajul HTML [3].
Paginile web sunt împărțite în doua categorii:
● Pagini web statice;
● Pagini web dinamice;
2.2.1. Pagini web statice și dinamice
O pagină web statică este un document care, de fiecare dată când este solici tată de către
utilizator, se afișează în navigator exact așa cum este stocat în server. Schimbările apar doar
atunci când codul sursa al paginii este modificat manual de către dezvoltator. Puteți observa în
Figura 2.2 , o diagrama care ne arat ă cum un server web întoarce o pagina web static ă:
7
Figura 2.2 – Pagină web statică
O pagin ă web dinamic ă este un document care, de fiecare dat ă când este solicitat ă de
către utilizator, poate să aibe un conținut diferit. Aceste pagini sunt generate de l imbaje de
aplicații specifice și interacțiuni cu baze de date. În Figura 2.3 , se observa cum serverul web
interacționează cu o aplicație și cu o baz ă de date și întoarce o pagina web dinamic ă:
Figura 2.3 – Pagină web dinamic ă
2.3. Elemente grafice: HTML , CSS, JavaScript
2.3.1 . HTML (HyperText Markup Language)
HTML (HyperText Markup Language) este un limbaj de marcare care st ă la baza tuturor
paginilor web [4]. HTML conține o serie de etichete de marcare care sunt folosite pentru a
clasifica și grupa elemente într -o pagină web . Un browser web interpretează aceste etichete de
marcare și întoarce rezultatul în ceea ce recunoaștem în mod vizibil ca un site web. Element ele
de marcare sunt numite și tag-uri. De regulă, fiecărui tag îi corespunde un tag de închidere,
astfel încât navigatorul web să știe când să se oprească. Exemplu:
8 <p> In acest tag putem introduce un paragraf. </p>
Tag-urile pot avea, de asemenea, atribute care adaugă elemente suplimentare
conținutului. Exemplu:
<p align=”center”> Bine ați venit! </p>
Observăm în exemplul de mai sus atributul align care este un atribut de stil. Există o
multitudine de atribute care pot însoți un tag. Aceste atribute variază în funcție de tag -ul utilizat.
Din punct de vedere al sintaxei folosite, atributele sunt urmate de semnul egal ( =) și au asignată
o valoare încadrată intre ghilimele duble ( ”).
Orice dezvoltator care scrie în limbaj ul de marcare HTML , trebuie să respecte o structura
și o sintaxă specifică, pe care o regăsim în exemplul ce urmează:
<!DOCTYPE html>
<html>
<head>
<title> Titlul paginii web </title>
</head>
<body>
<p> Aici se introduce un paragraf </p>
</body>
</html>
<!DOCTYPE html> este tag -ul care specifică tipul de document și transmite către
navigatorul web că pagina pe care o interpretează este marcată in HTML5 . Tag-ul <html>
reprezintă rădăcina unui document HTML. Tag -ul HTML conține tot codul HTML , cu excepția
tag-ului <!DOCTYPE html> [5]. Elementul de marcare <head> poate să conțină informații
despre pagina web, cum ar fii tag-urile : <title> , <script> , <meta> , <link> etc. Tag -ul <body>
conține toate elementele pe care le vede utilizatorul. Navigatorul web inte rpretează elementele
din tag -ul <body> , apoi le afișează.
2.3.2. CSS (Cascading Style Sheets)
CSS (Cascading Style Sheets) este un limbaj de stilizare folosit pentru descrierea
aspectului și formatării unui limbaj de marcare, precum HTML. Prima propunere al acestui
limbaj de stilizare, a fost propus în anul 1994 de către Håkon Wium Li e [6]. CSS ne ajut ă să dăm
paginii web un design plăcut, astfel încât putem face ca fonturile, marginile, culorile, bordurile și
alte elemente să cape te un aspect potrivit.
Implementarea stilurilor CSS, într -o pagina web, se pot face în mai multe feluri după cum
urmează [7] :
● Utilizând atributul style in interiorul tag-ului. Exemplu:
9 <p style="color: green;"> Acest text o sa apară scris cu
verde. < /p>
● În secțiunea head din documentul HTML , utilizând tag-ul style. Exemplu:
<head>
<style type="text/css"> p {color: green;} </style>
</head>
● În documentul HTML , utilizând tag-ul link. De obicei, acest tag se pune în
secțiunea <head> după elementul <title> . Exemplu:
<head>
<title> Titlul Paginii Web </title>
<link rel="stylesheet" type="text/css" href="extern.css">
</head>
2.3.3. JavaScript
JavaScript este unul dintre cele mai populare limbaje de programare din ziua de azi. În
anul 1995, Brendan Eich, în timp ce lucra la Netscape , a inventat acest limbaj pentru a face
paginile web interactive [8]. JavaScript este cunoscut ca un limbaj de interpretare, un limbaj care
nu trebuie compilat precum C sau Java . Interpretarea limbajului JavaScript este realizat ă direct
de navigatorul web. La fel ca CSS, JavaScript se poate implementa în paginile HTML în 3 feluri
după cum urmează:
● Utilizând tag-ul script . Acest tag este pus ori în tag-ul header , ori în tag-ul body
al fișierului HTML. Exemp lu:
<script> alert(location.hostname); </script>
● Utilizând un fișier JavaScript extern, pe care îl asociem cu fișierul HTML prin
tag-ul script cu atributul src. Exemplu:
<script src=”document.js”> </script>
● Utilizând evenimente JavaScript în interiorul tag-ului. Exemplu:
<h1 onclick=”alert(‘Notificare!’)”> Notificare </h1>
2.4. AJAX : Generalități
AJAX este acronimul lui Asynchronous JavaScript and XML , iar termenul AJAX a apărut
in anul 2005, într -o publicație scris ă de Jesse James Garrett, intitulat ă "Ajax: A New Approach to
Web Applications" [9]. AJAX este un set de tehnologii utilizate împreună pentru a permite
actualizarea anumitor porțiuni ale paginii web, fără a fi nevoie de reîncărcarea întregii pagini. Un
exemplu bun pentru a arăta funcționalitatea AJAX îl reprezintă sugestiile dintr -un motor de
căutare, precum Google . Atunci când scrieți un cuvânt cheie pentru a căuta o informație, o lista
10 cu sugestii apare. Observăm in Figura 2.4 [10] diferența dintre u n model tradițional de
comunicare, Clinet -Server, și modelul AJAX :
Figura 2.4 – Modelul tradițional pentru aplicațiile web (stânga) comparativ cu modelul Ajax (dreapta)
2.5. JSON : Generalități
JSON (JavaScript Object Notation) este o extensie a limbajului de programare
JavaScript . Putem definii JSON ca un format simplu de schimb de date care are ca baza obiecte
JavaScript . Putem observa mai jos, un exemplu scris în JSON care creează un obiect pe care îl
accesam prin variabila cristi:
var cristi = {
"gen" : "masculin",
"varsta" : "23",
"ocupatie" : "student"
};
Pentru a afișa anumite informații din obiectul de mai sus, putem folosii următoarele linii
de cod:
11 document.write('Cristi are ' cristi.varsta ' de ani.'); // Output:
Cristi are 23 de ani .
document.write('Cristi este ' cristi.ocupatie '.'); // Output: Cristi
este student.
JSON este construit pe doua structuri [11]:
● O colecție de perechi nume/valoare. În diverse limbaje, aceasta este realizată ca
un obiect, o î nregistrare, o structură, un dicționar, o tabelă hash , o listă de chei,
sau un tablou asociativ;
● O listă ordonată de valori. În cele mai multe limbaje, aceasta este realizată ca un
tablou, un vector, o listă, sau un șir.
2.6. Limbaj de programare: C#
C# este un limbaj de programare cu scop general, conceput de Anders Hejlsberg, raportat
la programarea orientată pe obiecte ( POO ). Dezvoltarea acestui limbaj de programare a apărut in
anul 1999, sub numele de COOL (C-like Object Oriented Language ), dar din motive de
marketing , în anul 2000, cei de la Microsoft au redenumit limbajul în C#. Deși a fost creat de
Microsoft , limbajul C# poate fii compilat și pe alte sisteme de operare cum ar fi: Macintosh,
FreeBSD, Linux .
Limbajul C# a fost conceput pentru a putea dezvolta aplicații pentru orice domeniu și este
utilizat împreună cu platforma .NET . Cu limbajul de programare C#, nu numai ca se pot dezvolta
aplicații web, dar se poate utiliza și în dezvoltarea aplicațiilor mobile, aplicațiilor Enterprise,
jocuri video etc.
Din punct de vedere al sintaxei, C# este similar cu C++ , C și Java . In special [12]:
● Punctul și virgula ( 😉 sunt folosite pentru a indica sfârșitul unei instrucțiuni ;
● Acoladele ( {}) sunt folosite pentru a grupa funcțiile. Funcțiile sunt gr upate în
clase și clasele sunt grupate în spații de nume;
● Atribuirea variabilelor se face utilizând semnul egal ( =), iar compararea lor prin
dublarea semnului egal ( ==);
● Parantezele pătrate ( []) sunt folosite cu matrice, atât pentru a le declara cat și
pentru a obține o valoarea unui indice a matricei;
● Comentarea unei linii de cod se face cu doua bare oblice ( //);
● Comentarea mai multor linii de cod începe cu o bara oblica și un asterisc ( /*), iar
sfârșitul comentariului se marchează cu un asterisc și o bara oblica ( */).
12 Codurile și datele scrie în C# trebuie sa fie incluse în clase. Variabilele nu se pot defini în
afara unei clase și nu se pot scrie coduri care sa nu fie incluse într -o clasa.
Atunci când vrem să dezvoltam un program în C#, sau in orice li mbaj de programare,
este indicat sa respectăm următorii pași [13]:
● Determinarea obiectivelor pe care vrei ca aplicația sa le atingă;
● Determinarea metodelor pe care vrei sî le folosești în scrierea codului;
● Realizarea aplicației;
● Rularea programului pent ru a verifica atingerea obiectivelor.
In exemplu de mai jos, se poate observa un program scris în limbajul C# care afișează,
binecunoscutul, “Hello World!”:
using System;
namespace HelloWorld
{
class Hello
{
static void Main()
{
Console.WriteLine("Hello World!");
}
}
}
Limbajul C# vă permite să lucrați cu două tipuri de date: tipuri valorice și tipuri de
referință. Tipurile uzuale precum char, int și float sunt tipuri valorice. Tipuri le de referință conțin
variabile care se ocupă de obiecte și matrice [14].
2.7. .NET Framewok
La sfârșitul anilor 1990, Microsoft a început dezvoltarea framework -ului .NET . Inițial a
fost numit Next Generation Windows Services (NGWS ), iar în anul 2001, Microsoft a lansat
prima versiune beta sub numele de .NET 1.0 Framework [15].
.NET Framework este o platforma software de execuție care furnizează servicii și conține
un set extins de biblioteci pentru aplicații și pentru dezvoltat ori. .NET Framework a fost
conceput pentru a fi instalat pe sisteme de operare și este împărțit în doua categorii principale
[16]:
● Un mediu de execuție numit Common Language Runtime (CLR), similar cu
mașina virtuala Java ;
13 ● O bibliotecă de dimensiuni mari numita Framework Class Library (FCL), care
oferă serviciile necesare pentru a dezvolta sau a executa aplicațiile moderne.
Construcțiile făcute în limbaje orientate pe obiecte sunt interpretate de Framework -ul
.NET . Acest a suportă pe deplin clasa, proprietățile, moștenirea, evenimentele, constructorii,
metodele, polimorfismul și alte construcții orientate pe obiecte.
2.7.1. ASP.NET Framework
ASP.NET Framework este un subset al Framework -uli .NET folosit pentru dezvol tarea
aplicațiilor web dinamice și serviciilor web. Aplicațiile pot fi scrise în orice limbaj de
programare care este compatibil cu Common Language Runtime (CLR), inclusiv C# [17].
ASP.NET Framework oferă trei modele de programare pentru dezvoltarea ap licațiilor
web: ASP.NET Web Forms, ASP.NET Web Pages și ASP.NET MVC. Fiecare model vizează
diferite stiluri de dezvoltare. ASP.NET Web Forms (pagini cu extensia .aspx ) este un model care
pune accentul pe programarea declarativa și bazata pe control. ASP.NE T Web Pages (pagini cu
extensia .cshtml si .vbhtml ) vizează programatorii care vor o simpla și rapida dezvoltare a unei
aplicații web. Modelul ASP.NET MVC încurajează separarea dintre stratul de logica a unei
afaceri bazate pe o aplicație web și stratul sau de prezentare [18].
In Figura 2.7.1 se observa comunicarea client -server și “poziționarea” Framework -ului
ASP.NET :
Figura 2.7.1 – ASP.NET Framework
14 2.8. Baza de date: Microsoft SQL Server
O bază de date este o colecție sistematică de date care este stocată pe un server.
Deoarece datele dintr -o bază de date sunt organizate în diverse moduri, acestea sunt operate cu
ajutorul sistemelor de gestiune a bazelor de date, facilitând manipularea lor. Sistemele de
gestiune a bazelor de date ( SGBD ) pot fi definite ca o colecție de programe care permite
utilizatorului (administratorului) sa acceseze baza de date, să manipuleze datele și să ajute la
reprezentarea lor. Primul concept a unui sistem de gestiune a bazelor de date a fost implementat
în anul 1963, de către Charles Bachman [19].
Structured Query Language (SQL) este un limbaj de comunicare cu baze de date
relaționale creat de IBM. Sistemele de gestiune a bazelor de date precum MySQL, Oracle,
Microsoft SQL Server, Sybase etc. folosesc SQL. Un exemplu de interogare SQL este următorul:
SELECT *
FROM ANGAJATI
WHERE SALARIU > 1000 // selectează toate câmpurile din tabela ANGAJATI, unde
angajații au salariu mai mare strict de 1000.
Microsoft SQL Server este un sistem de gestiune a bazelor d e date relaționale dezvoltat
de Microsoft . Acest sistem de gestiune a bazelor de date suportă Transact Structured Query
Language (T-SQL). T-SQL este o extensie procedural ă a SQL, ce include programarea
procedural ă, variabile locale, diverse funcții de prelucrare a șirurilor de caractere, a datelor etc.
[20]. SQL Server a intrat pe piața de baze de date sub licența Microsoft -ului, în concurență cu
Oracle , IBM și Sybase . Componența de bază a Microsoft SQL Server este SQL Server Database
Engine , care controlează stocarea, prelucrarea și securitatea datelor și asigură rapiditatea
proceselor de tranzacție [21].
2.8.1. SQL Server Management Studio (SSMS)
SQL Server Management Studio (SSMS ) a fost dezvoltat de Microsoft și lansat, pentru
prima oară, odată cu Microsoft SQL Server 2005 [22]. SSMS este o aplicație client sau o
interfață pentru utilizator care se conectează, în cazul nostru, la SQL Server, configurat pe o rețea
locală sau globală. Utilizând SQL Server Management Studio putem configur a și administra
componentele din SQL Server , Azure SQL Database și SQL Data Warehouse .
O caracteristică importantă a SQL Server Management Studio este Object explorer
(Figura 2.8.1) , cu ajutorul căreia putem gestiona și vizualiza toate obiectele dintr -o instanta SQL
Server .
15
Figura 2.8.1 – SQL Server Management Studio – Object Explorer
Alte caracteristici importante de menționat a SQL Server Management Studio sunt următoarele:
● Template Explorer [23]: permite crearea, căutarea și modificarea template -urilor .
În SSMS , un template este un fișier predefinit ce conține mai multe scripturi SQL
care ne ajuta la crearea de obiecte, cum ar fi: baze de date, tabele, indexuri,
proceduri stocate, declanșato are, funcții.
● Solution Explorer : permite gestionarea elementelor, cum ar fi: baze de date,
interogări, conexiuni de date și fișiere.
16 2.9. SQL Server Reporting Services (SSRS)
SQL Server Reporting Services , abreviat ca SSRS , este, conform definiției Microsoft, “o
platformă deschisă și extensibilă ce permite proiectarea, managementul și livrarea rapoartelor
complexe și interactive” [24]. SSRS permite crearea rapoartelor folosind o multitudine de
controale avansate de vizualizare a datelor. Un rapor t poate fi definit ca un mijloc de vizualizare
a datelor derivate din una sau mai multe surse [25]. Limbajul care sta la baza rapoartelor este
Report Definition Language (RDL) , un limbaj de marcare extensibil ( XML ).
Cu SQL Server Reporting Services putem popula rapoartele cu date colectate din mai
multe surse (diferite tabele, diferite baze de date). SSRS facilitează implementarea, accesul
securizat și executarea rapoartelor cu opțiunea de a le exporta in diferite formate. Este posibila și
programarea li vrării rapoartelor, în funcție de intervalul stabilit, pe diferite platforme cum ar fi:
email, SharePoint și multe alte platforme.
Platforma SQL Server Reporting Services conține un set de instrumente de dezvoltare,
instrumente de implementare, servicii w eb, aplicații, toate lucrând împreună pentru a furniza
rapoarte complexe [26].
SQL Server Reporting Services face parte, împreună cu SQL Server Integration Services
(SSIS) și SQL Server Analysis Services (SSAS ), din categoria Business Intelligence (BI). Prin BI,
înțelegem convertirea datelor în informații prin strategie și tehnologie. Cu SQL Server
Integration Services putem colecta date din mai multe surse. La baza SSIS stau trei procese
importante: extragerea datelor, transformarea datelor și încărca rea lor. Aceste trei procese sunt
numite ETL (Extract Transform Load ). SQL Server Analysis Services este un instrument de
procesare, analiza și extragerea datelor din Microsoft SQL Server . SSAS este folosit de către
organizații pentru analiza și organizare a informațiilor din una sau mai multe surse [27].
2.9.1. Report Builder
Report Builder este un instrument care ajută la dezvoltarea rapoartelor tabelare,
rapoartelor grafice, aplicații de raportare și componente de raportare. Raportarea informatica
depinde de foarte mulți factori, de exemplu: de arhitectura bazelor de date de unde extragem
informația, organizarea datelor, corectitudinea datelor etc.. Din acest motiv, este greu să fixam o
limită a ceea ce se poate construii cu ajutorul instrumentului Report Builder . Dezvoltatorii
acestui instrument, în speță Microsoft , au ajuns la următoarea “ecuație” (Figura 2.9.1) [28]:
17
Figura 2.9.1 – The Reporting Equation
După cum se poate observa in Figura 2.9.1 , pentru a avea o raportare funcțională, avem
nevoie de acces la date, interogarea lor și un șablon de raportare.
Rapoartele se salvează cu extensia .rdl (Report Definition Language ). Report Definition
Language este un standard, propus de Microsoft , pentru definirea rapoartelor la baza căruia stă
XML (eXtensible Markup Language ). Se pot definii trei elemente importante ce stau la baza
fișierelor cu extensia .rdl [29]:
● Stilul paginii – felul în care se afișează diverse elemente: tabelele, câmpurile,
imaginile, graficele;
● Conexiuni la baza de date și parametrii – conexiunea la baza de date, interogarea
parametrilor pentru extragerea datelor și definirea parametrilor care pot fi
furnizați de client;
● Definirea câmpurilor – atribuirea câmpurilor cu formule, date dinamice sau date
provenite din baza de da te.
2.9.2. Report Server Database
Report Server Database este o baza de date SQL Server care stochează diverse elemente
după cum urmează:
●
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Dezvoltarea aplicațiilor web in C# și SQL SERVER COORDONATOR ȘTIINȚIFIC Conf. Dr. Baranga Andrei ABSOLVENT Cristian Despa București 2017 1 CUPRINS… [612888] (ID: 612888)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
