DNM+ Online
dotnetmania 2.0
Herramientas que buscan la sencillez: Report Builder 3.0 y Visual Studio LightSwitch
Estamos acostumbrados a ver cómo en cada nueva versión que presenta Microsoft de sus productos, aparecen nuevas tecnologías con el fin de realizar más tareas y de forma más efectiva. SQL Server 2008 R2 y Visual Studio 2010 son muestras de ello, con más ediciones, que aportan soluciones para cubrir mayores rangos de necesidades y una ventaja competitiva importante. Las dos herramientas que revisamos en esta ocasión están enfocadas a usuarios avanzados, más que a desarrolladores. Report Builder 3.0 es un diseñador de informes que ya está disponible, y Visual Studio LightSwitch, aún en beta, es una edición del entorno de programación que hace posible implementar rápidamente aplicaciones dirigidas a datos, en principio sin codificación, aunque la permite.

Sin duda alguna, en una organización hay perfiles a los cuales las herramientas de este tipo les pueden ser de mucha utilidad. Hagamos una revisión de estos dos productos.

Report Builder 3.0

Los usuarios de SQL Server Reporting Services (SSRS) cuentan con diversas herramientas para crear informes, diseñadas según el tipo de usuario. Tenemos un diseñador de informes integrado en Visual Studio, destinado a programadores. También podemos crear proyectos utilizando la herramienta que Microsoft proporciona a los profesionales en soluciones BI, Business Intelligence Development Studio 2008. Y además está Report Builder 3.0, que es la herramienta en la que nos detenemos en esta ocasión, destinada a usuarios avanzados.

Esta herramienta cliente de informes permite definir, formatear, publicar y visualizar informes sin conocimientos de programación, y está integrada dentro de SSRS, y por lo tanto se puede descargar de forma gratuita.

La versión para SQL Server 2008 R2, entre otras mejoras, ofrece una interfaz de diseño más intuitiva y productiva y nuevos elementos como mapas y sparklines. También hay mejoras para agilizar la creación de informes, la colaboración, y la consistencia, permitiendo que los usuarios creen elementos reutilizables en los informes, que quedan en una librería de componentes compartida (Report Part Gallery), y luego pueden ser compartidos y reutilizados, manteniendo las definiciones, consultas e información.

Figura 1.

Creación de un proyecto de ejemplo

Veamos lo sencillo que puede ser crear un informe con Report Builder 3.0. Lo primero que encontramos familiar al abrir Report Builder es que tiene el estilo Office común a muchas herramientas de Microsoft, incluyendo la cinta en el menú (ribbon).

Si pedimos crear un nuevo informe, nos aparecerá la ventana de un asistente que nos ofrece elegir entre dos opciones, “New Report” (Nuevo informe) o “New Dataset” (Nuevo dataset), como puede verse en la figura 1. Si eligiéramos crear un nuevo dataset, estaríamos creando una especificación de un conjunto de datos, para reutilizarlo a lo largo de diferentes proyectos de informes. Para nuestro ejemplo, elegiremos la creación de un nuevo informe, opción que nos ofrece la posibilidad de iniciar cualquiera de los tres asistentes disponibles para Tablas o Matrices, Gráficos, o Mapas, o también crear un informe desde cero, sin utilizar el asistente. Si elegimos alguno de los asistentes, los siguientes pasos serán comunes.

A continuación, Report Builder nos pedirá que elijamos o creemos un dataset de donde obtener los datos. Dado que acabamos de empezar, le diremos que lo cree, y pulsaremos “Next”. Se nos mostrará una lista con las conexiones disponibles, inicialmente vacía, así que pulsaremos el botón “New”, y en el cuadro de diálogo del asistente, en el apartado “General”, le daremos un nombre a nuestra fuente de datos, e indicaremos que queremos utilizar una conexión del tipo Microsoft SQL Server. Entonces Report Builder nos permitirá escribir directamente la cadena de conexión a la base de datos, o podremos pulsar el botón “Build” para construirla en una nueva ventana, “Connection Properties” (Propiedades de conexión), opción que utilizaremos aquí. Proporcionaremos el nombre del servidor, y a continuación seleccionaremos la base de datos que vayamos a usar; en el panel de la izquierda tenemos la opción “Credentials” (Credenciales), donde podremos elegir entre utilizar la autenticación Windows o mediante usuario y contraseña. Finalmente pulsamos el botón “OK”, y ya tendremos la conexión a la fuente de datos donde tenemos las tablas que suministrarán los datos para el informe.

Tenga en cuenta que Report Builder 3.0 nos permite utilizar una gama muy amplia de tipos de conexión, y que en esta versión se han incluido tres nuevos tipos:

  • Microsoft SQL Azure, que nos permitirá conectarnos a bases de datos de SQL Azure, habilitando los informes para recuperar y presentar datos desde bases de datos alojadas en la nube.
  • Microsoft SQL Server Parallel Data Warehouse, un origen de datos creado específicamente para conectarse a bases de datos de esta edición especializada de SQL Server 2008, para grandes organizaciones.
  • Listas de SharePoint, para obtener los datos en los que se basarán los informes de listas procedentes de SharePoint Foundation 2010, SharePoint Server 2010, Windows SharePoint Services 3.0 y Office SharePoint Server 2007. El diseñador de consultas sobre listas de SharePoint asociado proporciona una interfaz gráfica para explorar los metadatos de las listas a las que tengamos acceso.

La siguiente ventana del asistente (figura 2) nos permite diseñar una consulta. En el panel de la izquierda tendremos las tablas, vistas y procedimientos almacenados de nuestra base de datos, y a la derecha, los campos que hemos seleccionado, las relaciones, y la opción de solicitar algún parámetro para un campo. También podremos ejecutar la consulta, para ver su resultado antes de seguir adelante.

Figura 2.

De aquí pasaremos a la siguiente ventana (figura 3). Si elegimos el asistente para tablas y matrices, en este paso tocará ordenar los campos en filas, columnas y campos calculados. Arrastrando cada campo al cuadro que nos interesa organizaremos cómo se visualizarán en el informe.

Si, en cambio, elegimos el asistente para gráficos, en este paso elegiremos el tipo de gráfico que requerimos. Disponemos de gráficos de columna, línea, tarta, barras y áreas. A continuación, al igual que en el caso de las tablas, pasaremos a la ordenación de las filas, columnas y campos calculados.

En el caso de elegir el asistente de mapas, todo cambia. El asistente nos permitirá elegir los mapas y las capas de mapa. Lo primero será elegir la fuente de datos, pero en este caso, estaremos hablando de fuentes de datos espaciales. Nos permitirá utilizar datos procedentes de la Galería de mapas (que por defecto incluye EE. UU.), de una consulta de SQL Server que devuelva datos espaciales, o de un archivo de formato ESRI. También se puede utilizar Bing Maps. De forma predeterminada, los informes que muestran un mapa de Bing Maps se apoyan en una conexión HTTP (u opcionalmente, HTTPS) subyacente al servidor web de Bing Maps.

Después de relacionar los elementos de mapa o gráfico con los datos del informe, se configurarán las opciones de visualización; en caso de estar trabajando con tablas, elegiremos el formato y el estilo. Con esto, ya tendremos nuestro informe realizado, sin haber tenido que incluir ni una sola línea de código.

Figura 3.

Por supuesto, Report Builder 3.0 incluye un número importante de funcionalidades de las cuales no podemos tratar en tan breve espacio, que nos permitirán conseguir el grado de sofisticación en los informes que requiramos. Además, algunas de esas nuevas funcionalidades permiten el trabajo en equipo utilizando repositorios comunes, la reutilización de partes de los informes, y fuentes de datos compartidas. Tampoco hemos agotado las posibilidades de visualización de datos, que son muy ricas y podrían incluir los sparklines o mini-gráficos y los indicadores de tipo gauge, ni todas las opciones de diseño de informes, que son las que podríamos encontrar en los generadores de informes más completos.

En todo caso, la herramienta seguirá cumpliendo con el requisito de estar diseñada para usuarios avanzados, si bien, para sacarle todo el partido, se requiere de algún entrenamiento, o de una formación que asegure su correcta utilización en poco tiempo. Puede ampliar la información en la web de Danysoft, y en nuestro muro en Facebook; además de inscribirse a seminarios, presentaciones, y cursos sobre ésta y otras herramientas de BI.

Visual Studio LightSwitch

Esta edición, de la que recientemente ha salido la beta 2, está diseñada para que usuarios avanzados, sin necesidad de codificación, puedan crear aplicaciones dirigidas a datos. El ejemplo que primero viene a la cabeza es crear las típicas pantallas para el mantenimiento de tablas, que efectivamente podemos crear con resultados profesionales sin necesidad de codificación, aunque el producto permite también la incorporación de código. Esta sencillez, sin embargo, no nos impide hacer uso de potentes características como la creación de aplicaciones que pueden publicarse en el escritorio, la nube (Azure), la Web, o integradas en SharePoint.

Visual Studio LightSwitch (figura 4) genera aplicaciones que presentan una arquitectura de tres capas. La herramienta permite definir un modelo que describe la aplicación y contiene un conjunto de bloques, uno de los conceptos centrales de la herramienta, que pueden ser de dos tipos, “EntityType” (tipo de entidad) y “Query” (consulta), para los datos, o de tipo “Screen” (pantalla) y “Control” (control), para dar formato visual. Los modelos son simplemente datos hasta que el runtime les proporciona un comportamiento. El runtime de LightSwitch carga la aplicación, autoriza accesos, renderiza pantallas, recupera datos, ejecuta la lógica de negocio, etc. Las tecnologías que subyacen al producto son muchas, y van desde Silverlight a ADO.NET Entity Framework. El motor de ejecución proporciona además diversas API para utilizarlas desde código si fuera de nuestro interés (aunque, como hemos dicho antes, no es estrictamente necesario), así como para añadir nuevos controles, plantillas, etc.

Figura 4.

Creación de un proyecto de ejemplo

Al igual que antes, crearemos un proyecto de ejemplo que nos servirá para ver mejor el funcionamiento del producto. Al abrir LightSwitch, a los usuarios habituales de Visual Studio les parecerá muy similar a éste en cuanto al IDE, pero enseguida comenzamos a encontrar importantes diferencias. Solo tenemos la posibilidad de crear un tipo de proyecto (“Aplicación LightSwitch”), teniendo la posibilidad de elegir entre C# y Visual Basic como lenguajes de programación. Es importante destacar que podemos crear proyectos en equipos; esto es, Visual Studio LightSwitch puede conectarse a Team Foundation Server, ya sea para utilizar el control de versiones o cualquiera de las demás herramientas que éste proporciona.

Una vez creado el proyecto, definiremos los datos con los que vamos a trabajar. Nos aparece una novedosa página de asistente en donde habremos de elegir si queremos crear una nueva tabla o conectarnos a una fuente de datos externa. Es posible realizar conexiones a SQL Server, SQL Azure u otra base de datos para la que se tenga instalado un proveedor de Entity Framework, a SharePoint, o incluso a un servicio RIA.

Si elegimos la opción de crear una tabla nueva, se abrirá un diseñador de entidades (tablas), que nos permitirá definir las propiedades (campos) y sus relaciones. Es un diseñador sencillo, que permite especificar los campos y los tipos de datos, entre los que encontraremos los habituales de SQL y además tipos como Image (imagen), PhoneNumber (número de teléfono) o EmailAddress (dirección de e-mail), que son tipos personalizados. El diseñador también nos permite incluir campos calculados, consultas, relaciones entre tablas, enlaces a fuentes externas de datos, o escribir código. Además, contamos con las propiedades del campo, que según el tipo, nos permitirán definir sus características.

Figura 5.

Si, por el contrario, elegimos una fuente de datos externa, se abrirá un diálogo que nos permitirá elegir el tipo de fuente de datos: base de datos, SharePoint o WCF RIA Service. Si elegimos una base de datos, se abrirá la ventana habitual de “Propiedades de conexión”. Después de conectarnos a la base de datos, se nos pedirá que seleccionemos las tablas y campos, o el diagrama de datos. Hecho esto, iremos al diseñador, donde tendremos las tablas y sus relaciones, y donde podremos hacer las modificaciones que creamos oportunas, como por ejemplo, utilizar los tipos de datos personalizados para e-mails, teléfonos e imágenes.

Una vez definidos los datos, crearemos las pantallas, a partir de un conjunto de plantillas predefinidas que pueden ser personalizadas. De momento, el producto cuenta con cinco plantillas para relaciones maestro/detalle, rejilla editable, lista y detalles, introducción de nuevos datos, y búsqueda de datos. Una vez creadas las pantallas, las podemos personalizar, incluirles controles, etc. Podemos incluir en la aplicación tantas pantallas como necesitemos, y éstas se irán incluyendo en una pantalla de navegación, también personalizable (figura 6).

Figura 6.

Por último, podemos definir el tipo de aplicación que publicaremos. LightSwitch nos ofrecerá dos tipologías: Cliente y Aplicación de Servidor. Al seleccionar una tecnología cliente aún tendremos que elegir entre el escritorio y la Web, mientras que para las aplicaciones de servidor las opciones son ejecutar los servicios de la aplicación en la máquina del usuario, hospedar los servicios de la aplicación en un servidor IIS, u hospedarlos en Windows Azure.

En cualquier caso, no olvide que el producto está aún en fase beta, y que los cambios con respecto a la beta 1 han sido importantes (mejoras en la visualización y comportamiento de los datos, despliegue en Windows Azure, etc.), por lo que todavía no se ha dicho la última palabra en cuanto a las características que ofrecerá la versión definitiva.

Al igual que comentamos en el caso de Report Builder, Visual Studio Light­Switch es una herramienta que nos permite acometer la tarea de realizar un determinado tipo de aplicaciones profesionales de forma rápida, pero también incluye una importante cantidad de funcionalidades, lo que nos lleva a los usuarios avanzados de los que hablamos al principio, los cuales, estrictamente, no requieren programación; pero unas horas de entrenamiento o formación les pueden ayudar a sacarle todo el partido a la herramienta con rapidez. En la web de Danysoft, en nuestro sitio de vídeos en YouTube y en el muro de Facebook, usted podrá encontrar vídeos con demos y material explicativo que le serán de ayuda, además de estar al día sobre las presentaciones, seminarios y cursos que realicemos sobre el producto.

blog comments powered by Disqus
autor
  •  

referencias