Tutorial: Crear un informe de matriz (Generador de informes)

Este tutorial le enseña a crear un informe paginado de Reporting Services con una matriz de datos de ventas de ejemplo en los grupos anidados de filas y columnas.

También creará un grupo de columnas adyacente, dará formato a columnas y girará el texto. En la ilustración a continuación se muestra un informe similar al que creará en este tutorial.

Screenshot of a Report Builder matrix report.

Tiempo estimado para completar este tutorial: 20 minutos.

Requisitos

Para obtener información sobre los requisitos, consulte Requisitos previos para los tutoriales.

1. Crear un informe de matriz y un conjunto de datos desde el nuevo Asistente para tablas o matrices

En esta sección, elegirá un origen de datos compartido, creará un conjunto de datos insertado y, después, mostrará los datos en una matriz.

Nota:

En este tutorial, la consulta contiene ya los valores de datos, de forma que no necesita un origen de datos externo. Esto hace que la consulta requiera bastante tiempo. En un entorno empresarial, la consulta no contendría los datos. Esto es solo con fines de aprendizaje.

Creación de una matriz

  1. Inicie el Generador de informes desde el equipo, el portal web de Reporting Services o el modo integrado de SharePoint.

    Se abre el cuadro de diálogo Nuevo informe o conjunto de datos .

    Si no ve el cuadro de diálogo Nuevo informe o conjunto de datos, vaya al menú Archivo>Nuevo.

  2. En el panel de la izquierda, compruebe que está seleccionada la opción Nuevo informe .

  3. En el panel de la derecha, haga clic en Asistente para tablas o matrices.

  4. En la página Elegir un conjunto de datos, seleccione Crear un conjunto de datos.

  5. Seleccione Siguiente.

  6. En la página Elegir una conexión a un origen de datos, seleccione un origen de datos existente o navegue al servidor de informes y elija un origen de datos. Si no hay disponible ningún origen de datos o no tiene acceso a un servidor de informes, puede utilizar un origen de datos incrustados en su lugar. Para más información sobre cómo crear un origen de datos insertado, vea Tutorial: Crear un informe de tabla básico (Generador de informes).

  7. Seleccione Siguiente.

  8. En la página Diseñar una consulta, seleccione Editar como texto.

  9. Copie y pegue la siguiente consulta en el panel de consulta:

    SELECT CAST('2015-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(16996.60 AS money) AS Sales, 68 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13747.25 AS money) AS Sales, 55 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Carrying Case' as Product, CAST(9248.15 AS money) As Sales, 37 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1350.00 AS money) AS Sales, 18 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1800.00 AS money) AS Sales, 24 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1125.00 AS money) AS Sales, 15 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1147.50 AS money) AS Sales, 17 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,  'Lens Adapter' as Product, CAST(742.50 AS money) AS Sales, 11 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1417.50 AS money) AS Sales, 21 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(13497.30 AS money) AS Sales, 54 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(11997.60 AS money) AS Sales, 48 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory, 'Carrying Case' as Product, CAST(10247.95 AS money) As Sales, 41 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory, 'Tripod' as Product, CAST(1200.00 AS money) AS Sales, 16 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(2025.00 AS money) AS Sales, 27 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Tripod' as Product, CAST(1425.00 AS money) AS Sales, 19 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'Central' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(887.50 AS money) AS Sales, 13 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'North' as Territory, 'Accessories' as Subcategory, 'Lens Adapter' as Product, CAST(607.50 AS money) AS Sales, 9 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'South' as Territory, 'Accessories' as Subcategory,'Lens Adapter' as Product, CAST(1215.00 AS money) AS Sales, 18 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate,  'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(10191.00 AS money) AS Sales, 79 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate,  'North' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8772.00 AS money) AS Sales, 68 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate,  'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(10578.00 AS money) AS Sales, 82 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'Central' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(7218.10 AS money) AS Sales, 38 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'North' as Territory,'Digital' as Subcategory, 'Slim Digital' as Product, CAST(8357.80 AS money) AS Sales, 44 as Quantity  
    UNION SELECT CAST('2015-01-05' AS date) as SalesDate, 'South' as Territory,'Digital' as Subcategory,'Slim Digital' as Product, CAST(9307.55 AS money) AS Sales, 49 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate,  'Central' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(3870.00 AS money) AS Sales, 30 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate,  'North' as Territory, 'Digital' as Subcategory,'Compact Digital' as Product, CAST(5805.00 AS money) AS Sales, 45 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate,  'South' as Territory, 'Digital' as Subcategory, 'Compact Digital' as Product, CAST(8643.00 AS money) AS Sales, 67 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'Central' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(9877.40 AS money) AS Sales, 52 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'North' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(12536.70 AS money) AS Sales, 66 as Quantity  
    UNION SELECT CAST('2015-01-06' AS date) as SalesDate, 'South' as Territory, 'Digital' as Subcategory, 'Slim Digital' as Product, CAST(6648.25 AS money) AS Sales, 35 as Quantity  
    
  10. (opcional) Seleccione el icono Ejecutar (!) para ejecutar la consulta y ver los datos.

  11. Seleccione Siguiente.

2. Organizar datos y elegir el diseño desde el Asistente para nueva tabla o matriz

Utilice el asistente para proporcionar un diseño inicial en el que mostrar los datos. El panel de vista previa del asistente le ayudará a visualizar el resultado de las agrupaciones de datos antes de completar el diseño de la matriz.

  1. En la página Organizar campos , arrastre Territory desde Campos disponibles a Grupos de filas.

  2. Arrastre SalesDate hasta Grupos de filas y colóquelo después de Territory.

    El orden en el que se enumeran los campos en Grupos de filas define la jerarquía de grupos. Los pasos 1 y 2 organizan los valores de los campos primero por territorio y, después, por la fecha de las ventas.

  3. Arrastre Subcategory a Grupos de columnas.

  4. Arrastre Product a Grupos de columnas y colóquelo después de Subcategory.

    De nuevo, el orden en el que se enumeran los campos en Grupos de columnas define la jerarquía de grupos. Los pasos 3 y 4 organizan los valores de los campos primero por subcategoría y, después, por producto.

  5. Arrastre Sales a Valores.

    El campo Sales se resume con la función Sum, que es la función predeterminada para resumir campos numéricos.

  6. Arrastre Quantity a Valores.

    El campo Quantity se resume con la función Sum.

    Los pasos 5 y 6 especifican los datos que deben mostrarse en las celdas de datos de la matriz.

    Screenshot that shows the Report Builder arrange fields Report Wizard.

  7. Seleccione Siguiente.

  8. En la página Elegir el diseño, en Opciones, compruebe que esté seleccionada la opción Mostrar subtotales y totales generales .

  9. Compruebe que esté seleccionada la opción Bloqueado, subtotal abajo .

  10. Compruebe que la opción Expandir o contraer grupos está seleccionada.

  11. Seleccione Siguiente.

  12. Seleccione Finalizar.

    La matriz se agrega a la superficie de diseño. El panel Grupos de filas muestra dos grupos de filas: Territory y SalesDate. El panel Grupos de columnas muestra dos grupos de columnas: Subcategory y Product. Los datos de detalle son todos los datos que recupera la consulta del conjunto de datos.

    Screenshot that shows the Report Builder Row Groups and Column Groups.

  13. Seleccione Ejecutar para obtener una vista previa del informe.

    Para cada producto que se vende en una fecha concreta, la matriz muestra la subcategoría a la que pertenece el producto y el territorio de las ventas.

  14. Expanda una subcategoría. Puede ver que el informe se amplía rápidamente.

Screenshot that shows an expanded Report Builder matrix report.

3. Dar formato a datos

De forma predeterminada, los datos de resumen para el campo Sales muestran un número general y el campo SalesDate muestra información de fecha y de hora. En esta sección, dará formato al campo Sales para mostrar el número como moneda y al campo SalesDate para mostrar solo la fecha. Alterne Estilos de marcador de posición para mostrar los cuadros de texto con formato y el texto de marcador de posición como valores de ejemplo.

Dar formato a los campos

  1. Seleccione Diseño para cambiar a la vista Diseño.

  2. Presione la tecla CTRL y, a continuación, seleccione las nueve celdas que contienen [Sum(Sales)].

  3. En la pestaña Inicio>Número>Moneda. Las celdas cambian para mostrar la moneda con formato.

    Si la configuración regional es Inglés (Estados Unidos), el texto de ejemplo predeterminado es [ $12,345.00]. Si no ve un valor de moneda de ejemplo en el grupo Números, seleccione Estilos de marcador de posición>Valores de ejemplo.

    Screenshot of the Report Builder Sample Values option.

  4. Seleccione la celda que contiene [SalesDate].

  5. En el grupo Número, vaya a Fecha.

    La celda muestra la fecha de ejemplo [1/31/2000] . Si no ve un valor de fecha de ejemplo, seleccione Estilos de marcador de posición en el grupo Números y, después, elija Valores de ejemplo.

  6. Seleccione Ejecutar para obtener una vista previa del informe.

Los valores de fecha solo muestran fechas y los valores de ventas se muestran como moneda.

4. Agregar grupo de columnas adyacente

Puede anidar grupos de filas y de columnas en relaciones de elementos primarios y secundarios o adyacentes en relaciones del mismo nivel.

En esta sección, agregará un grupo de columnas junto al grupo de columnas de Subcategory, copiará las celdas para rellenar el nuevo grupo de columnas y, después, utilizará una expresión para crear el valor del encabezado de grupo de columnas.

Agregar un grupo de columnas adyacente

  1. Seleccione Diseño para volver a la vista de diseño.

  2. Haga clic con el botón derecho en la celda que contiene [Subcategory], señale Agregar grupo y, luego, seleccione Adyacente a la derecha.

    Se abre el cuadro de diálogo Grupo de Tablix .

  3. En la lista Agrupar por, seleccione SalesDate y, después, Aceptar.

    Se agrega un nuevo grupo de columnas a la derecha del grupo de columnas de Subcategory.

  4. Haga clic con el botón derecho en la celda del nuevo grupo de columnas que contiene [SalesDate], y, luego, seleccione Expresión.

  5. Copie la siguiente expresión en el cuadro de expresión.

    =WeekdayName(DatePart("w",Fields!SalesDate.Value))  
    

    Esta expresión extrae el nombre del día de la semana de la fecha de ventas. Para obtener más información, consulte Expresiones en un informe paginado (Generador de informes).

  6. Haga clic con el botón derecho en la celda del grupo de columnas de Subcategory que contiene Total y, luego, seleccione Copiar.

  7. Haga clic con el botón derecho en la celda situada inmediatamente debajo de la celda que contiene la expresión que ha creado en el paso 5 y seleccione Pegar.

  8. Presione la tecla CTRL.

  9. En el grupo Subcategory, seleccione el encabezado de columna Sales y las tres celdas debajo de él, haga clic con el botón derecho y, después, elija Copiar.

  10. Pegue las cuatro celdas en las cuatro celdas vacías en el nuevo grupo de columnas.

  11. Seleccione Ejecutar para obtener una vista previa del informe.

El informe incluye columnas denominadas Monday y Tuesday. El conjunto de datos solo contiene los datos de estos dos días.

Screenshot that shows weekdays displayed in the Report Builder matrix report.

Nota:

Si los datos incluyeran otros días, el informe también incluiría las columnas correspondientes. Cada columna tiene el encabezado de columna Salesy los totales de ventas por territorio.

5. Cambiar el ancho de columna

Un informe que incluye una matriz normalmente se expande horizontalmente y verticalmente cuando se ejecuta. Controlar la expansión horizontal es importante si piensa exportar el informe a los formatos como Microsoft Word o Adobe PDF, que se utilizan para los informes impresos. Si el informe se expande horizontalmente por varias páginas, el informe impreso es difícil de entender. Para minimizar la expansión horizontal, puede cambiar el tamaño de las columnas para que tengan solo el ancho necesario para mostrar los datos sin ajustar. También puede cambiar el nombre de las columnas para que sus títulos con el ancho necesario para mostrar los datos.

Cambiar el nombre y el tamaño de las columnas

  1. Seleccione Diseño para volver a la vista de diseño.

  2. Seleccione el texto de la columna Quantity situada más a la izquierda y, después, introduzca QTY.

    El título de la columna es ahora QTY.

  3. Repita el paso 2 en las otras dos columnas denominadas Quantity.

  4. Seleccione la matriz para que los identificadores de columna y de fila aparezcan encima de la matriz y al lado.

    Las barras grises situadas en la parte superior y en el lado de la tabla son los identificadores de fila y de columna.

    Screenshot for the column and row handles in the Report Builder matrix report.

  5. Para cambiar el tamaño de la columna QTY más alejada de la izquierda de la matriz, seleccione la línea entre los identificadores de columna para que el cursor cambie a una flecha doble. Arrastre la columna hacia la izquierda hasta que el ancho sea de 0,5 pulgadas.

    Un ancho de columna de 0,5 pulgadas es adecuado para mostrar la cantidad.

  6. Repita el paso 5 en las otras columnas denominadas QTY.

  7. Seleccione Ejecutar para obtener una vista previa del informe.

Las columnas que contienen cantidades son ahora más estrechas y se denominan QTY.

6. Combinar las celdas de la matriz

El área de la esquina está en la esquina superior izquierda de la matriz Dependiendo del número de grupos de filas y columnas de la matriz, el número de celdas en el área de la esquina varía. La matriz generada en este tutorial tiene cuatro celdas en su área de esquina. Las celdas se disponen en dos filas y dos columnas, reflejando la profundidad de las jerarquías de grupos de filas y columnas. Las cuatro celdas no se utilizan en este informe y las combinará en una.

Combinar las celdas de la matriz

  1. Seleccione Diseño para volver a la vista de diseño.

  2. Seleccione la matriz para que los identificadores de columna y de fila aparezcan encima de la matriz y al lado.

  3. Pulse la tecla CTRL y seleccione las cuatro celdas de la esquina.

  4. Haga clic con el botón derecho en las celdas y seleccione Combinar celdas.

  5. Haga clic con el botón derecho en la nueva celda combinada y seleccione Propiedades de cuadro de texto.

  6. En la pestaña Borde>Valores predeterminados>Ninguno.

  7. Seleccione Aceptar.

  8. Seleccione Ejecutar para obtener una vista previa del informe.

La celda en la esquina superior de la matriz ya no está visible.

7. Agregar un encabezado y un título del informe

Los títulos de informe aparecen en la parte superior. Puede situar el título del informe en un encabezado de informe o, si el informe no lo utiliza, en un cuadro de texto en la parte superior del cuerpo del informe. En este tutorial, eliminará el cuadro de texto de la parte superior del informe y agregará un título al encabezado.

Agregar un encabezado y un título del informe

  1. Seleccione Diseño para volver a la vista de diseño.

  2. Seleccione el cuadro de texto de la parte superior del cuerpo del informe que contiene Haga clic para agregar un títuloy, después, pulse la tecla Suprimir.

  3. En la pestaña Insertar, vaya a Encabezado>Agregar encabezado.

    Se agrega un encabezado a la parte superior del cuerpo del informe.

  4. En la pestaña Insertar, seleccione Cuadro de texto y, luego, arrastre un cuadro de texto al encabezado del informe. Haga un cuadro de texto de aproximadamente 6 pulgadas de largo y 3/4 de pulgada de alto, y colóquelo en el lado izquierdo del encabezado del informe.

  5. En el cuadro de texto, introduzca Ventas por territorio, Subcategoría y Día.

  6. Seleccione el texto que ha introducido en la pestaña Inicio>Fuente:

    • Tamaño 24 pt
    • Color Rojo oscuro
  7. Seleccione Ejecutar para obtener una vista previa del informe.

El informe incluye un título de informe en el encabezado del informe.

8. Guardar el informe

Puede guardar los informes en un servidor de informes, en una biblioteca de SharePoint o en su equipo.

En este tutorial, guarde el informe en un servidor de informes. Si no tiene acceso a un servidor de informes, guarde el informe en su ordenador.

Guardar el informe en un servidor de informes

  1. En el botón Report Builder, seleccione Guardar como.

  2. Seleccione Sitios y servidores recientes.

  3. Seleccione o introduzca el nombre del servidor de informes donde tiene el permiso para guardar los informes.

    Aparecerá el mensaje "Conectando con el servidor de informes". Una vez completada la conexión, verá el contenido de la carpeta de informes que el administrador del servidor de informes especificó como ubicación predeterminada para los informes.

  4. En Nombre, reemplace el nombre predeterminado por SalesByTerritorySubcategory.

  5. Seleccione Guardar.

El informe se guarda en el servidor de informes. El nombre del servidor de informes al que está conectado aparecerá en la barra de estado en la parte inferior de la ventana.

Guardar el informe en el ordenador

  1. En el botón Report Builder, seleccione Guardar como.

  2. Seleccione Escritorio, Mis documentos o Mi PC y navegue a la carpeta donde desea guardar el informe.

  3. En Nombre, reemplace el nombre predeterminado por SalesByTerritorySubcategory.

  4. Seleccione Guardar.

9. (Opcional) Girar 270 grados el cuadro de texto

Un informe con matrices se puede expandir horizontal y verticalmente cuando se ejecuta. Girando los cuadros de texto verticalmente o 270 grados, puede ahorrar espacio horizontal. El informe representado se hace más estrecho y, si se exporta a un formato como Microsoft Word, tendrá más posibilidades de ajustar en una página impresa.

Un cuadro de texto también puede mostrar el texto como horizontal o como, vertical (de arriba abajo). Para obtener más información, vea Cuadros de texto en informes paginados (Generador de informes).

Girar 270 grados el cuadro de texto

  1. Seleccione Diseño para volver a la vista de diseño.

  2. Seleccione la celda que contiene [Territory].

    Nota

    Seleccione la celda, no el texto. La propiedad WritingMode solo está disponible para la celda.

    Screenshot that shows the Territory cell in the Report Builder matrix report.

  3. En el panel Propiedades, busque la propiedad WritingMode y cámbiela de Default a Rotate270.

    Si el panel Propiedades no está abierto, seleccione la pestaña Ver de la cinta de opciones y, luego, elija Propiedades.

  4. Compruebe que la propiedad CanGrow está establecida en True.

  5. En la pestaña Inicio> sección Párrafo, seleccione Centro y Centrar para colocar el texto en el centro de la celda tanto vertical como horizontalmente.

  6. Cambie el tamaño de la columna Territory para que tenga un ancho de 0,5 pulgadas y elimine el título de columna.

  7. Seleccione Ejecutar para obtener una vista previa del informe.

El nombre del territorio se escribe verticalmente, de arriba abajo. El alto del grupo de fila de Territory varía por la longitud del nombre del territorio.

Pasos siguientes

Ha completado correctamente el tutorial para crear un informe de matriz. Para obtener más información sobre matrices, consulte: