El siguiente artículo pretende hacer una comparación de las versiones 1 y 3 de Report Builder.
Para aquellos que no lo conocen, Report Builder es una de las herramientas de SQL Server Reporting Services que permite a usuarios finales crear reportes.
Como dato adicional, es importante saber que Reporting Services puede ser utilizado en forma integrada con SharePoint: la versión 1 con SharePoint 2007, la versión 3 con SharePoint 2010.
Creación de reportes
Ambas versiones permiten al usuario final, crear y editar reportes, y almacenarlos en una librearía compartida de SharePoint (si trabajamos en modo integrado). El proceso es muy similar en ambos casos. Al crear un elemento de tipo reporte, se abre en la máquina del cliente la aplicación Report Builder, luego de crear y probar el reporte, se puede almacenar el mismo en la mencionada librería.
Por supuesto, la interfaz de Report Builder 3.0 es mucho más rica que la de la versión 1.0 y con muchas más funcionalidad, pero en lo que refiere al punto de creación de reportes, ambas versiones cuentan con esa capacidad.
En las siguientes imágenes se puede tener un primer contacto con la aplicación en su pantalla de inicio:
Report Builder 1.0
Report Builder 3.0
Y el menú de opciones:
Grupo, orden y filtros
La posibilidad de crear filtros, agrupamiento y ordenar la información está disponible en ambas versiones. Podríamos decir que se trata de capacidades básicas de una herramienta de generación de reportes.
También es posible crear nuevos campos (calculados por ejemplo) y parámetros. Cuando se define un filtro como parámetro, Report Builder genera automáticamente la pantalla para que el usuario cargue los parámetros antes de ejecutar el reporte.
Si bien ambas versiones manejan estas capacidades, por supuesto hay muchas más opciones en la versión 3.0. A continuación muestro la pantalla de ambas versiones para el manejo de parámetros. Estas diferencias se dan en todas las capacidades, pero no es el propósito de este artículo pegar todas las pantallas de la herramienta:
Manejo de parámetros en la versión 1.0
Manejo de parámetros en la versión 3.0
Exportación, subscripción y …
También ambas versiones manejan opciones de exportación, subscripción y por supuesto impresión. La versión 3.0 ofrece como adicional la exportación a Word:
Hay más diferencias si se profundiza en la comparación, que por ahora dejaremos fuera del alcance de este artículo.
Tablas, matrices y gráficos.
Report Builder 1.0 soporta la creación de tres tipos de reportes: tablas, matrices y gráficos:
En la versión 3.0 poseemos estas mismas opciones, pero mejoradas. Por ejemplo existe la posibilidad de crear agrupamientos independientes en el reporte de tipo matriz (muy interesante) además de contar con muchas más opciones en la creación de gráficos.
El reporte de tipo Lista de la versión 3.0 nos permite presentar los campos en un diseño más libre.
Ejemplo de grupos independientes en Report Builder 3.0 (cool!)
Este es uno de los puntos fuertes de Report Builder 3.0. Mientras que esa funcionalidad no existe en Report Builder 1.0, en la versión 3.0 sí existe y con muchas opciones. En lo personal pienso que esta es una de las capacidades que hacen volcar la balanza por la última versión, ya que permiten crear de forma relativamente sencilla reportes que incluyan velocímetros, indicadores y gráficos embebidos dentro de tablas (como sparklines):
En la siguiente imagen se puede ver un reporte que combina un gráfico, una matriz, sparklines e indicadores.
Una de las ventajas de la versión 3.0 es la posibilidad de poder incluir combinación de elementos dentro del mismo reporte. Mientras que en Report Builder 1.0 sólo podemos incluir un elemento de tipo tabla, matriz o gráfico, en la versión 3.0 podemos hacer combinaciones, tal como muestra la siguiente imagen:
Quizá una de las novedades más importantes es el soporte de nuevos orígenes de datos entre los que podemos nombrar:
Listas de SharePoint
Microsoft SQL Azure
Microsoft SQL Server Parallel Data warehoouse
Creo que la capacidad de crear reportes sobre listas de SharePoint abre un mundo de posibilidades, tanto para las implementaciones de SharePoint que no contaban con una herramienta de reporting nativa, como para las implementaciones de Project Server que también poseen mucha información que reside en la base de datos de contenido de SharePoint (como las listas de los workspaces de proyectos). Una novedad realmente muy valorada :-)
Mapas
Otra de las novedades más anunciadas de la versión 3.0 y más impactantes es la inclusión de mapas que permiten visualizar información con un mapa geográfico de fondo, tal como muestra esta imagen:
En el blog de Alberto Rivera, se puede ver un video que explica cómo generar un reporte de Mapa (recomendable):
Productividad
La versión 3.0 posee un conjunto de ventajas que hacen más amigable y más rica la experiencia del usuario final a la hora de crear reportes. Ese conjunto de capacidades impacta positivamente en la productividad de usuario. Destacamos estas capacidades:
Uso de la nueva barra de herramientas estilo Office: Ribbon.
Asistentes que facilitan la creación de reportes.
Diseñador de consultas.
Report parts, que permiten compartir elementos de reportes entre distintos reportes.
Shared Datasets, que permiten compartir consultas entre distintos reportes.
Realmente hay muchas más diferencias si uno baja al detalle. Les dejo dos enlaces en donde se puede profundizar para encontrar el total de mejoras:
Un video interesante de Microsoft que nos muestras las nuevas capacidades de Report Builder. Un poco marketinero, pero vale la pena…
Requerimientos
Las siguiente tabla nos muestra que versión de SQL utiliza cada una de las versiones de Report Builder y con qué versión de SharePoint puede ser integrada:
1.0
2.0
3.0
SQL Server
2005 / 2008
2008
2008 R2
SharePoint
2007
2007
2010
Requerimientos de software y hardware de SQL Server:
Si optamos por la última versión con SharePoint 2010, necesitaremos:
Hardware de 64 bits
SQL Server 2008 R2 con Reporting Services
SharePoint Foundation 2010
Complemento de integración entre SharePoint y Reporting Services
Report Designer
Un punto que no quiero dejar de mencionar, es que Report Builder es una herramienta pensada para el usuario final. En caso que necesitemos crear reportes más complejos, podemos utilizar dentro de Visual Studio, la herramienta Report Designer, pensada para desarrolladores:
Lo anteriormente expuesto es sólo un resumen de los temas que he considerado más importantes. Hay mucho más cuando uno pasa a la “letra chica”. Estamos comparando dos versiones difíciles de comparar, ya que existe una versión intermedia (la 2.0). Sin embargo hay clientes en donde se presenta la necesidad de salir del viejo Reporting Services 1.0 que utilizaban con SQL 2005, y en esos casos es interesante analizar cuáles son las ventajas de pasar a la versión 3.0 disponible en SQL Server 2008 R2.
Espero que haya sido de utilidad, a continuación dejo enlaces muy interesantes sobre el tema:
El próximo 2 de febrero tendrá lugar en España un evento presencial y en línea, en el que se podrá debatir sobre desarrollo en SharePoint con 4 reconocidos MVPs de SharePoint:
- Gustavo Velez - Juan Carlos González - David Martos - Alberto Diaz
Transcribo desde el blog del amigo Ricardo Muñoz http://mundomoss.blogspot.com/ información sobre este webcast que comienza en dos horas:
Para comenzar el año, los grupos de usuarios de SharePoint de Costa Rica y España (SUGES) bajo el paraguas de la Comunidad de SharePoint de habla hispana (HISPAPOINT) os proponemos un webcast en el que se aprenderá sobre la migración a SharePoint 2010, se analizaran las mejores prácticas así como los tipos de migración disponible en esta nueva versión, todo esto en conjunto con consejos y tips para llevar a cabo exitosamente un procedimiento de este tipo.
Datos de interés:
Audiencia: Information Workers, administradores de IT, desarrolladores.
Requisitos previos: Conocimientos de la plataforma SharePoint 2007.
Fecha: miércoles 12 de enero.
Hora: 9:00 a 10:30 (Hora de Costa Rica, GMT -6).
Hora: 12:00 a 13:30 (Hora de Chile, GMT -4).
Ponente: Ricardo Muñoz es Ingeniero en computación especialista en el área de tecnologías de información. Ha trabajado con tecnologías SharePoint por más de 7 años, implementando y desarrollando Intranets y Portales corporativos en importantes empresas de la región. Adicionalmente es un experto certificado en herramientas EPM (Enterprise Project Management) y Project Server para el manejo de proyectos empresariales. Actualmente es Consultor en Tecnologías Microsoft y uno de los cofundadores y administrador de la Comunidad de SharePoint Costa Rica (https://ug.culminis.com/sites/CRC-SPS/default.aspx ) así como miembro del Speaker Group de Microsoft CA .Desde este año es Instructor de Cursos Microsoft en Centros Certificados Microsoft en Costa Rica. Desde 2008 ha sido MVP en SharePoint Server.
Tras unos cuantos meses en CTP (a saber el motivo ), desde ayer tenemos disponible la versión 1.3 de las Visual Studio Extensions para SharePoint (VSeWSS) que permitían una mejor experiencia de desarrollo para SharePoint 2007 (sin llegar a lo que tenemos hoy para SharePoint 2010 con Visual Studio 2010). Los detalles de esta nueva versión los podéis encontrar en el blog de Paul Andrew y la podéis descargar desde este enlace. Entre las nuevas características de la versión 1.3 comparada con la versión 1.2 tenemos:
Runs on x64 bit machines
Fast deployment commands
WSP View improvements
Command line build support
Solution Generator supports Publishing Sites
New RootFiles templates
Web part rename assistance
CopyLocal support for adding dependent DLLs
Conflict resolution dialog for deployments
Asique, si continuas desarrollando para SharePoint 2007, esta nueva versión te vendrá sin duda bien para mejorar la productividad en el desarrollo al menos hasta que te pases (si no lo has hecho ya) a Visual Studio 2010 y SharePoint 2010.
Hace unos días me preguntaba un cliente (Fabián) cuáles eran los pasos para instalar Reporting Services en forma integrada con Windows SharePoint Services 3.0.
Aquí el resumen:
Instalar Reporting Services en nuestro servidor SQL.
Configurar Reporting Services para que trabaje en forma integrada con SharePoint.
Instalar el addin para la integración entre SharePoint y Reporting Services.
Configurar las opciones de Reporting Services en SharePoint Central Administration.
Una vez realizados estos pasos tendremos a nuestra disposición
3 nuevos tipos de contenido:
Origen de datos
Modelo
Informe
Una webpart para visualizar reportes y armar por ejemplo un tablero con varios reportes.
Recuerda que después instalar estos paquetes debes ejecutar el “Wizard” Asistente de Configuración de Tecnologías SharePoint, en todos los equipos de la granja.
Si quieres tener más contexto de las actualizaciones de los productos de Tecnología Sharepoint, visita cada Centro de Actualizaciones:
Hace poco un cliente nos planteó un requerimiento en el que deseaba hacer una comparación visual de dos formularios InfoPath en una página web en Office SharePoint Server 2007. La implementación debía llevarse a cabo sin instalar código de servidor.
Para resolver el pedido, creamos una página con las siguientes características:
Una lista que permite seleccionar los documentos a comparar
Dos IFRAMES en donde se muestran los formularios InfoPath
Un conjunto de acciones que permiten:
Maximizar el espacio de trabajo para la comparación visual
Ver los documentos don distintas opciones de zoom (100%, 75% y 50%)
Borrar los filtros que el usuario pudo haber aplicado en la lista de selección
El resultado es una pantalla como la siguiente:
Pero, ¿cómo fue la implementación? …
Los IFRAMES
Lo primero es crear los IFRAMES en donde se muestran los documentos INFOPATH. Eso puede hacerse con una breve instrucción en JavaScript:
" 'width=100% height='530' frameborder='0'><p>Your browser does not
support iframes.</p></iframe>");
}
La carga de los IFRAMES
El segundo paso es la creación de los botones que permitan al usuario cargar los IFRAMES con los documentos InfoPath:
Estos botones contienen un hipervínculo como el siguiente que hace posible la carga de los IFRAMES:
<DIV><A HREF='' onClick='javascript:document.all.IFrameUno.src="/Evaluaciones%20de%20Desempeo/Sebastian Torres - 2009.xml?OpenIn=Browser";return false;'><IMG SRC='\_layouts\Images\icongo02rtl.gif' TITLE='Agregar a la izquierda' BORDER='0'></A></DIV>
El hipervínculo no hace más que apuntar al documento XML que se desea mostrar. Es importante la utilización del parámetro OpenIn=Browser, caso contrario intentará abrir el documento en la herramienta cliente de InfoPath.
Para crear los botones sin utilizar código en el servidor, podemos utilizar la excelente funcionalidad de HTML Calculated Column creada por Christopher en su blog Path to SharePoint, que utiliza JavaScript para convertir una columna que tiene texto HTML en HTML “real”.
Para ello necesitamos crear dos campos calculados con esta fórmula:
=CONCATENATE("<DIV><A HREF='' onClick='javascript:document.all.IFrameUno.src=";CHAR(34);"/Evaluaciones%20de%20Desempeo/";Título;"?OpenIn=Browser";CHAR(34);";return false;'><IMG SRC='\_layouts\Images\icongo02rtl.gif' TITLE='Agregar a la izquierda' BORDER='0'></A></DIV>")
La función CHAR nos permite agregar un carácter especial, en este caso las comillas dobles. La columna Título es la que contiene el nombre del archivo XML.
Una vez creada las dos columnas calculadas para cargar los IFRAMES, sólo resta agregar el código de Christopher para convertir en texto en HTML.
Pantalla completa y zoom
La opción de pantalla completa lo que en realidad hace es agrandar el espacio de trabajo para que el usuario puede ver con mayor amplitud los documentos. Para ello se puede utilizar jQuery para modificar los estilos y ocultar algunas zonas. jQuery nos proporciona además algunos efectos “lindos” con la función hide.
function pantalla_completa() { $('.ms-pagetitleareaframe').hide("slow"); $('#MSOZoneCell_WebPartWPQ3').hide("slow"); $('#onetIdTopNavBarContainer').hide("slow"); $('.ms-globalbreadcrumb').hide("slow"); $('#boton_completa').hide("slow"); $('#boton_normal').show("slow"); }
Para la opción de zoom podemos utilizar las bondades del IFRAME, que nos permite modificar el zoom con el cual estamos visualizando la página dentro del IFRAME:
Eso es todo por hoy amigos, si bien es un caso muy particular de requerimiento, me pareció importante compartirlo. Nunca se sabe si hay alguien del otro lado del mundo tratando de hacer lo mismo.
Hasta la próxima y no duden en comentar y sugerir mejoras.