Reporting Services Manual 2008

64
Reporting Services Manual del Participante Ms, Ing. Ricardo Mendoza Rivera Pág.: 1 Reportes de Produccion usando Reporting Services MANUAL DEL PARTICIPANTE Ms, Ing. Ricardo Mendoza Rivera [email protected] http://rimenri.blogspot.com

Transcript of Reporting Services Manual 2008

Page 1: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 1

Reportes de Produccion usando Reporting Services

MANUAL DEL PARTICIPANTE

Ms, Ing. Ricardo Mendoza Rivera

[email protected]

http://rimenri.blogspot.com

Page 2: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 2

Microsoft ® es una marca registrada de Microsoft ® Corporation

Page 3: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 3

Tabla de Contenido

Modulo 01: Introducción a Microsoft SQL Server Reporting Services

Modulo 02: Creando Reportes básicos Modulo 03: Configurando Reportes básicos

Page 4: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 4

Modulo 1:

Introducción a Microsoft SQL Server Reporting Services

Page 5: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 5

Módulo 1

Introducción a Microsoft SQL Server Reporting Services

Esta sesión incluye las características de Reporting Services que está basado en un

servidor como plataforma de reportes. Proporciona un repositorio de reportes (Report Server), una herramienta de construcción de reportes (Report Designer de VS.NET 2008 u otra que soporte RDL) y una administración centralizada (Report Manager).

Los reportes son publicados y administrados en el Report Server a través de Web

Services. La obtención de los reportes pueden ocurrir en el momento deseado o mediante una tarea programada (por ejemplo: podemos programar para que el Resumen de Ventas del día llegue mediante correo electrónico a un gerente determinado a las 8am de Lunes a Sabado).

Temas a Tratar

Planificación de la Clase

Al finalizar este capitulo, el participante aprenderá a:

Conocer el ciclo de vida de la administración de un reporte identificando los distintos componentes y características de cada uno de ellos.

Describir los escenarios en los cuales puede usarse Reporting Services Revisar la Arquitectura de Reporting Services

Page 6: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 6

Lección 1

Con Reporting Services puede consultar y mostrar datos de múltiples Bases de datos que

administran las organizaciones en la actualidad. A continuación veremos de manera genérica como

enlazarnos a una Base de Datos y mostrar datos a partir de consultas.

Ahora podrá crear más reportes gráficos y tabulares que en versiones anteriores.

Page 7: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 7

Nuevas Herramientas Más Saltantes

Puntos clave:

En SQL Server 2008 Reporting Services se incorporan nuevos controles en regiones de datos como:

Tablix (reportes tipo tabla y de referencia cruzada) y Gauge. Introduce nuevos orígenes de datos y

Report Builder 2.0, el cual ofrece nuevas herramienta como un entorno nuevo de datos y la

visualización similar a la de Office 2007, adicionando una serie de ventajas en la creación de

reportes como veremos en el transcurso del curso.

Page 8: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 8

El ciclo de Vida

Toda vez que el análisis y presentación de la información es un proceso crítico y que permitirá tomar decisiones en los diferentes niveles de una organización. El proceso de la creación de

reportes, su administración y difusión, conocido en conjunto como Ciclo de Vida de un reporte. Reporting Services maneja 3 estados: creación, administración y entrega.

Creación

El diseñador define los datos en el reporte y su presentación

Usa RDL (Reporting Data Language) para proporcionar una

representación en XML. Uso de ADO.NET

Flexible diseñador de reportes

Administración

El diseñador publica el reporte a un lugar centralizado: Report Manager donde se administra la seguridad y se programan las entregas.

Usa una BD centralizada llamada Report Server para almacenar, publicar

y compartir los reportes. Una vez publicados los reportes se pueden establecer tareas de

ejecución y configurar opciones de seguridad

Contiene una herramienta de administración en entorno Web.

Entrega

Las entregas pueden ser en diferentes formas

En tiempo de ejecución se procesa el estilo de presentación

Se proporcionan diferentes mecanismo de entrega: en demanda, es

decir, el usuario ingresa y obtiene el reporte y

Entregas programadas vía email.

Page 9: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 9

Características de Reporting Services

El formar parte de SQL 2000 le da una serie de ventajas, como veremos a continuación

Creación

El diseñador define los datos en el reporte y su presentación Soporte de diferentes datos source al usar ADO.NET.

Puede crear diferentes archivos RDL usando: Diseñador de reportes,

Report Builder o un editor compatible con XML

Las regiones de datos ahora soportan: Tablix, List, Gauge y Chart.

Administración

Se pueden diseñar reportes donde el usuario pueda seleccionar

condiciones para obtener el reporte como año, sucursales, etc.

Entrega

Veamos las opciones de entrega Diferentes formatos ( HTML, PDF, TIFF, XLS, XML, CSV, DOC)

Diferente mecanismos de entregas a los subscriptores establecidos

Page 10: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 10

Reporting Services puede ser aplicado para soportar múltiples escenarios que incluya las

necesidades internas y externas.

Internas

Son las necesidades típicas de las áreas departamentales dentro de la

organización.

Reportes de documentos en el area de ventas o un estado financiero en

el area de Finanzas son algunas muestras.

Externas

Van soportados por aplicaciones: business to business, permitiendo a los

usuarios acceder a ellos a través de una Extranet.

Ordene de Pedido de los clientes u Ordenes de entrega por parte de los

proveedores son algunos de los ejemplos.

Embedded

Reporting

Integra portales y aplicaciones. Usados para entornos corportativos con

aplicaciones desarrolladas por terceros

Aplicaciones de transacciones en línea como CRM son también

aplicables

Page 11: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 11

A continuación revisaremos la funcionalidad del producto, deteniéndonos en cada componente del ciclo de vida del producto, revisaremos algunos reportes ya establecidos y configuraremos algunas

propiedades de un reporte.

El proceso de entrega de un reporte.

Describir la creación de un reporte.

Describir el proceso de administración de un reporte.

Page 12: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 12

Como se mencionó anteriormente existen diferentes formas de obtener un reporte: Web, Print o en Datos.

Las formas de entrega son 2 tipos:

Pull Delivery : Desde el Report Manager y en forma personalizada

Push Delivery : Vía email o un archivo directo

Procedimiento:

Ingrese al Report Manager

1. Cargar el Internet Explorer 2. Ir a: http://localhost/Reports -visualizará la página del Report Manager.

Page 13: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 13

Visualizar el reporte: Sales Summary Report.

1. Clic en la carpeta : Examples Reports

2. Haga clic en Sales Summary

3. Visualice el reporte. 4. Por medio de la barra de herramientas navegue a través del reporte haciendo clic en el

botón siguiente. 5. En: Find Text , digite Australia y haga clic en Find

Exportando el archivo vía acrobat

1. En la lista: Export haga clic en Acrobat (PDF) file y luego clic en export 2. En la caja de diálogo File DownLoad seleccione: Open y clic en Aceptar. Ahora podrá

visualizar el reporte. 3. Cerrar el Acrobat

Reporting Services utiliza como estandar el esquema XML, lo cual le permite diseñar sus reportes

en Visual Studio .NET 2003 basado en su lenguaje RDL.

RDL incluye un set completo de formas de generar reportes del tipo: Lista, Tabla, Matriz y Chart. Así como incluir parámetros que le dan dinamismo a la generación del mismo.

Para acceder a los origenes de datos lo hace a través de ADO.NET.

Page 14: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 14

Cargando el Reporting Services

1. Ingrese a Visual Studio NET

2. Del menú Archivo elija –Nuevo Proyecto, con lo que aparecerá la siguiente interfaz, verifique los datos sugeridos

3. En la bienvenida del asistente elija: Next

Page 15: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 15

4. Seleccionando el Data Source

5. Elija : Nuevo origen de datos 6. En tipo: Microsoft SQL Server

7. En cadena de conexión elija: Edit 8. En las propiedades de datos:

a. Server: localhost

b. Loggeo: Windows Integrated Security c. Base Datos: AdventureWorks2000

9. Clic sgte

10. Diseñando la consulta

a. En cadena de consulta digite:

b. Clic en Edit, para visualizar la consulta

c. Clic Next

11. Seleccionando el Tipo de Reporte

a. Seleccione: Tabular

b. Clic Next 12. En Diseño Tabla:

a. Name : Año

b. Grupo: Name , LastName

c. Detalles: Sales Order Number , Total Due Clic Next

13. Vista Previa

a. Elija: Bloque

b. Incluir SubTotales c. Clic next

d. Estilo: Llamativo e. Clic Finalizar

14. Verifique el reporte

SELECT YEAR(OrderDate) AS Año, dbo.SalesTerritory.Name, dbo.SalesPerson.SalesPersonID,

dbo.Employee.FirstName, dbo.Employee.LastName,

dbo.SalesOrderHeader.SalesOrderNumber, dbo.SalesOrderHeader.TotalDue FROM dbo.SalesTerritory INNER JOIN

dbo.SalesPerson ON dbo.SalesTerritory.TerritoryID = dbo.SalesPerson.TerritoryID INNER JOIN

dbo.Employee ON dbo.SalesPerson.SalesPersonID = dbo.Employee.EmployeeID INNER JOIN

dbo.SalesOrderHeader ON dbo.SalesTerritory.TerritoryID = dbo.SalesOrderHeader.TerritoryID AND

dbo.SalesPerson.SalesPersonID = dbo.SalesOrderHeader.SalesPersonID GROUP BY YEAR(OrderDate), dbo.SalesTerritory.Name, dbo.SalesPerson.SalesPersonID,

dbo.Employee.FirstName, dbo.Employee.LastName,

dbo.SalesOrderHeader.SalesOrderNumber, dbo.SalesOrderHeader.TotalDue ORDER BY 1, dbo.SalesTerritory.Name

Page 16: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 16

Reporting Services puede ser usado para configurar el acceso de los usuarios finales a los distintos reportes y carpetas del servidor de reportes, establecer opciones que determinen como y cuando

los reportes se ejecutarán , así como la distribución de los reportes y su procesamiento.

Base de Datos Centralizada del Servidor de Reportes

Los reportes son publicados en una BD centralizada de SQL Server 2000. Una combinación de herramientas pueden ser usadas para administrarla.

Administración del Contenido

Incluye las sgts tareas: Seguridad del Site del Report Server y los items contenidos en la BD del Report Server

aplicando roles.

Se puede modificar, eliminar o agregar carpetas.

Crear data sources compartidos para BD específicas.

Crear suscripciones dirigidas por datos, focalizando la información de acuerdo a las

funciones que desempeña un determinado tipo de usuario.

Administrando Roles

La administración de tareas están organizadas en roles predefinidos: Administrador de Contenidos y Administrador del Sistema. Por defecto, un usuario qué está como administrador en un sistema

local automáticamente tiene los 2 roles asignados, por lo que puede asignar roles al resto de

usuarios. El rol de Administrador de Contenidos incluye un set completo de tareas de administración,

mientras que el rol de Administrador del Sistema incluye tareas que proporcionan acceso a niveles de configuración del site.

Page 17: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 17

Reporting Services está basado en la plataforma .NET que incluye un conjunto de herramientas para integrar una solución de reportes en un entorno técnicamente centralizado.

Componentes Claves

Podemos mencionar:

Report Server

o Es un servicio Web que incluye muchos subcomponentes para administrar el

procesamiento de un reporte: datos, envíos, políticas de seguridad y entre de reportes.

Report Sever Database

o Almacena toda la configuración del reporte dentro de la BD del Servidor, le permite administrar recursos y reportes.

Interfaces de Programación

o Utilizar APIs publicadas y por medio de ella sobre http puede crear herramientas

personalizadas para cualquier estado del ciclo de vida de un reporte

Page 18: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 18

Componentes de Reporting Services

Visual Studio .NET Report Designer

IIS

.NET Framework

Report Server

Report Manager

Servidor

SMTP ServerE-mail

Extension

SQL Server

SQL Server Agent

Report Server

Database

PrerequisitoComponente

UtilitariosWindows Management

Instrumentation

Cliente

Reporting Services debe cumplir ciertos requisitos de software y hardware tanto a nivel de cliente

como de servidor.

Componente de Servidor Todos los componentes de servidor deben ser instalados en un servidor en ejecución bajo los sgts

sistemas operativos:

Windows 2000 Advanced Server o Windows 2000 Data Center

Windows 2003 (Todas las ediciones)

Los componentes del servidor del Reporting Services incluyen:

Report Server y el Report Manager

Estos componentes necesitan o Una instalación existente de Internet Information Services (IIS)

o .NET Framework Report Server Database

o Requiere una instalación de SQL Server

o SQL Server Agent

Extensiones de Entrega

o Servidor de SMPT (el servidor puede ser local o remoto)

Componente de Cliente Para visualizar un reporte o administrarlo desde el Report Server se necesitan:

Cliente del Report Designer, que puede ejecutarse en unos de los sgts sistemas operativos

o Windows 2000

o Windows 2003 o Windows XP

Adicionalmente es requerido Report Designer del Visual Studio .NET 2003

Page 19: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 19

Page 20: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 20

Modulo 2:

Preparando Reportes Básicos

Page 21: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 21

Módulo 2

Preparando Reportes Básicos

Esta sesión incluye las características de Reporting Services orientadas a la elaboración de

reportes de una manera básica incluyendo configuración de origenes de datos y data sets , creando reportes tabulares , sumarizando data y aplicando formato básico.

Por medio de Visual Studio .NET 2003 le permite crear soluciones de reportes. Cada

solución contiene muchos proyectos, y cada proyecto puede contener uno o muchos reportes.

Contenido

Planificación de la Clase

Al finalizar este capitulo, el participante aprenderá a:

Crear un reporte básico Aplicar formato a un reporte básico Usar valores calculados a un reporte

Page 22: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 22

El Report Designer es la herramienta que le permitirá crear un reporte. Proporciona capacidades de

drag-and-drop y mecanismos de despliegue para la publicación de los reportes.

Report Designer se encuentra integrado a Visual Studio .NET 2003, permitiéndole tomar todas las ventajas del entorno de desarrollo de Visual Studio. Adicionalmente puede crear un reporte

manualmente usando el Report Template o si desea puede hacer uso del Report Wizard.

Capacidad de Creación de Reportes

El Report Designer proporciona una interfaz gráfica que le permite configurar todos los aspectos de un reporte final. Proporciona para ello 3 vistas

Vista de Datos: permite la creación de los Data Source y DataSets

Vista Escritorio: para crear regiones de datos y muestren datos en diferentes formatos

Pre vista: Permite realizar un vista previa del reporte diseñado

RDL La definición de un reporte contiene información de los datos a recuperar y el entorno de

información de un reporte. RDL es una representación de XML para esta definición del reporte.

Despliegue

Report Designer proporciona la funcionalidad de despliegue, que le permite desplegar reportes, proyectos o soluciones enteras al report Server directamente desde el diseñador.

Hay 3 propiedades de despliegue que pueden ser configuradas desde el Proyecto de reportes Reescribir DataSources : re-publica un Data Source cuando se establece en True

TargetFolder : especifica el nombre de la carpeta donde los reportes serán publicados

TargetServerURL: especifica el URL del report Server

Page 23: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 23

EL Report Designer Puede crear un reporte de 3 maneras:

Crear un reporte en blanco y manualmente agregar consultas al entorno

Usando el Asistente, que automáticamente crea una tabla o matriz del reporte basado en

información que Ud le proporciona.

Importar un reporte existente desde Microsoft Access

Cuando se crear un reporte manualmente, típicamente deberá de completar los siguientes pasos:

1. Crear un nuevo reporte con una solución .NET 2. Crear un data Source que le permitirá conectarse a los datos

3. Crear un DataSet definidad por medio de una orden de consulta SQL. 4. Escoger un tipo de región de datos, agregarla a un reporte y entonces proporcionar la

region de datos con los campos relevantes provenientes del data set.

5. Determinar los agrupamientos y valores agregados. 6. Agregar formato.

7. Publicar el reporte al Report Server

Page 24: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 24

La definición de un reporte es almacenada bajo la estructura de un documento XML, especificado usando RDL. Un esquema RDL es usados para validar reportes. Sólo reportes válidos pueden ser

publicados en el Report Server. RDL es automáticamente generado por el Report Designer, pero puede ser modificado o creado usando directamente un editor de textos y grabarlo con la extensión

.rdl .

Características de RDL

Proporciona las sgts características: Proporciona un representación XML de la definición del documento. RDL no es una interfaz

de programación o protocolo.

RDL para un reporte en particular es validado usando el esquema de definición de XML

(XSD). El XSD define los elementos aceptados en el documento XML. RDL define un esquema común que promueve el intercambio de definiciones de reporte.

RDl es diseñado para obtener salidas en formatos neutrales. Esto significa que un reporte

escrito en RDL puede ser generado en múltiples formatos de salida.

RDL es un esquema abierto, permitiendo a los desarrolladores extender y agregar

funcionalidad personalizada. El <cliente> </cliente> puede ser usado para insertarse

dentro de cualquier estructura XML de un documento RDL.

Page 25: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 25

DataSource

Contiene información acerca de la conexión a una Base de Datos. Esto incluye información como el Nombre del Servidor, la Base de Datos y credenciales de usuario. Además contiene información de

la consulta a ser usada por un reporte. Los campos contenidos en un data set son usados para las bases de la creación de un reporte

Data Sources presentan las sgts características:

Pueden acceder cualquiere proveedor de datos .NET

Puede ser cualquiera de estos 2 tipos:

o Compartidos: usado en múltiples reportes o Para un reporte específico: sólo por un reporte.

Pueden ser modificados después de que la solución del reporte haya sido desplegada usando

el Report Manager.

DataSet

Un dataset recupera registros de datos basados en una consulta SQL. Las consultas pueden ser construídas creando la orden SQL o con el Query Builder. Presentan las siguientes características:

Pueden ser creadas mediante ordenes de consulta SQL estáticas

Pueden ser dinámicas agregando parámetros a la cláusula where y mapeandolos con los

parámetros del reporte.

Fields

Cada dataset en un reporte puede contener una lista de campos. Generalmente, los campos van referidos a columnas retornadas a partir de un DataSet. Adicionalmente pueden existir campos

calculados los cuales contienen un nombre y expresión.

Page 26: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 26

Creando una Tabla

Layout view

Report preview

Una Región de datos es un control que tiene la capacidad de mostrar datos en una estructura

definida que muestre: campos de una base de datos, campos personalizados y expresiones. El tipo más simple de región de datos es una tabla.

Región de datos de una Tabla

Una tabla es un tipo de región de datos y es hecha a partir de un grupo de celdas organizadas en columnas fijas con registros repetitivos. Cada celda en una tabla contiene items como cajas de

texto. El valor mostrado en la caja de texto puede ser una constante o un campo o parámetro

Fíjese en la presentación anterior que muestra el cuerpo de un simple reporte (Layaout) y la

prevista del reporte.

Note que el reporte contiene 2 columnas: Product y Sales Amount y una fila de Total. Los campos pueden ser añadidos de la Ventana de campos y son mostrado como una expresión. Por ejemplo el

campo Sales Amount es: =Fields!SalesAmount.Value. Veamos la ventana de campos

En el caso de valores sumarizados la expresión es: =Sum(Fields!SalesAmount.Value)

Page 27: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 27

Las regiones de datos proporcionan la capacidad de agrupar los detalles de la información, permitiendo la creación de cabeceras y detalles de grupo. Pueden contener diferentes niveles de

presentación con sus respectivos totalizadores.

Agrupando registros de una Tabla

Cada registro de una tabla está asociada a lo siguiente: Un detalle del registro de un dataset

Un encabezado o pie de un simple grupo

Un encabezado o pie de una tabla

Por defecto una tabla consiste en un encabezado de cada registro, un detalle y un pie. Los campos numéricos pueden incluir sumarizadores creando una especie de gran total.

Por ejemplo en un reporte de ventas por marcas y líneas se pueden incluir grupos que muestren el

detalle vendido por cada producto y los acumulados por marcas y líneas de esos productos.

Es posible que en los totalizadores creados incluyan etiquetas y los valores calculados, para existen

2 formas de hacerlo. Uniendo celdas: ámbos aparecerían como una sola celda

Espaciando celdas: un mínimo de espacio entre la etiqueta y la caja de texto.

Page 28: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 28

Page 29: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 29

Estructura de la página de un Reporte

Las páginas pueden contener diferentes secciones. Comprendiendo estas secciones será de gran ayuda para diseñar sus reportes y tomando grandes ventajas de las capacidades del diseñador de

reportes.

Cabeceras y Pies Un reporte puede contener una cabecera y pie al inicio y al final de cada página y contener: textos,

imágenes y otros items, pero no pueden contener regiones de datos, subreportes o items que hagan referencia directamente a un campo.

Por defecto siempre estarán activas, pero pueden ser suprimidas cambiando el valor de las

propiedades: PrintOnFirstPage o PrintOnLastPage

Uno de los más comunes uso de un pie es mostrar el Nro de Página para lo cual puede crear una

caja de texto con la expresión siguiente:

=”Página:” & Globals.PageNumber

Page 30: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 30

Report Items son usados para agregar datos, estructurar o formatear un reporte. Pueden aparecer

en: regiones de datos o items independientes. Pueden ser incluidos usando la caja de herramientas del Report Designer.

Regiones de Datos

Tablas y matrices proporcionan múltiples niveles de agrupamiento desde una simple región de

datos. Existen los sgtes Tipos:

Una lista: presenta datos como una forma libre, que puede ir creando cajas de texto,

imágenes y otras regiones de datos de 1 registro unico Una tabla: es una región de datos que presenta los datos registro a registro

Una Matriz: llamado Cross-Table o referencia cruzada y es usado generalmente cuando no

se tiene una idea de la cantidad exacta de columnas que aparecerán. Por ejemplo cuando

desea un resumen de ventas de una zona específica, presentando a los vendedores en columnas , y cada zona maneja diferente cantidad de vendedores.

Un gráfico: las regiones de datos pueden presentarse gráficamente. Ejemplo: barras, pie y

líneas, etc.

Items Independientes y Tipos de Items Los tipos de items independientes son los sgts:

Lineas

Cajas de texto

Imágenes

Rectángulos

Un subreporte que referencia al cuerpo de otro reporte.

Page 31: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 31

Los encabezados de página y pie dan un contexto al reporte. Estos se mostrarán al inicio del

reporte y al final en la última página de impresión del reporte, como especie de resumen del

reporte.

Reporte y Página Entonces los encabezados y pies del reporte se mostrarán sólo en la primera y en la última hoja del

reporte, mientras que los encabezados y pies de la página se mostrarán en todas la páginas del

reporte.

Tabla Los encabezados y pies de una tabla aparecerán al inicio y final de la tabla

Grupos

Los encabezados y pies de una tabla aparecerán al inicio y final de cada grupo. Generalmente en el

pie de grupos se incluyen los campos con las funciones de agregamiento respectiva.

Page 32: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 32

Page 33: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 33

Muchos reportes requiere que se efectúen ordenamientos o incluir valores calculados o

totalizadores, promedios, etc., de tal manera que el reporte se ajuste a la necesidad del usuario final y pueda obtener una mejor conclusión de los datos presentados. Muchos de ellos son

obtenidos a partir de los campos de una Base de Datos.

Campos Calculados

Los campos calculados referenciados desde una base de datos deben provenir del mismo origen de datos. Estos campos pueden ser evaluados por cada registro del dataset.

Al crear un campo calculado debe tener cuidado con el nombre si fue escrito con mayúscula o

minúsculas. El sistema no reportará error, pero no mostrará ningún valor en caso se haya digitado mal.

Page 34: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 34

Existen 5 colecciones globales que pueden ser usadas para referenciar valores con datos en un

reporte. Estas colecciones son usadas con items que son capaces de mostrar datos.

Fields La colección Fields contiene campos con la data del dataset activo. Estos campos son usados

típicamente para mostrar datos en cajas de texto, pero pueden ser usadas en otros items,

propiedades y funciones. Items con la colección Fields tienen dos propiedades: Value y IsMisssing. La propiedad Value retorna el valor que fue recuperado por el campo en el dataSet,

mientras que IsMissing indica si existe o no el campo en el dataset.

Globals La colección Global contiene las variables globales de un reportes, los miembros son los sgtes:

Page Number: página actual.

TotalPages: Nro de páginas del reporte

ExecutionTime : hora y fecha de ejecución del reporte

ReportServerURL: URL del report server en el cual el reporte será desplegado

ReporFolder:

ReportName

Parámeters La colección Parameters contiene los parámetros del reporte. Estos parámetros sirven para pasar

valores a una consulta, pasar valores como filtros o variables para calcular datos en un reportes. Generalmente son presentados en el reporte mediante cajas de texto.

ReportItems La colección ReportItems contiene las cajas de texto del reporte. Una caja de texto puede incluir

valores de otras cajas de texto desde una expresión. Por ejemplo: una caja de texto puede llamarse TipoCliente, entonces podría usarse como una expresión de la forma:

=ReportItems!Category.Value .

Page 35: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 35

User

La colección User contiene datos del usuario que está ejecutando el reporte, tenemos: UserId

UserLanguage

Funciones de Agregamiento

Proporciona datos sumarizados basados en el detalle de registros desde un dataset. Ejemplos:

sumas y promedios

Las funciones de agregamiento permiten retornar un valor a partir de múltiples registros en un

dataset.

Sintaxis: Function(Expresión, Alcance)

Donde: Expresión: normalmente es un campo numérico del dataSet

Alcance: determina hasta que nivel de detalle será accesada la data cuando se aplique la función, si la omite tomará por defecto el nivel del grupo activo.

Page 36: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 36

Funciones de Agregamiento Comunes

Sumar valoresSum

Desviación estandardStDev

Agregamientos de ejecuciónRunningValue

Minimo valor no-nullMin

Primer valorFirst

Contar todos los valores distintosCountDistinct

Contar valoresCount

PromedioAvg

Además de funciones antes nombradas tenemos:

Last : recupera el último valor desde un campo de acuerdo al alcance definido.

Max:

RowNumber: recupera el valor de la columna identity (incremento automático) en el

dataset.

StDevP: desviación estandar poblacional

Var : varianza

Varp : varianza poblacional

Page 37: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 37

Al veces es necesario mostrar un dato a partir del resultado de la evaluación de una condición en particular. Esto da la posibilidad de mostrar formateo dinámico, por ejemplo para mostrar cifras de

un color en función a metas impuestas, la orden podría ser:

Iif(ReportsItems!Margin.Value < 0.05, “Red”, “Black”)

Page 38: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 38

Page 39: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 39

LAB 02 . Ejercicio 01

Creando una Tabla

Creando un Nuevo Reporte "Venta de Productos"

1. Abrir SQL Server Business Intelligent Development Studio 2. En el menu Archivo Nuevo, y click Proyecto.

3. Seleccione Business Intelligence Projects 4. Click Proyecto de Servidor de Informes 5. Click Examinar y ubique la carpeta C.\windows\Reportes (sino existe

crearla) click Abrir. 6. En Nombre digitar ReporteVentas, click OK.

Creando el Origen de Datos

1. En el Explorador Soluciones, right-click Origenes deDatos Compartidos folder, and then click Agregar Nuevo Origen de Datos.

Page 40: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 40

2. Proceda como la Interfaz sgte:

3. A continuación ingrese los datos respectivos del servidor (localhost) y seleccione la BD (Tenebrosa2008).

Page 41: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 41

4. Click Test Connection, y luego Aceptar 5. Click Aceptar

Creando el Reporte

En el Explorador de Soluciones, right-click en Informes , Agregar - Agregar Nuevo Elemento

Page 42: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 42

7. Proceda como la siguiente interfaz

Click: Agregar

Agregando un conjunto de datos 1. En Datos del Informe en la lista click Nuevo y seleccione < Conjunto Datos

>.

Page 43: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 43

Con lo que aparece

Seleccione la conexión compartida

Page 44: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 44

3. En nombre digite: Resumen_Ref y seleccione Origen Compartido:

resumen.

Page 45: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 45

Pegar el siguiente código:

5. Click Aceptar. 6. Grabar archivo

SELECT d.personal,anual = YEAR(d.fecha),mes = MONTH(d.fecha), Total =SUM(dd.cantidad*dd.precunit), Cobranza = (SELECT SUM(Documento .pagado) FROM DOCUMENTO where YEAR(d.fecha) = year(Documento.Fecha) AND MONTH(d.fecha) = month(Documento.Fecha) and D.Personal = DOCUMENTO.PERSONAL and DOCUMENTO.cliente is not null) FROM documento d inner join detadoc dd ON d.documento=dd.documento and d.tipodoc=dd.tipodoc WHERE d.cliente IS NOT NULL GROUP BY d.personal, YEAR(d.fecha), MONTH(d.fecha)

Page 46: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 46

Agregando un grafico al Diseño

1. Click en la vista de Diseño (Layout) 2. Del Cuadro de herramientas:

Arrastre gráfico al entorno con lo que aparecerá:

Page 47: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 47

Elija gráfico de líneas:

Al aparecer el control gráfico incorporar los campos en la posición de acuerdo al esquema

siguiente:

Visualizando el gráfico

Page 48: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 48

Existen algunos detalles como los meses que aparecen desordenados, esto puede corregirse configurando las propiedades del eje

A continuación configurar el ordenamiento, tal como aparece en el siguiente gráfico

Page 49: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 49

Agregando una tabla de region de datos Click sobre el gráfico elija la opción : Propiedades de la leyenda

Page 50: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 50

Incluyendo un parámetro para filtrar información de Ventas

Ingrese en propiedades del conjunto de datos ventas:

En el WHERE agregar: AND d.personal = @idPersonal La instrucción completa quedará :

Note que el sistema le pedirá un código de personal, el cual será tomado por el

parámetro ingresado en el conjunto de datos.

SELECT d.Personal, YEAR(d.Fecha) AS anual, MONTH(d.Fecha) AS mes, SUM(dd.Cantidad *

dd.PrecUnit) AS Total, (SELECT SUM(pagado) AS Expr1

FROM DOCUMENTO WHERE (YEAR(d.Fecha) = YEAR(Fecha)) AND (MONTH(d.Fecha) =

MONTH(Fecha)) AND (d.Personal = Personal) AND (Cliente IS NOT NULL)) AS Cobranza

FROM DOCUMENTO AS d INNER JOIN DETADOC AS dd ON d.Documento = dd.Documento AND d.TipoDoc = dd.TipoDoc

WHERE (d.Cliente IS NOT NULL) AND d.personal = @idPersonal GROUP BY d.Personal, YEAR(d.Fecha), MONTH(d.Fecha)

Page 51: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 51

Si se manejan bastantes códigos podría ser complicado tenerlos todos en mente,

por lo que crearemos una lista a partir del mismo.

Transformando parámetro en una Lista

Agregar un nuevo conjunto de datos

La consulta es la siguiente:

SELECT personal, nombre FROM personal WHERE personal

IN ( SELECT DISTINCT personal FROM documento WHERE personal IS NOT NULL)

ORDER BY 2

Page 52: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 52

Configurando Parámetro

Siga como en el gráfico siguiente:

Visualice el parámetro:

Agregando una tabla de región de datos

1. Click en la barra de herramientas y elija el control tabla tal como muestra el siguiente esquema:

Page 53: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 53

Incorporando Control Tabla

Arrastre del Control de Datos ventas hacia el control tabla

Poniendo Color a las etiquetas Proceda de la siguiente forma:

Page 54: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 54

Agregando un totalizador a la Columna Total

1. Clic derecho sobre el total del detalle y selección: Agregar Total

Visualice la información

Creando Agrupamientos

Vamos a agrupar la información por años, tal como se observa en el sgte diagrama:

Page 55: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 55

Grabar y Visualizar el Reporte

1. Grabe todos los archivos

2. Click en la Vista Prevista verifique el detalle y los totales

2. Vuelva al diseño y elimine el año de la 2da columna.

3. Ponga un borde a la línea de detalle 4. Realice la prevista respectiva

Page 56: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 56

Creando Totalizador del Grupo

1. Clic derecho sobre la celda del detalle: [Total] elegir Agregar Total Después de 2. Escriba: ** Total Anual ** según lo indicado, es posible que deba combinar celdas

3. Realice una prevista

Page 57: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 57

Formateando la Tabla

1. Seleccione la columna Total.

2. En Propiedades : Format digite N0 3. Click en el icono de Detalle y en la propiedad Background Color click WhiteSmoke,

4. Formatear el encabezado de la sgte forma: • Click 12 Font Size • Click Bold en Font Weigth

• Click Background Color click Black, • Click Color :White, 7. Proceda a formatear el pie de la tabla de acuerdo a su iniciativa

8. Formatear las sumatorias del Pie del Grupo y del gran total con: N0

Grabar y Visualizar

Ejercicio 2

Formateando Páginas del Reporte A continuación se aplicarán las funciones adicionales de formateo. Incluirá

cabeceras, imagines y pies de páginas, imágenes y saltos de página.

Page 58: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 58

Agregando una Imagen al Reporte

Mueva hacia abaja el control tabla, haciendo espacio para poder incluir la imagen respectiva. 1. De la caja de herramientas, click Imagen.

2. Clic en: Importar: Tenebrosa.bmp

3. Asegurar de que esté en el botón Incrustado

Grabe y visualice

Agregando un Encabezado en la primera página del Reporte

1. Seleccione la tabla y moverla hacia arriba a 4 cm aprox del tope del reporte 2. De la Caja de Herramientas, click Línea. y ubicarla a lo largo del tope

4. En Propiedades, LineWidth = 12pt. 5. Incluya una Caja de Texto., ubicándolo debajo de la línea 6. Digite dentro de la caja de texto: Resumen de Ventas, puede forzar el texto

a otra línea presionando SHIFT+ENTER.

Page 59: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 59

7. Ponga las propiedades Font : Size =20, y FontWeight = Bold

Agregando un Encabezado al Reporte

1. Click en Diseño

2. Right-click al margen izquierdo del cuerpo del reporte, click Page Header. Note la nueva sección, Encabezado de Página, aparece en el tope del reporte

3. Incluya dentro del Encabezado de Página desde el Cuadro de herramientas el control Caja de Texto e incluya el texto: Reporte de Venta de Productos.

4. En la ventana de Propiedades click Encabezado de Página. 5. Active la propiedad PrintOnFirstPage =False. 6. Active la propiedad PrintOnLastPage = True.

7. Click ficha Prevista .

Agregando un Pie de Página al Reporte

1. Agregue un pie de página al reporte e incluya una caja de texto digitando:

Confidencial 2. En las propiedades del Pie de Página a PrintOnFirstPage y

PrintOnLastPage active True

Grabe y Visualice el Reporte

Page 60: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 60

Page 61: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 61

Exercise 3

Creando Valores Calculados

Creando el Campo Calculado Deuda

1. Click derecho en el Conjunto Datos Ventas y elija Agregar Campo Calculado

2. Proceda como la sgte interfaz

3. Agregue la columna Deuda 4. Incluye un totalizador a nivel Anual haciendo clic derecho en la celda y

eligiendo expresión :

Page 62: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 62

5. Proceda igual para crear el totalizador de la tabla para la columna Deuda

Grabar y hacer una prevista:

Creando la columna % Deuda

Crear la columna pDeuda con la sgte expresión

Page 63: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 63

Detalle: =Fields!Deuda.Value/Fields!Total.Value

y para Anual y Grand Total

=Sum(Fields!Margen.Value)/Sum(Fields!SalesAmount.Value)

Deberá de especificar la propidad: Format = P

Grabe y Visualice los resultados

Condicionando Visualización de Datos para Márgenes

Pequeños

1. Ubicar del detalle de la tabla la Celda % pDeuda y elija la propiedad Color y de

la lista elija Expresión. 2. Digite : =IIF(Me.Value>0.5, "Red", "Black")

Me: se refiere al elemento del reporte al cual pertenece la expresión

3.Click OK.

Page 64: Reporting Services Manual 2008

Reporting Services Manual del Participante

Ms, Ing. Ricardo Mendoza Rivera Pág.: 64