creando informes con ssrs 2008

6
SQL Server 2008: Creando informes con SSRS 2008 (I)! Después delprimer post sobre algunas de las novedades que vendrán con SQL Server 2008, estos días he seguido evaluando y probando nuevas funcionalidades para el seminario de la nueva versión del gestor de base de datos de Microsoft. Esta vez le ha tocado el turno a SQL Server Reporting Services 2008 (SSRS 2008) y a la nuevo Report Designer. Empecemos. Nota: Todas las pruebas las he realizado con la CTP6 de SQL Server 2008. Comenzando con SSRS 2008 Lo primero que vamos a hacer es introducirnos en el nuevo entorno de diseño de informes de SSRS 2008: el Report Designer. Para acceder al nuevo diseñador, cuyo look & feel, es el de la suite de Microsoft Office 2007: Inicio > Todos los programas > Microsoft SQL Server 2008 > Reporting Services > Report Designer Preview. Tras realizar un breve recorrido por las opciones de menú disponibles en esta preview (recordar que estamos con la CTP 6), lo primero que tenemos que hacer para crear un informe es definir la correspondiente fuente de datos en la que vamos a basar nuestro informe: Nuestra fuente de datos va a ser la base de datos (BD) Adventure Works. Para crear una nueva fuente de datos, hacemos clic sobre el enlace que aparece en la superficie de diseño del informeClick here to create a data source and data set for your report. De este modo, se abrirá un asistente que nos irá guiando en el proceso de creación de la fuente de datos y el dataset en el que basaremos nuestro informe. En la primera pantalla del asistente especificamos los siguientes parámetros: El nombre del data source: dsAdventureWorks.

Upload: nestor-rodriguez

Post on 20-Nov-2015

3 views

Category:

Documents


0 download

DESCRIPTION

Tutorial rapido de como crear informes con Services Reporting de SQL Server 2008 r2

TRANSCRIPT

  • SQLServer2008:CreandoinformesconSSRS2008(I)!DespusdelprimerpostsobrealgunasdelasnovedadesquevendrnconSQLServer2008,estosdasheseguidoevaluandoyprobandonuevasfuncionalidadesparaelseminariodelanuevaversindelgestordebasededatosdeMicrosoft.EstavezlehatocadoelturnoaSQLServerReportingServices2008(SSRS2008)yalanuevoReportDesigner.Empecemos.Nota:TodaslaspruebaslasherealizadoconlaCTP6deSQLServer2008.ComenzandoconSSRS2008LoprimeroquevamosahaceresintroducirnosenelnuevoentornodediseodeinformesdeSSRS2008:elReportDesigner.Paraaccederalnuevodiseador,cuyolook&feel,eseldelasuitedeMicrosoftOffice2007:Inicio>Todoslosprogramas>MicrosoftSQLServer2008>ReportingServices>ReportDesignerPreview.

    Trasrealizarunbreverecorridoporlasopcionesdemendisponiblesenestapreview(recordarqueestamosconlaCTP6),loprimeroquetenemosquehacerparacrearuninformeesdefinirlacorrespondientefuentededatosenlaquevamosabasarnuestroinforme:

    Nuestrafuentededatosvaaserlabasededatos(BD)AdventureWorks.Paracrearunanuevafuentededatos,hacemosclicsobreelenlacequeapareceenlasuperficiedediseodelinformeClickheretocreateadatasourceanddatasetforyourreport.Deestemodo,seabrirunasistentequenosirguiandoenelprocesodecreacindelafuentededatosyeldatasetenelquebasaremosnuestroinforme.Enlaprimerapantalladelasistenteespecificamoslossiguientesparmetros:

    Elnombredeldatasource:dsAdventureWorks.

  • Eltipodeconexin:dejamoslaquevienepordefecto(MicrosoftSQLServer).Lacadenadeconexin,queconfiguramosatravsdelbotnEdit.Enlamismaconfiguraremoslossiguientesparmetros:

    Nombredelservidor:localhost.Mecanismodeaccesoalservidor:WndowsAuthentication.Basededatos:AdventureWorks

    Trastestearlaconexin,pulsamosOKyacontinuacinelbotnNextdelasistente.DeestemodoseabrirlaventanadelQueryDesignerenlaqueconstruiremoslasiguienteconsulta:

    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.PulsamosNextyyatenemoslistoeldatasetparausarloennuestroinforme.

    DiseandoelinformeUnavezqueyatenemosconfiguradotodolonecesarioparacrearunprimerinforme,vamosadisearlo:

    DesdeelmenInsertseleccionamosunaregintipoMatrixyhacemosclicsobrelamisma,demaneraqueseinsertarenlasuperficiedediseodelinforme.SituamoselcontrolMatrixenelcentrodelreadediseoutilizandoeliconodemanejo(iconodecuatroflechas).Especificamoselreadedatosatravsdelosnuevossmarttagscontextualesquehansidoaadidasalasuperficiedediseo.AtravsdeestossmarttagsaadimoselcampoSalesAmountenlazonaData.

  • OtradelasnovedadesdeSSRS2008eslarelativaacomoaadirnivelesdeagrupacinauninforme.EstansencillocomoseleccionarelcampodeldatasetquevamosautilizaryarrastrarloalaseccinRowGroupsqueaparecebajolasuperficiedediseodelinforme.RepetimoslaoperacinaadiendoenestaocasinelcampoSubCategory,queinsertaremosjustodebajodeProductCategory.Delamismaformaquehemosespecificadoelagrupamientoporfilas,vamosarealizarelagrupamientoporcolumnas.Paraello:

    ArrastramoselcampoRegionenelreaColumnGroups.RepetimoselprocesoconelcampoOrderYear.

    LosiguientequevamosahaceresaadirSubTotalesalinforme.Paraello,seleccionamoselcampoSalesAmountdelcontrolMatrix,hacemosclicconelbotnderechoyseleccionamoslaopcinAddTotal>Row.AadimosunnuevoSubTotal,peroaniveldecolumna.Paraello,seleccionamoselcampoSalesAmountdelcontrolMatrix,hacemosclicconelbotnderechoyseleccionamoslaopcinAddTotal>Column.LosiguientequevamosahaceresaadirTotalesalinforme.Paraello,seleccionamoselcampoProductCategorydelcontrolMatrix,hacemosclicconelbotnderechoyseleccionamoslaopcinAddTotal>After.

  • Repetimoselproceso,peroseleccionandoenestaocasinelcampoRegion,hacemosclicconelbotnderechoyseleccionamoslaopcinAddTotal>After.Parafinalizarelinforme,utilizamoslasherramientasdisponiblesenelRibbonHomeparadarleunaspectomsvisual.Porejemplo,elinformeenvistadediseopodraquedardelaformaqueseveenlasiguientefigura.Paraprevisualizarelinforme,simplementepulsamoselbotnPreview.

    PublicandoelinformevamosalmendeopcionesypulsamosPublish.Aparecerlapantalladeconfiguracindepublicacindelinforme.Endichaventanaespecificaremoslosparmetrosdepublicacinenelservidor:

    Laurldelservidor:http://localhost:8080/reportserverLacarpetadelreportserverdndevamosapublicarelinforme:/Elnombredelinforme.

    Sinms,pulsamosOKyunavezquefinaliceelprocesodepublicacin,abrimoselnavegadoryespecificamoslaurldelreportmanagerparaprevisualizarlo.

  • YesteseraelresultadoenelReportManager:

    Yestoestododemomento.EnprximospostveremosmsnovedadesdeSSRScomolafuncionalidadTablix,losnuevoscontrolesgrficosocomoserealizalagestindelReportManagerfueradeIIS.Esperoqueelpostoshayaresultadointeresante.