Sei sulla pagina 1di 6

SQLServer2008:CreandoinformesconSSRS

2008(I)!
Despusdelprimerpostsobrealgunasdelasnovedadesquevendrn
conSQLServer2008,estosdasheseguidoevaluandoyprobando
nuevasfuncionalidadesparaelseminariodelanuevaversindelgestor
debasededatosdeMicrosoft.EstavezlehatocadoelturnoaSQL
ServerReportingServices2008(SSRS2008)yalanuevoReport
Designer.Empecemos.
Nota:TodaslaspruebaslasherealizadoconlaCTP6deSQLServer
2008.
ComenzandoconSSRS2008
Loprimeroquevamosahaceresintroducirnosenelnuevoentornode
diseodeinformesdeSSRS2008:elReportDesigner.Paraacceder
alnuevodiseador,cuyolook&feel,eseldelasuitedeMicrosoft
Office2007:Inicio>Todoslosprogramas>MicrosoftSQL
Server2008>ReportingServices>ReportDesignerPreview.

Trasrealizarunbreverecorridoporlasopcionesdemendisponibles
enestapreview(recordarqueestamosconlaCTP6),loprimeroque
tenemosquehacerparacrearuninformeesdefinirlacorrespondiente
fuentededatosenlaquevamosabasarnuestroinforme:
Nuestrafuentededatosvaaserlabasededatos(BD)Adventure
Works.
Paracrearunanuevafuentededatos,hacemosclicsobreelenlace
queapareceenlasuperficiedediseodelinformeClickhereto
createadatasourceanddatasetforyourreport.
Deestemodo,seabrirunasistentequenosirguiandoenel
procesodecreacindelafuentededatosyeldatasetenelque
basaremosnuestroinforme.Enlaprimerapantalladelasistente
especificamoslossiguientesparmetros:
Elnombredeldatasource:dsAdventureWorks.

Eltipodeconexin:dejamoslaquevienepordefecto
(MicrosoftSQLServer).
Lacadenadeconexin,queconfiguramosatravsdel
botnEdit.Enlamismaconfiguraremoslossiguientes
parmetros:
Nombredelservidor:localhost.
Mecanismodeaccesoalservidor:WndowsAuthentication.
Basededatos:AdventureWorks
Trastestearlaconexin,pulsamosOKyacontinuacinel
botnNextdelasistente.Deestemodoseabrirlaventana
delQueryDesignerenlaqueconstruiremoslasiguienteconsulta:

SELECT
PC.NameASProductCategory,PS.NameASSubCategory,
DATEPART(yy,SOH.OrderDate)ASOrderYear,
'Q'+DATENAME(qq,SOH.OrderDate)ASOrderQtr,
SUM(SOD.UnitPrice*SOD.OrderQty)ASSalesAmount,
Sales.SalesTerritory.[Name]ASTerritory,
Sales.SalesTerritory.[Group]ASRegion
FROM
Production.ProductSubcategoryASPSJOIN
Sales.SalesOrderHeaderASSOHJOIN
Sales.SalesOrderDetailASSODONSOH.SalesOrderID=
SOD.SalesOrderIDJOIN
Production.ProductASPONSOD.ProductID=P.ProductIDON
PS.ProductSubcategoryID=P.ProductSubcategoryIDJOIN
Production.ProductCategoryASPCONPS.ProductCategoryID=
PC.ProductCategoryIDJOIN
Sales.SalesTerritoryONSOH.TerritoryID=
Sales.SalesTerritory.TerritoryID

WHERE
(SOH.OrderDateBETWEEN'1/1/2003'AND'12/31/2004')
GROUPBY
DATEPART(yy,SOH.OrderDate),PC.Name,
PS.Name,'Q'+DATENAME(qq,SOH.OrderDate),
PS.ProductSubcategoryID,
Sales.SalesTerritory.Name,Sales.SalesTerritory.[Group]

Probamoslaconsultaparaverquresultadosproduce.
PulsamosNextyyatenemoslistoeldatasetparausarloennuestro
informe.

Diseandoelinforme
Unavezqueyatenemosconfiguradotodolonecesarioparacrearun
primerinforme,vamosadisearlo:
DesdeelmenInsertseleccionamosunaregintipoMatrixy
hacemosclicsobrelamisma,demaneraqueseinsertarenla
superficiedediseodelinforme.
SituamoselcontrolMatrixenelcentrodelreadediseo
utilizandoeliconodemanejo(iconodecuatroflechas).
Especificamoselreadedatosatravsdelosnuevossmarttags
contextualesquehansidoaadidasalasuperficiedediseo.A
travsdeestossmarttagsaadimoselcampoSalesAmountenla
zonaData.

OtradelasnovedadesdeSSRS2008eslarelativaacomoaadir
nivelesdeagrupacinauninforme.Estansencillocomo
seleccionarelcampodeldatasetquevamosautilizaryarrastrarlo
alaseccinRowGroupsqueaparecebajolasuperficiedediseo
delinforme.
Repetimoslaoperacinaadiendoenestaocasinel
campoSubCategory,queinsertaremosjustodebajo
deProductCategory.
Delamismaformaquehemosespecificadoelagrupamientopor
filas,vamosarealizarelagrupamientoporcolumnas.Paraello:
ArrastramoselcampoRegionenelreaColumnGroups.
RepetimoselprocesoconelcampoOrderYear.

LosiguientequevamosahaceresaadirSubTotalesalinforme.
Paraello,seleccionamoselcampoSalesAmountdelcontrolMatrix,
hacemosclicconelbotnderechoyseleccionamoslaopcinAdd
Total>Row.
AadimosunnuevoSubTotal,peroaniveldecolumna.Paraello,
seleccionamoselcampoSalesAmountdelcontrolMatrix,hacemos
clicconelbotnderechoyseleccionamoslaopcinAddTotal>
Column.
LosiguientequevamosahaceresaadirTotalesalinforme.Para
ello,seleccionamoselcampoProductCategorydelcontrolMatrix,
hacemosclicconelbotnderechoyseleccionamoslaopcinAdd
Total>After.

Repetimoselproceso,peroseleccionandoenestaocasinel
campoRegion,hacemosclicconelbotnderechoyseleccionamos
laopcinAddTotal>After.
Parafinalizarelinforme,utilizamoslasherramientasdisponiblesen
elRibbonHomeparadarleunaspectomsvisual.Porejemplo,el
informeenvistadediseopodraquedardelaformaqueseveen
lasiguientefigura.
Paraprevisualizarelinforme,simplementepulsamosel
botnPreview.

Publicandoelinforme
vamosalmendeopcionesypulsamosPublish.Aparecerlapantalla
deconfiguracindepublicacindelinforme.Endichaventana
especificaremoslosparmetrosdepublicacinenelservidor:
Laurldelservidor:http://localhost:8080/reportserver
Lacarpetadelreportserverdndevamosapublicarelinforme:/
Elnombredelinforme.
Sinms,pulsamosOKyunavezquefinaliceelprocesodepublicacin,
abrimoselnavegadoryespecificamoslaurldelreportmanagerpara
previsualizarlo.

YesteseraelresultadoenelReportManager:

Yestoestododemomento.Enprximospostveremosmsnovedades
deSSRScomolafuncionalidadTablix,losnuevoscontrolesgrficoso
comoserealizalagestindelReportManagerfueradeIIS.Esperoque
elpostoshayaresultadointeresante.

Potrebbero piacerti anche