Siguiendo con las novedades que vienen con SQL Server 2008 R2, y en particular con la nueva región de datos de tipo Mapa que tenemos disponible para crear informes en SQL Server Reporting Services 2008, en esta ocasión os dejo un vídeo demostrativo sobre como construir un informe utilizando este nuevo tipo de región. El vídeo ha sido realizado por Alberto Rivera.
Septiembre 16, 2009
Septiembre 7, 2009
SSRS 2008: Como añadir tus propias plantillas de informe!
Como sabéis, SQL Server Reporting Services (SSRS) cuenta con dos plantillas pre-definidas para crear informes. Una de ellas nos permite crear el informe desde cero (plantilla de tipo Report Item) y la otra a través de un asistente (plantilla de tipo Report Wizard):
Pero, ¿Podemos añadir nuestras propias plantillas de informe? Por supuesto, lo único que tenemos que hacer en el BI Management Studio es:
-
Crear la plantilla de informe base que en sí es un informe, pero que contiene los elementos que hemos identificado como comunes para los informes de nuestra organización.
-
Copiamos el archivo RDL en la siguiente ruta (para SSRS 2008):
C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\ProjectItems\ReportProject
-
Probamos a añadir un nuevo ítem al proyecto de SSRS y veremos como aparece la plantilla que acabamos de crear lista para usar como base para nuestros nuevos informes.
Si lo que queremos es añadir una plantilla de informe para el asistente de creación de informes, tenemos que modificar el archivo StyleTemplates.xml ubicado en el path siguiente (para SSRS 2008):
C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\Business Intelligence Wizards\Reports\Styles
Y hasta aquí llega este post sobre como añadir nuestras propias plantillas de informes en SSRS 2008. Espero que el post os haya resultado interesante.
Septiembre 3, 2009
SQL Server 2008 R2: Algunas novedades en Reporting Services (I)!
Finalmente esta semana he encontrado un rato para poder instalar la CTP de SQL Server 2008 R2 y ver algunas de las novedades. De momento os destaco las siguientes de forma resumida y rápida y centradas en la parte de Reporting Services:
Nuevo Report Manager
Por fin el Report Manager cambia de look & feel y de como utilizar sus funcionalidades. No es SharePoint, pero se parece bastante:
-
A nivel de ítem publicado en el Report Server, aparecen unos menús contextuales muy parecidos al menú de acciones de un ítem de SharePoint.
-
Se puede exportar el informe a formato Feed y nos podemos suscribir vía RSS al informe.
-
Si decidimos crear un informe desde el Report Manager, se lanza Report Builder 3.0.
Nuevo Report Builder
Aunque me atrevo a afirmar que no me esperaba sorpresas en la versión 3.0 de Report Builder dado el gran salto que se había dado con Report Builder 2.0, si que me he encontrado una grata sorpresa que ya adelante el mes pasado en la forma de un nuevo control para crear informes tanto con Report Builder como el Business Intelligence Management Studio: el control Map. Básicamente nos permite definir informes sobre mapas geográficos en el que colocar los datos que nos interesen de nuestro origen de datos y aprovechar los tipos de datos espaciales que aparecieron con SQL Server 2008:
Lógicamente, en la CTP actual de SQL Server 2008 R2 el control Map sólo dispone de mapas de Estados Unidos. Como siempre, este control lo podemos usar de forma directa o bien usando el correspondiente asistente.
Y de momento hasta aquí llega este primer post sobre novedades de Reporting Services en SQL Server 2008 R2.
Agosto 15, 2009
Report Builder 3.0: Disponible la CTP de agosto de 2009!
Si desde principios de esta semana tenemos disponible la primera CTP de SQL Server 2008 R2, desde ayer tenemos ya disponible también la primera CTP de la versión 3.0 del Report Builder. Os recuerdo también el enlace de descarga de la CTP de agosto de 2009 de SQL Server 2008 R2.

Junio 21, 2009
SQL Server 2008: Como habilitar drilldown en un gráfico de SSRS 2008!
Como sabéis, una de las principales novedades de SQL Server Reporting Services 2008 (SSRS 2008) es la nueva paleta de controles gráficos que trae de serie. Estos controles están basados en los de DUNDAS (Microsoft compró hace más de un año el código fuente de estos controles a DUNDAS) y son más espectaculares que los que hasta ahora teníamos en SSRS.
Una de las cosas que podemos hacer con estos gráficos en SSRS 2008 es habilitar el drilldown de manera que podamos dotar de bastante interactividad a los mismos. Para habilitar activar el drilldown en un gráfico de SSRS 2008:
-
Hacemos clic en el área del gráfico con el botón derecho del rato y marcamos la opción Series Properties.
-
En la ventana que se abre, nos vamos a la sección Action y marcamos Go To Report. De esta forma, se habilita un combo con los informes que contiene nuestra solución y a los que podemos navegar al hacer clic sobre una de las series del gráfico.
-
Elegimos uno de estos informes, y además configuramos el parámetro que espera recibir el informe destino a partir de un campo de información en el informe origen.
-
Hacemos un preview del informe y veremos que podemos hacer clic sobre cualquiera de las series del gráfico.
-
Tras hacer clic, llegaremos al informe destino pasándole el parámetro correspondiente (en este caso la categoría de producto).
Y hasta aquí llega este rápido tip sobre gráficos en SSRS 2008.
Junio 17, 2009
SQL Server 2008: Tips, Tricks & How-To en SSRS 2008 (III)!
Siguiendo con la serie de posts sobre tips, tricks & how-to de SQL Server Reporting Services 2008 (SSR 2008), cuyo último capítulo puedes encontrar en este enlace, en esta ocasión os voy a presentar más aspectos a tener en cuenta a la hora de buscar funcionalidades más que requeridas en nuestros informes de SSRS 2008. Empecemos.
Cómo añadir cabeceras flotantes a un informe
Para lograr que nuestras cabeceras permanezcan visibles en nuestro informe aunque hagamos un scroll (similar a la opción de fijar paneles de Microsoft Excel), el nuevo diseñador de SSRS 2008 “parece” que nos sugiere realizar lo siguiente:
-
seleccionamos la tabla que contiene nuestro informe, botón derecho y pulsamos Tablix Properties.
-
En la pestaña general no tenemos más que marcar la opción Header should remain visible while scrolling.
-
En teoría, sería probar el informe y comprobar que las cabeceras permanecen visibles al hacer un scroll…pero cuál será vuestra sorpresa (como lo fue en mi caso) que esto no será así.
Tras indagar un poco en la red, rápidamente llegaremos a soluciones que nos harán ver la luz como la que se indica en este enlace y en está página de MSDN. Básicamente lo que tenemos que hacer para lograr el efecto de cabeceras flotantes es:
-
En el diseñador de informes de VS 2008 o de Report Builder 2.0, nos vamos a las nuevas secciones de agrupamiento y desplegamos la pestaña que aparece para seleccionar Advanced Mode.
-
De esta forma aparecen los miembros estáticos de nuestra región de datos.
-
Seleccionamos el primero de estos miembros estáticos que se corresponde con nuestras cabeceras y a través de la ventana de propiedades especificamos que la propiedad FixedData tenga el valor True de manera que las cabeceras estará siempre visibles. Además, si especificamos la propiedad RepeatOnNewPage a True, conseguiremos que las cabeceras aparezcan en cada nueva página que tenga el informe.
-
Sin más, comprobamos que las cabeceras flotantes están operativas…pero también que no se muestran en páginas sucesivas del informe….luego nuestra solución se queda a medias, y de momento no he encontrado como solucionar este inconveniente (en cuanto dé con la solución os lo cuento).
Añadir saltos de página al informe
Al igual que ocurría con SSRS 2005, en SSRS 2008 podemos añadir saltos de página. Por ejemplo, vamos a añadir un salto de página por cada tipo de producto: nos vamos a la sección Row Groups, seleccionamos Group2 (nivel de agrupamiento de acuerdo a Cagegory) y a continuación Group Properties. En la ventana que se abre marcamos la opción Between each instance of a group en la sección Page Breaks.
Habilitar un mapa de informe
Finalmente, para concluir la tercera entrega de trucos sobre la cración de informes con SSRS 2008 os voy a comentar como añadir un mapa de informe para facilitar la navegación por el mismo. En este caso, la configuración la he hecho en Report Builder 2.0, con Visual Studio es exactamente lo mismo:
-
Seleccionamos en primer lugar una de las agrupaciones de nuestro informe sobre la que basar la creación del mapa del informe.
-
Hacemos click con el botón derecho del ratón y seleccionamos la opción Group Properties.
-
En la ventana que se abre nos vamos a la sección Advanced y en Document Mapa simplemente elegimos que campo de nuestro informe vamos a usar para el mapa del informe.
-
Sin más, probamos que el mapa queda como queremos.
Y hasta aquí llega esta tercera entrega sobre trucos para la creación de informes con SSRS 2008. Espero que el post os haya resultado interesante.
Mayo 18, 2009
SSRS 2008: Construyendo un informe a partir de un EDM de ADO.NET Entity Framework!
Siempre me digo que responder de forma tajante una pregunta que te hacen en torno a tecnologías es la opción cuando estás seguro de la respuesta, pero cuando no lo estás al 100 % lo mejor es responder que no sabes la respuesta. Precisamente esto es lo que me ha pasado en el último curso sobre SQL Server Reporting Services 2008 (SSRS 2008) que he impartido. La pregunta en este caso fue la siguiente: ¿Se pude crear un informe a partir de un Entity Data Model (EDM) de ADO.NET Entity Framework? Tras no pensarlo mucho, contesté que en el Report Designer de Visual Studio o en el Report Builder no porque espera una fuente relacional, un modelo de datos, datos XML, pero no un modelo de entidades de negocio como el que tenemos con EF o LINQ To SQL…la pregunta tenía toda su lógica ya que cuando diseñamos un informe en SSRS 2008 partimos de un dataset. El caso es que en este caso he de decir que la respuesta que di es cierta a medias puesto que si existe una forma de generar informes a partir de un EDM de EF o un modelo de LINQ To SQL o incluso llamando a un servicio de ADO.NET Data Services…la respuesta está en el control Report Viewer que tenemos en Visual Studio y que admite tanto informes locales como de servidor. Pero vamos al grano:
-
Lo primero es lógicamente crear un EDM de EF utilizando para ello el asistente que tenemos en Visual Studio 2008 SP1.
- Una vez creado el EDM, compilamos el proyecto.
-
Añadimos un elemento al proyecto de tipo Reporting –> Report al proyecto…y es aquí dónde está la clave: puedo diseñar informes en modo local para ser consumidos por el control report viewer.
-
Se abre la superficie de diseño de SSRS (cuidado, que no es la de SSRS 2008
, es nuestro viejo SSRS 2005…lo que no deja de ser curioso, pues estoy trabajando con un proyecto de .NET Framework 3.5 y tengo instalada toda la infraestructura de SSRS 2008). A través de la ventana Data Sources podemos especificar la fuente de datos para el informe haciendo clic sobre Add New Data Source… -
En la ventana que sea abre elegimos una fuente de tipo Object…Ajá, aquí lo tenemos, en el momento en el que yo puedo especificar una fuente de datos tipo Object, ya hablo la posibilidad de crear informes a partir de mi EDM, de un modelo de LINQ To SQL o incluso a partir de un servicio de ADO.NET Data Services.
-
Esto nos permite elegir que objetos de negocio del proyecto actual queremos utilizar para crear el informe. Elegimos nuestro modelo de EF.
-
De esta forma, ya tenemos las entidades de nuestro modelo de EF listas para empezar a construir nuestro informe.
-
Añadimos una región de datos de SSRS a la superficie de diseño (en mi caso una tabla).
-
No tenemos más que arrastrar campos de las entidades de negocio a las zonas de datos del informe. En mi caso, he añadido dos campos de una de las entidades por simplicidad.
-
Guardamos el informe y añadimos un control de tipo Report Viewer a nuestro formulario Windows Form o Web.
-
Lo siguiente que tenemos que hacer es configurar el control Report Viewer vía código para que por una parte utilice el informe que hemos diseñado y por otra vincule de forma adecuada las entidades del modelo de EF con dicho informe.
|
AdventureWorksEntities ctx = new AdventureWorksEntities(); var dataSource = ctx.Product; this.reportViewer1.ProcessingMode= Microsoft.Reporting.WinForms.ProcessingMode.Local; this.reportViewer1.LocalReport.ReportPath= System.Environment.CurrentDirectory + @"\Product.rdlc"; this.reportViewer1.LocalReport.DataSources.Clear(); this.reportViewer1.LocalReport.DataSources.Add( new Microsoft.Reporting.WinForms.ReportDataSource( "SSRS_LINQ_Product", dataSource)); this.reportViewer1.RefreshReport(); |
-
Fijaros que para poder utilizar entidades del modelo de EF, lo único que hago es crear una instancia del objeto contexto de datos. Definir mi fuente de datos en base a una de las entidades del modelo, y a continuación configurar de forma adecuada el control reportviewer:
-
Fijamos el modo de procesamiento a local.
-
Especificamos el informe que vamos a visualizar en el control (el que hemos diseñado anteriormente).
-
Añadimos la fuente de datos al report viewer y lo reflescamos.
-
-
Tras compilar la aplicación, no tenemos más que probar que funciona…cool!!
Y hasta aquí llega este post…lo bien que se queda uno cuando encuentra la respuesta que contradice la afirmación realizada inicialmente. Espero que el post os haya resultado de utilidad.
Mayo 14, 2009
SQL Server 2008: Tips, Tricks & How-To en SSRS 2008 (II)!
Aprovechando que sigo batallando con SQL Server Reporting Services 2008 (SSRS 2008), y que sigue dando quebraderos de cabeza además de dolores, después de la primera entrega os presento un nuevo capítulo de tips, tricks y how-to para que no os tengáis que partir la cabeza.
Como habilitar drilldown en informes
-
Seleccionamos la fila que queremos mostrar o no en función de la acción realizada por el usuario. Hacemos clic con el botón derecho del ratón y seleccionamos la opción Row Visibility.
- En la ventana que se abre, simplemente tenemos que configurar como mostrar esa fila:
-
Marcamos la opción Show para que por defecto se muestre la fila en la que estamos habilitando el drilldown..
- Marcamos el check Display can be toggled by this report item.
- Elegimos que elemento del informe controla la visibilidad de esta fila.
-
- Probamos que el informe funciona como se espera.
Como añadir un sub-informe a un informe en SSRS 2008
-
Añadimos una nueva fila debajo de la fila de nuestro informe en la que queramos que aparezca el sub-informe.
-
En una de las celdas de la nueva fila añadimos un elemento de tipo subreport desde la toolbox de BI Management Studio.
-
Hacemos clic con el botón derecho del ratón para configurar sus propiedades:
-
A través de la sección General, especificamos el informe que se va a mostrar en formato sub-informe.
-
-
Seleccionamos la fila del informe que contiene el sub-informe. Hacemos clic con el botón derecho del ratón y seleccionamos Row Visibility.
- En la ventana que se abre, simplemente tenemos que configurar como mostrar esa fila:
- Marcamos la opción Hide para que por defecto no se muestre la fila que contiene el subinforme.
- Marcamos el check Display can be toggled by this report item.
- Elegimos que elemento del informe controla la visibilidad de esta fila.
- Probamos que el informe funciona como se espera.
Como añadir nuevas columnas a un data model desde Report Builder 2.0
-
Añadir nuevas columnas a la fuente de datos para utilizarlos a través del botón Query Designer de la ventana de propiedades del dataset.
-
De este modo se abrirá el diseñador para elegir nuevas columnas o añadir.
-
Por ejemplo, si elegimos añadir un nuevo campo se abrirá una nueva ventana en la que podremos definir nuevos campos a partir de campos existentes del Report Model.
- Si añadimos un campo que se llame Count Cities, tendría la forma:
Y hasta aquí llega el segundo capítulo sobre tips, tricks y how-to de SSRS 2008. Espero que el post os haya resultado interesante.
Abril 22, 2009
SQL Server 2008: Como lanzar Report Builder 2.0 desde SharePoint!
Como os comentaba en este post, con el SP1 de SQL Server 2008 se sigue lanzando el Report Builder 1.0 desde el Repor Manager por lo que tendremos que realizar nosotros la configuración manual necesaria para que se lance el Report Builder 2.0 (os remito al post mencionado). ¿Y qué pasa en una instalación de SharePoint (WSS 3.0 & MOSS) en la que tengamos configurada la integración con SQL Server Reporting Services 2008 (SSRS 2008). Pues lo mismo, con el añadido de que tendremos que instalar el Microsoft SQL Server 2008 Reporting Services Add-in for Microsoft SharePoint Technologies. Empecemos.
Instalación del SP1 de SQL Server 2008 y el Report Builder 2.0 en un entorno con SharePoint
Como os comentaba, los pasos de instalación son los mismos que en un entorno en el que no tengamos SharePoint:
- Instalamos el SP1 de SQL Server 2008.
- Instalamos el Report Builder 2.0 SP1.
Instalación del Add-In de SSRS 2008 para SharePoint
Una vez que hemos instalado el SP1 de SQL Server 2008 y el Report Builder 2.0, ya estamos listos para instalar el Add-In de SSRS 2008 para SharePoint:
-
La primera pantalla nos informa de que ya existe una versión del Add-In, por lo que tendremos que confirmar que vamos a realizar la consiguiente actualización.
-
En la siguiente pantalla, simplemente pulsamos Next.
-
Tras confirmar el correspondiente acuerdo de licencia, pulsamos Next.
-
En la siguiente pantalla especificamos un nombre para la instalación (el nuestro propio) y el nombre de nuestra organización y pulsamos Next.
-
En la siguiente pantalla, pulsamos Install y ya estamos listos para que se lleve a cabo el proceso de instalación.
-
Una vez que ha concluido el proceso de instalación, simplemente pulsamos Finish.
En el caso de una instalación de SSRS 2008 integrado con SharePoint, pasa lo mismo que veíamos en una instalación normal de SSRS 2008: desde Report Manager se lanza Report Builder 1.0 y no Report Builder 2.0. Como sucedía con el Report Manager, esto se puede solucionar realizando unos pasos adicionales en este caso:
-
La instalación de este componente es también muy sencila. En la primera pantalla simplemente pulsamos Next.
-
Aceptamos los términos del acuerdo de licencia y pulsamos Next.
-
Especificamos los parámetros de instalación y pulsamos Next.
-
En la siguiente pantalla pulsamos Install y a esperar unos pocos minutos para que se realice el proceso de instalación.
-
Una vez acabado el proceso, pulsamos Finish.
Ahora bien, al igual que ocurría con Report Manager, una vez realizadas todas estas instalaciones, tendremos que configurar de forma manual el lanzamiento de Report Builder 2.0 desde SharePoint:
- Nos vamos a la administración central de SharePoint. En la pestaña Application Management, pulsamos Set Server defaults en la sección de Reporting Services.
- Como ocurría en la configuración del Report Manager, tendremos una sección en la que especificar la url de lanzamiento del Report Builder que en este caso tiene la forma:
/_vti_bin/ReportBuilder/ReportBuilder_2_0_0_0.application
- Una vez configurado, nos vamos a una biblioteca que tengamos configurada con un content type de tipo Report Builder Report.
- Veremos que se lanza la aplicación ClickOnce de Report Builder y que tras pulsar Run, comienza el proceso de descarga.
- Finalmente, aparece Report Builder 2.0 en nuestras pantallas.
Y hasta aquí llega este nuevo post sobre SSRS 2008 y SharePoint. Espero que os haya parecido interesante.
Abril 21, 2009
SQL Server 2008: Como lanzar Report Builder 2.0 desde el Report Manager!
En el último post sobre SQL Server 2008, os hablaba sobre la instalación del SP1 tanto de SQL Server 2008 como de Report Builder 2.0. Sin embargo, hay algo que la instalación de este SP1 no soluciona: lanzar el Report Builder 2.0 desde el Report Manager (como sabéis, esta es la aplicación web desde la que podemos gestionar los elementos de SQL Server Reporting Services que tenemos en el servidor: informes, modelos de datos, fuentes de datos, etc). Pero veamos que efectivamente esto es así:
-
Lanzamos el navegador y especificamos la url del Report Manager (normalmente algo así como /ReportServer">/ReportServer">/ReportServer">http://<ServerName>/ReportServer.
-
Desde la página principal del Report Manager podemos crear informe con Report Builder a través del botón Generador de informes.
-
Si lo pulsamos, veremos para nuestra sorpresa que a pesar de que estamos en una máquina con el SP1 de SQL Server 2008 recién instalado, se lanza Report Builder 1.0 en lugar del esperado 2.0.
-
¿Hay solución para esto? Pues sí, y es la misma que ya teníamos antes del SP1 de SQL Server 2008. Si abrimos una ventana del navegador y especificamos la siguiente url:
http://<servername>/ReportServer/ReportBuilder/ReportBuilder_2_0_0_0.application
-
Veremos que se lanza vía ClickOnce la aplicación de Report Builder.
-
Pulsamos Run una vez que termina el proceso de verificación de requisitos y esperamos a que se descargue la aplicación (como sabéis, esto sólo ocurre la primera vez que se lanza la aplicación).
-
Una vez que acaba el proceso de descarga, veremos que se abre el deseado Report Builder 2.0.
-
Por lo tanto, si pudiéramos especificar el parámetro anterior en algún sitio de la configuración de Report Server, solucionamos el pequeño inconveniente de que se lance Report Builder 1.0 en lugar de Report Builder 2.0…y la papeleta la solucionamos a través de las opciones de configuración del propio sitio de Report Manager…como podéis comprobar, en la pantalla de configuración tenemos un espacio en el que podemos especificar la url del Report Builder 2.0. Especificamos la url anterior y listo, ahora si se lanzará Report Builder 2.0 desde el report manager.
Espero que este tip os sirva de utilidad.