Seminario: Construyendo una solución de BI paso a paso con SQL Server 2005
Explotando Datos Reporting Services (SSRS)
Ing. José Mariano Alvarez Jose.Mariano.alvarez @ sqltotalconsulting.com
SQL Server 2005 La Plataforma Completa e Integrada
Reporting Services Reporting Services es una plataforma extensible y abierta que soporta la creación, administración y entrega de reportes poderosos e interactivos a toda la empresa. Creación
Administración
Entrega
Web services
Arquitectura SSRS Report Builder
Navegador
Arquitectura SSRS
Aplicaciones
Office
Browser
Report Designer
Management Studio
Report Builder
Model Designer
Configuration Tool
Report Manager Fuentes de Datos (SQL, OLE DB, XML/A, ODBC, Oracle, Custom)
Web Service XML
Servicios de Seguridad (NT, Passport, Custom)
Report Server
Formatos de Salida (HTML, Excel, PDF, Customizado)
Seguridad
Despliegue
Agendas & Entrega
Catálogo de SQL
SOAP Endpoint reportservice.asmx
WMI Win32 Service
Web Service (IIS / ASP.NET)
Procesamiento Reportes
Consulta Datos
URL Access
Delivery Shared Components Report Processing Data Retrieval
Rendering
Security
Objetivos de Entrega (E-mail, SharePoint, Customizado)
Base de datos SQL Server / SQL Server Agent
1
Ciclo de Vida de los Reportes SQL Server Reporting Services Provee una única plataforma para el diseño, administración y distribución de los reportes.
Diseño de reportes Los informes se definen como Report Definition Language (RDL), un esquema XML documentado Con herramientas de Microsoft o de terceros que generan RDL Crea informes a partir de varias fuentes de datos (SQL, OLE DB, ODBC, Oracle, y proveedores .NET)
Reporte Gráfico
Diseño integrado de consultas
Diseño de Reportes
Administración de Reportes
Poderosa XML Report Definition Language Libre / Tabla / Matricial / Gráficos Parametrizable (Dinámico, Jerárquico) Sorting / Filtrado / Agrupamiento / Agregación Interactividad (Drill-down, Drill-through) Integración con VB.NET Expression Language
La definición de los informes, carpetas y recursos se publican y gestionan vía servicios web de reporting Los informes gestionados se pueden lanzar a petición o mediante una programación y se guardan en caché para mejorar la consistencia y el rendimiento Arquitectura de servidor escalable y ampliable
Arquitectura de ejecución de consultas extensibles SQL Server / Analysis Services OLE DB / ODBC / Oracle
Diseño de Reportes Integración con VS.NET Diseñadores de consultas para SQL, Analysis Services
Provee extensión a herramientas de 3rd
2
Administración vía Web
Administración de Reportes APIs de Servicios Web para Administración Interfaces de administración vía Web y Win32 Funciones para Administración de Reportes Metadata de Reportes (Nombre, Descripción, Conexiones, Credenciales, Parámetros) Planificación integrada a SQL Server Agent Propiedades de ejecución (en vivo, cache o snapshot) Historial de ejecuciones previas
Arquitectura extensible, basada en roles
Distribución de Reportes
Distribución vía Web
Distribución de reportes bajo demanda (“pull”) o basada en eventos (“push”) Fuerte integración con Microsoft Office System Múltiples formatos para escoger (html, Word, PDF, XML) Distribución de reportes hacia una amplia variedad de dispositivos
Distribución impresa
Distribución vía Excel
3
Distribución vía E-Mail
Distribución de Reportes Formatos soportados para la distribución de reportes Web (HTML 4 and 3.2) Impresiones (TIFF, PDF) Datos (Excel, XML, CSV)
Suscripción y distribución personalizada y definida por el administrador Habilidad para seleccionar el formato vía suscripción Distribución de links o de reportes Suscripciones basadas en datos para distribución personal
Arquitectura extensible para la distribución E-mail, SharePoint
Integración con Office
Diferenciadores Plataforma completa de reportes
Import de reportes desde Microsoft Access Formatos de documentos Office Excel, Word
Formato HTML Gráficos interactivos, Tablas Pivote, Hojas de cálculo
SharePoint Team Services Web Parts para reportes Distribución de Reportes a librerías de documentos, listas Plantillas para librerías de reportes
SharePoint Portal Server Búsqueda de reportes SSO, integración de perfiles
Implementación 1 soportada Un solo servidor Report Server y el motor relacional SQL en una mismo servidor Misma o diferentes instancias
Componentes extensibles Completamente “embeddable” Definiciones de reportes publicables y extensibles
Escalabilidad y rendimiento Diseñado bajo el concepto de servicio web .NET Arquitectura diseñada para operar bajo granjas Web Procesamiento optimizado
Soporte para Analysis Services Toma ventaja de las inclusiones y formatos del servidor de Analysis Services
Implementación 2 soportada Dos Servidores Report Server en un servidor Motor relacional SQL en otro servidor
Server Report Server
Server
Server
Report Server
SQL Relational Engine
SQL Relational Engine
RSDB RSDB
4
Implementación 3 soportada Scale-out Report Server en varios servidores Report Servers comparten el mismo RSDB Motor Relacional SQL en otro servidor
Implementación 4 soportada Múltiples Instancias (Solo SQL Server 2005) Varios Report Servers sobre un solo servidor Cada uno tiene su propio RSDB Puede usar el mismo motor relacional SQL, puede ser remoto RS 2000 tiene permitido una sola instancia, siempre la default
Server Server
Server Report Server NLB SW/HW
SQL Relational Engine
Server
RSDB Report Server
SQL Relational Engine Report Server (Default Instance)
RSDB 1
Report Server (Named Instance)
RSDB 2
Impresión directa desde el cliente
Mejoras del Diseñador de informes
Enruta directamente los trabajos de impresión, sin necesidad de exportarlos antes Se descarga un pequeño control ActiveX en la estación de trabajo del usuario Puede seleccionar una impresora y el intervalo de páginas que desea imprimir Puede cambiar la orientación del papel y los márgenes
Editor de expresiones mejorado Lista de funciones disponibles Microsoft® Visual Basic® .NET Información sobre parámetros en línea Realización de instrucciones Comprobación de sintaxis en tiempo real
Parámetros con diversos valores
Calendarizacion
Se seleccionan múltiples valores para un parámetro El motor de procesamiento de informes construye la sintaxis SQL o MDX correcta Pueden especificar un conjunto de valores predeterminados para el parámetro Mediante programación, pueden pasar varios conjuntos de parámetros a través de un acceso URL o las API de servicios Web
Control de Calendario para escoger fechas Windows y Web
5
Ordenamiento Interactivo Permite que la persona que vea el informe publicado pueda reordenar los datos en su informe
Diseñador de consultas de Analysis Services Diseñador de consultas integrado para Analysis Services (SSAS) Se crea consultas arrastrando y colocando metadatos del servidor y obteniendo una vista previa de los resultados Capacidad de filtrar los resultados y de establecer fácilmente los parámetros de las consultas MDX
Elementos personalizados de los informes Amplían el procesamiento de informes mediante la creación de elementos personalizados de informes Pueden agregar indicadores, códigos de barras, mapas, etc Tienen su propio conjunto de cuadros de diálogo y páginas de propiedades
Integración con SQL Server Management Studio Configurar y administrar la implementación de Reporting Services a través SSMS
Generación de secuencias de comandos para el Servidor de informes
Elementos Web de creación de informes SharePoint
Controles del visor de informes
El elemento Web del explorador de informes permite examinar la jerarquía de carpetas del Servidor de informes Se puede ver un informe y crear o editar una suscripción a un informe El elemento Web del visor de informes se usa para ver y explorar informes de varias páginas, así como para exportar a formatos admitidos Trabaja con SharePoint Portal Server y Windows SharePoint Services
Incorporación de la funcionalidad RS en las aplicaciones personalizadas Windows Forms (rich client) y Web Forms (ASP.NET) control Los controles admiten modos de procesamiento local y remoto
6
Cliente de Report Builder
Diseñador de modelos de Report Builder
Aplicación de WinForms con ClickOnce que se inicia desde el Servidor de informes La interfaz de usuario del Report Builder está creada según los paradigmas familiares de Microsoft Office, como Excel y PowerPoint Se crean mediante plantillas de informes predefinidas (tabla, matriz o cuadro) Los informes se pueden publicar en el Servidor de informes si el usuario tiene los permisos necesarios
Usan una representación de un modelo empresarial del esquema de la base de datos Un nuevo tipo de proyecto dentro del shell de desarrollo basado en Visual Studio Se publica en un Servidor de informes para que el cliente de Report Builder tenga acceso a él
Report Builder
¿Por qué Report Builder?
Una nueva herramienta de diseño de reportes ahhoc para SQL Server Reporting Services Enfocada el usuario de negocios (usuario final) que quiere encontrar y compartir respuestas a preguntas interesantes Guiado por un modelo de negocios de los datos habilitando a los usuarios sin la necesidad que entiendan las estructuras de datos que están soportando el modelo No es una herramienta de análisis completo o un remplazo a las tablas dinámicas (pivot tables)
Consumidores Reportes
Usuarios Negocio Super Usuarios Desarrolladores
Report Viewer
Report Builder
Report Designer
Totalmente Integrado con Reporting Services 2005
Cliente Report Builder Report Builder es una aplicación Windows estilo “Click Once” administrada en el “Report Server” Requiere .NET Framework 2.0 Los usuarios descargan y ejecutan el cliente desde el “Report Manager” o aplicaciones de terceros Usa paradigmas conocidos como los de Microsoft Office: Excel, PowerPoint Genera reportes a partir de plantillas Textboxes, tables, matrices, charts Los reportes terminados, pueden guardarse en el servidor
Report Builder vs. Report Designer Report Builder
Report Designer
Dirigido a usuarios de negocios Reportes “Ad hoc“ Auto-genera queries usando un nivel semántico sobre la fuente Reportes generados sobre plantillas Aplicación “Click-once”, fácil de implantar y administrar No puede importar reportes generados con Report Designer
Dirigido hacia IT Pros y desarrolladores Reportes en producción Queries nativos (SQL, OLE DB, XML/A, ODBC, Oracle) Reportes “Free-form” (nested, banded) Integrado con Visual Studio Puede trabajar con reportes generados con Report Builder
7
Reporting Services 2005 con Analysis Services 2005
© 2005 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Creando Proyecto
Creando Proyecto de Reporting Services
Agregando Origen de Datos
Configurando conexión al servidor de analysis services
8
Seleccionando el servidor y la Base de datos multidimensional
Probando la conexión
Aceptando la conexión
Aceptando el origen de Datos
Agregando nuevo Reporte
Seleccionando el origen de datos
9
Diseñando la consulta
Seleccionando las dimensiones y médidas
Generando el MDX
Seleccionando el diseño para el reporte
Seleccionando los grupos, páginas y detalles
Mas… sobre diseño
10
Estilo de la Tabla
Finalizando el Reporte
Diseñador de Reporting Services
Vista Previa del Reporte
Implementando el Reporte
Administrador del Reporting Services
11
Seleccionando el reporte
Vista del Reporte
Crear nuevo folder en el administrador de Reporting Services
Report Builder and Analysis Services 2005
Nombre del Folder
Folder Creado
12
Creando nuevo Data Source
Creando el tipo de conexión, cadena de conexión y autenticación
Provider=MSOLAP.3; Data Source=localhost; Initial Catalog=DemoAdventureWorks; Integrated Security=SSPI
Data Source Creado, click en el DS
Generando modelo
Nombre del modelo
Modelo Creado
13
Click Report Builder
Seleccionando modelo del reporte
Haciendo filtros
Filtros creados
Mejorando las opciones del gráfico
Vista previa del reporte
14
Guardando e implementando el reporte
Guardando
Reporte implementado automaticamente
Vista del reporte por el administrador de reportes
15