Exportación de un informe paginado a Microsoft Excel (Generador de informes)
Se aplica a: Generador de informes de Microsoft (SSRS) Power BI Report Builder Diseñador de informes en SQL Server Data Tools
Al trabajar con Power BI o SQL Server Reporting Services (SSRS), puede usar la extensión de representación de Excel para exportar informes paginados a Microsoft Excel. El ancho de las columnas exportadas en Excel imita el ancho de las columnas de los informes. Pero puede reestructurar los datos del informe o procesarlos aún más en un libro.
En este artículo se describen varios aspectos del proceso de exportación, como la compatibilidad del representador con características interactivas y la colocación de datos en celdas. También se tratan las limitaciones de Excel y el representador.
Formato de exportación
La extensión de representación de Excel exporta informes al formato Office Open XML. El tipo de contenido de los archivos que genera el representador es application/vnd.openxmlformats-officedocument.spreadsheetml.sheet y la extensión de archivo es .xlsx.
Puede cambiar parte de la configuración predeterminada de este representador cambiando los valores de configuración de la información del dispositivo. Para más información, vea Configuración de la información del dispositivo Excel.
Para obtener información sobre cómo exportar un informe en formato excel, vea Exportar informes paginados (Generador de informes) .
Importante
Cuando se define un parámetro de informe de tipo String
, se presenta al usuario un cuadro de texto que puede tomar cualquier valor. Si el parámetro de informe no está vinculado a un parámetro de consulta y los valores de parámetro se incluyen en el informe, existe un riesgo de seguridad. En concreto, el usuario del informe puede escribir la sintaxis de expresión, el código de script o una dirección URL como valor de parámetro. Como resultado, el usuario puede escribir un script malintencionado o un vínculo malintencionado. Si el informe se exporta a Excel, otros usuarios pueden verlo. Si seleccionan el contenido del parámetro representado, corre el riesgo de ejecutar accidentalmente un script malintencionado o de ir a un sitio malintencionado.
Para reducir el riesgo de ejecución accidental de scripts malintencionados, abra los informes representados exclusivamente desde orígenes de confianza. Para obtener más información sobre cómo proteger informes, vea Proteger informes y recursos.
Limitaciones de Excel
Excel pone limitaciones en los informes exportados debido a las funcionalidades de Excel y sus formatos de archivo. Las siguientes limitaciones son las más importantes:
- El ancho máximo de columna es de 255 caracteres o 1726,5 puntos. El representador no comprueba que el ancho de columna es menor que el límite.
- El número máximo de caracteres de una celda es de 32 767. Si se supera este límite, el representador muestra un mensaje de error.
- El alto máximo de las filas es de 409 puntos. Si el contenido de una fila hace que el alto de fila supere los 409 puntos, la celda de Excel muestra una cantidad parcial de texto de hasta 409 puntos. El resto del contenido de la celda todavía está dentro de la celda, hasta el máximo permitido de 32 767 caracteres.
- Dado que el alto máximo de fila es de 409 puntos, si el alto definido de una celda del informe es mayor que 409 puntos, Excel divide el contenido de la celda en varias filas.
- El número máximo de hojas de cálculo no se define en Excel. Sin embargo, los factores externos, como la memoria y el espacio en disco, pueden provocar limitaciones.
- En los esquemas, Excel permite hasta 7 niveles de anidamiento.
- La disponibilidad de un esquema depende de la posición del elemento de informe que controla la visibilidad de otro elemento. Un esquema no está disponible en los casos siguientes:
- El elemento de informe de control no está en la fila anterior o siguiente en relación con el elemento expandido o contraído.
- El elemento de informe de control no está en la columna del elemento que se expande o contrae.
Para obtener más información sobre las limitaciones de Excel, vea Especificaciones y límites de Excel.
Cuadros de texto y texto
Las siguientes limitaciones se aplican a los cuadros de texto y al texto:
- Los valores de cuadro de texto que son expresiones no se convierten en fórmulas de Excel. El valor de cada cuadro de texto se evalúa durante el procesamiento del informe. La expresión evaluada se exporta como el contenido de cada celda de Excel.
- Cada cuadro de texto se representa dentro de una celda de Excel. Para el tamaño de fuente, la cara de fuente, la decoración y el estilo de fuente, el formato se admite en el texto de la celda.
- Excel no admite el formato de texto sobrelineado.
- Excel agrega un relleno predeterminado de aproximadamente 3,75 puntos en los lados izquierdo y derecho de las celdas. Si el relleno de un cuadro de texto es inferior a 3,75 puntos y el cuadro no es lo suficientemente ancho como para acomodar el texto, el texto podría ajustarse a una nueva línea en Excel. Para evitar este problema, aumente el ancho del cuadro de texto en el informe.
Imágenes
Las siguientes limitaciones se aplican a las imágenes:
- Las imágenes de fondo de los elementos de informe se omiten porque Excel no admite imágenes de fondo en celdas individuales.
- La extensión de presentación en Excel solamente admite la imagen de fondo del cuerpo del informe. Si se muestra una imagen de fondo del cuerpo del informe en el informe, la imagen se presenta como una imagen de fondo de la hoja de cálculo.
Rectángulos
La siguiente limitación se aplica a los rectángulos: los rectángulos de los pies de página del informe no se exportan a Excel. Pero los rectángulos en el cuerpo del informe, las celdas Tablix y otros componentes similares se representan como un rango de celdas de Excel.
Encabezados y pies de página del informe
Las siguientes limitaciones se aplican a los encabezados y pies de página del informe:
- Los encabezados y pies de página de Excel admiten un máximo de 256 caracteres, incluido el marcado. La extensión de presentación trunca la cadena en los 256 caracteres.
- SSRS no admite márgenes en encabezados y pies de página de informe. En Excel, estos valores de margen se establecen en cero.
- Al imprimir un informe que se exporta a Excel, la configuración de la impresora puede afectar a la representación. En concreto, si un encabezado o pie de página del informe contiene varias filas de datos, es posible que no vea varias filas en la impresión.
- Los cuadros de texto de un encabezado o pie de página mantienen su formato, pero no su alineación cuando se exportan a Excel. Los espacios iniciales y finales se recortan cuando el informe se representa en Excel, lo que cambia la alineación.
Celdas combinadas
La siguiente limitación se aplica a la combinación de celdas: si las celdas se combinan, el texto no se ajusta correctamente.
El representador de Excel es principalmente un presentador de diseño. Su objetivo es replicar el diseño del informe representado de la forma más estrecha posible en una hoja de cálculo de Excel. Como resultado, es posible que las celdas se combinen en la hoja de cálculo para conservar el diseño del informe. Las celdas combinadas pueden causar problemas porque la funcionalidad de ordenación en Excel requiere que las celdas se combinen de forma específica para que la ordenación funcione correctamente. Por ejemplo, si desea ordenar un rango de celdas, Excel requiere que cada celda combinada del rango tenga el mismo tamaño que las otras celdas combinadas del rango.
Reducir el número de celdas combinadas en las hojas de cálculo de Excel facilita la ordenación de hojas de cálculo. Los siguientes puntos pueden ayudarle a minimizar el número de celdas que se combinan durante el proceso de exportación.
- La razón más común por la que las celdas se combinan es que los elementos no están alineados a la izquierda o a la derecha. Normalmente, puede resolver el problema alineando los bordes izquierdo y derecho de todos los elementos de informe y proporcionando a los elementos el mismo ancho.
- Incluso cuando se alinean todos los elementos, algunas columnas se combinan en casos poco frecuentes. La conversión interna de unidades y el redondeo durante el proceso de representación pueden hacer que las celdas se combinen. En el lenguaje de definición de informe (RDL), puede especificar posiciones y tamaños en varias unidades, como pulgadas, píxeles, centímetros y puntos. Internamente, Excel usa puntos. Como resultado, las pulgadas y centímetros se convierten en puntos durante la representación. Para minimizar las operaciones de conversión durante la representación y la posible inexactitud del redondeo, considere la posibilidad de especificar todas las medidas en puntos enteros. Una pulgada es 72 puntos.
Grupos de filas y grupos de columna de informes
Los informes que incluyen grupos de filas o grupos de columnas contienen celdas vacías al exportarlos a Excel. En la imagen siguiente se muestra un informe que agrupa las filas en la distancia de viaje. Cada distancia puede contener más de un cliente.
Al exportar el informe a Excel, la distancia de desplazamiento solo aparece en una celda de la columna Distancia de desplazamiento . Al diseñar el informe, puede alinear el texto en la parte superior, central o inferior del grupo de filas. Esa alineación determina si el valor está en la primera, media o última celda del informe exportado. Las demás celdas de esa columna del grupo están vacías. La columna Nombre , que contiene nombres de cliente, no tiene celdas vacías.
En la imagen siguiente se muestra el informe después de exportarlo a Excel. Las celdas vacías están sombreadas en la imagen, pero ese sombreado no forma parte del informe exportado.
Después de exportar un informe que contenga grupos de filas o grupos de columnas a Excel, debe modificar el informe para poder mostrar los datos exportados en una tabla dinámica. Debe agregar el valor de grupo a las celdas de las que falta. A continuación, la hoja de cálculo se convierte en una tabla plana con valores en todas las celdas. En la imagen siguiente se muestra la hoja de cálculo actualizada.
Si crea un informe para el propósito específico de exportarlo a Excel para realizar un análisis adicional de los datos del informe, considere la posibilidad de no agrupar filas o columnas en el informe.
Representador de Excel
El código XML siguiente muestra el elemento de la extensión de representación de Excel en los archivos de configuración RSReportServer y RSReportDesigner:
<Extension Name="EXCELOPENXML" Type="Microsoft.ReportingServices.Rendering.ExcelOpenXmlRenderer.ExcelOpenXmlRenderer,Microsoft.ReportingServices.ExcelRendering"/>
El representador de Excel tiene los siguientes valores y límites predeterminados:
Propiedad | Valor |
---|---|
Número máximo de columnas por hoja de cálculo | 16 384 |
Número máximo de filas por hoja de cálculo | 1,048,576 |
Número de colores permitido en una hoja de cálculo | Aproximadamente 16 millones (color de 24 bits) |
Archivos comprimidos ZIP | Compresión ZIP |
Familia de fuentes predeterminada | Calibri |
Tamaño de fuente predeterminado | 11 puntos |
Alto de fila predeterminado | 15 puntos |
Dado que el informe establece explícitamente el alto de fila, el alto de fila predeterminado afecta solo a las filas que se ajustan automáticamente durante la exportación a Excel.
Elementos de informe en Excel
Al exportar un informe a Excel, los siguientes componentes se representan como un intervalo de celdas de Excel: subinformes, rectángulos, el cuerpo del informe y las regiones de datos. Los cuadros de texto, imágenes, gráficos, barras de datos, minigráficos, mapas, medidores e indicadores se representan en una celda de Excel. Pero esa celda podría combinarse con otras celdas. El diseño del resto del informe determina si se produce la combinación.
Las imágenes, gráficos, minigráficos, barras de datos, mapas, medidores, indicadores y líneas se colocan dentro de una celda de Excel, pero se encuentran encima de la cuadrícula de celdas. Las líneas se representan como bordes de las celdas.
Los gráficos, minigráficos, barras de datos, mapas, medidores e indicadores se exportan como imágenes. Los datos que representan no se exportan con ellos. Los datos no están disponibles en el libro de Excel a menos que los incluya en una columna o fila de una región de datos dentro de un informe.
Si desea trabajar con datos para gráficos, minigráficos, barras de datos, mapas, medidores e indicadores, puede exportar el informe a un archivo CSV o generar fuentes de datos compatibles con Atom desde el informe. Para obtener más información, consulte Exportación de un informe paginado a un archivo CSV (Generador de informes) y Generación de fuentes de distribución de datos a partir de informes (Generador de informes).
Tamaño de página
La extensión de representación de Excel usa la configuración de alto y ancho de página para determinar la configuración de papel de la hoja de cálculo de Excel. Excel intenta hacer coincidir los valores de las propiedades PageHeight
y PageWidth
con uno de los tamaños de papel más comunes.
Si no encuentra ninguna coincidencia, Excel usa el tamaño de página predeterminado para la impresora. La orientación se establece en Portrait
si el ancho de página es menor que el alto de la página. De lo contrario, la orientación se establece en Landscape
.
Nombres de las pestañas de las hojas de cálculo
Al exportar un informe a Excel, los saltos de página crean las páginas de informe y cada página se exporta a una hoja de cálculo diferente. Si proporciona un nombre de página inicial para el informe, la primera hoja de cálculo del libro de Excel tiene este nombre. Dado que cada hoja de cálculo de un libro debe tener un nombre único, se anexa un entero a partir de dos e incrementos por uno al nombre de página de cada hoja de cálculo. Por ejemplo, si el nombre de la página inicial es Informe de ventas por año fiscal, la segunda hoja de cálculo se denomina Informe de ventas por año fiscal (2). La tercera se denomina Informe de ventas por año fiscal (3) y así sucesivamente.
Si todas las páginas de informe creadas por saltos de página proporcionan nuevos nombres de página, cada hoja de cálculo tiene el nombre de página asociado. Pero si estos nombres de página no son únicos, las hojas de cálculo se denominan de la misma manera que los nombres de página iniciales. Por ejemplo, si el nombre de página de dos grupos es Sales for NW, una pestaña de hoja de cálculo tiene el nombre Sales for NW y la otra Sales for NW (2).
Si el informe no proporciona un nombre de página inicial o nombres de página para saltos de página, las pestañas de hoja de cálculo tienen los nombres predeterminados Sheet1, Sheet2, etc.
SSRS proporciona propiedades que puede establecer para informes, regiones de datos, grupos y rectángulos. Estas propiedades le ayudan a crear informes que puede exportar a Excel de una manera que desee. Para obtener más información, vea Paginación en informes paginados (Microsoft Generador de informes).
Propiedades del documento
El presentador de Excel escribe los metadatos siguientes en el archivo de Excel.
Propiedades del elemento de informe | Descripción |
---|---|
Creado | Fecha y hora de ejecución del informe como un valor de fecha y hora de ISO. |
Autor | Autor del informe |
Descripción | Descripción del informe |
LastSaved | Fecha y hora de ejecución del informe como un valor de fecha y hora de ISO. |
Encabezados y pies de página
La forma en que se representa el encabezado de página depende de la configuración de información SimplePageHeaders
del dispositivo:
- De forma predeterminada,
SimplePageHeaders
se establece en False. En este caso, el encabezado se representa en la cuadrícula de celdas de la hoja de cálculo de Excel, en la parte superior de esa cuadrícula. - Si
SimplePageHeaders
se establece en True, el encabezado se representa en la sección encabezado de hoja de cálculo de Excel.
El pie de página siempre se representa en la sección pie de página de hoja de cálculo de Excel, independientemente del valor de la SimplePageHeaders
configuración.
Debido a las limitaciones de Excel, los cuadros de texto son el único tipo de elemento de informe que se puede representar en las secciones de encabezado y pie de página de Excel.
Las secciones de encabezados y pies de página de Excel admiten un máximo de 256 caracteres, incluido el marcado. Si se supera este límite, el representador de Excel quita los caracteres de marcado que comienzan al final de la cadena de encabezado o pie de página para reducir el número de caracteres totales. Si se quitan todos los caracteres de marcado y la longitud sigue superando el máximo, la cadena se trunca a partir del final.
Configuración de SimplePageHeader
Cuando la configuración de información
SimplePageHeaders
del dispositivo se establece en False, las filas de la hoja de cálculo que contienen los encabezados se convierten en filas bloqueadas. Puede inmovilizar o movilizar el panel en Excel.Si la configuración de Excel para imprimir títulos está configurada para imprimir estas filas de encabezado, estos encabezados se imprimen en cada página de hoja de cálculo, excepto la hoja de portada del mapa del documento.
En el ventana Propiedades encabezado de página de Generador de informes:
- Si no se selecciona Imprimir en la primera página , el encabezado no se agrega a la primera página del informe.
- Si no se selecciona Imprimir en la última página , el encabezado no se agrega a la última página del informe.
Interactividad
En Excel se admiten algunos elementos interactivos. En las secciones siguientes se describe la interactividad.
Mostrar y ocultar
Hay limitaciones en la forma en que Excel administra los elementos de informe ocultos y mostrados cuando se exportan. Los grupos, las filas y las columnas que contienen elementos de informe que pueden expandirse y contraer se representan como esquemas de Excel. Pero Excel describe las filas y columnas expande y contrae las columnas en toda la fila o columna. Como resultado, los elementos de informe se pueden contraer que no están diseñados para contraerse. Además, los símbolos de esquematización de Excel pueden quedar desordenados con contornos superpuestos.
Para solucionar estos problemas, la extensión de representación de Excel usa las siguientes reglas de esquematización:
El elemento de informe que puede expandirse y contraerse más cercano a la esquina superior izquierda también puede expandirse y contraerse en Excel. Otros elementos de informe que comparten espacio vertical u horizontal con ese elemento superior izquierdo no se pueden expandir ni contraer en Excel.
Para determinar si una región de datos es contraíble por filas o columnas, se tiene en cuenta la posición de dos elementos:
- Elemento de informe que controla la visibilidad
- Región de datos que puede expandirse y contraerse
Las reglas que se aplican dependen de la posición relativa de estos dos elementos:
- Si el elemento que controla la visibilidad aparece encima o debajo del elemento que se expande y contrae, el elemento se puede contraer por filas.
- Si el elemento que controla la visibilidad aparece junto al elemento que se expande y contrae, el elemento es contraíble por columnas.
- Si el elemento que controla la visibilidad aparece la misma distancia por encima y junto al elemento que se expande y contrae, el elemento se puede contraer por filas.
Para determinar dónde se colocan los subtotales automáticos en el informe representado, la extensión de representación examina la primera instancia de un miembro dinámico. Si un miembro estático del mismo nivel aparece inmediatamente encima de él, se supone que el miembro dinámico es el subtotal. Los esquemas se establecen para indicar que estos datos son datos de resumen. Si no hay ningún elemento estático del mismo nivel de un miembro dinámico, la primera instancia de la instancia es el subtotal.
Debido a una limitación de Excel, los contornos solo se pueden anidar hasta siete niveles.
Mapa del documento
Si existen etiquetas de mapa de documentos en el informe, un mapa de documento se representa como una hoja de cálculo de portada de Excel. La hoja de cálculo se denomina Mapa de documentos y se encuentra en la primera posición de tabulación del libro.
La DocumentMapLabel
propiedad de un elemento o grupo de informe determina su etiqueta en el mapa del documento. Las etiquetas se muestran en el orden en que aparecen en el informe, comenzando en la primera fila, en la primera columna. A cada celda de etiqueta de mapa del documento se le aplica una sangría equivalente al número de niveles que aparece en el informe. Para representar cada nivel de sangría se sitúa la etiqueta en la columna siguiente. Excel admite hasta 256 niveles de anidamiento de esquema.
El esquema del mapa del documento se representa como un esquema de Excel que se puede contraer. La estructura de esquema coincide con la estructura anidada del mapa del documento. El estado de expansión y contracción del esquema se inicia en el segundo nivel.
El nodo raíz del mapa es el nombre del informe o su nombre de archivo sin la extensión .rdl. Ese nombre no es interactivo.
El representador usa una fuente Arial de 10 puntos para los vínculos de mapa del documento.
Vínculos de obtención de detalles
Un vínculo de obtención de detalles que aparece en un cuadro de texto se representa como un hipervínculo de Excel en la celda en la que se representa el texto. Un vínculo de obtención de detalles de una imagen o gráfico se representa como un hipervínculo de Excel en la imagen. Al seleccionar un vínculo de obtención de detalles, se abre el explorador predeterminado del cliente y se dirige a la vista HTML del destino.
Hipervínculos
Un hipervínculo que aparece en un cuadro de texto se representa como un hipervínculo de Excel en la celda en la que se representa el texto. Un hipervínculo para una imagen o gráfico se representa como un hipervínculo de Excel en la imagen. Al seleccionar un hipervínculo, se abre el explorador predeterminado del cliente y va a la dirección URL de destino.
Ordenación interactiva
En Generador de informes, puede seleccionar botones en un informe para cambiar el orden en que las tablas y matrices muestran filas y columnas. Excel no admite este tipo de ordenación interactiva.
Marcadores
Un vínculo de marcador en un cuadro de texto se representa como un hipervínculo de Excel en la celda en la que se representa el texto. Un vínculo de marcador para una imagen o gráfico se representa como un hipervínculo de Excel en la imagen. Al seleccionar un marcador, va a la celda de Excel en la que se representa el elemento de informe marcado.
Cambio de informes en tiempo de ejecución
En algunos escenarios, necesita un informe para representar en varios formatos. Si no es posible crear un diseño de informe que represente la manera que desee en todos los formatos necesarios, puede usar el RenderFormat
valor global integrado. Al usar este valor, puede cambiar condicionalmente la apariencia del informe en tiempo de ejecución. De este modo, puede ocultar o mostrar elementos de informe, según el representador que use, para obtener los mejores resultados en cada formato. Para obtener más información, consulte Referencias a campos globales y de usuario integrados en un informe paginado (Report Builder).
Solución de problemas de exportación a Excel
Cuando se usa la cuenta de servicio virtual y la cuenta de ejecución, se puede producir un error en la exportación a Excel. En concreto, se puede denegar el acceso a la clave del Registro.
Para solucionar este problema, puede conceder permiso de lectura a la cuenta de ejecución para la entrada del Registro afectada en la rama de cuenta de usuario virtual. Por ejemplo, una posible entrada del Registro es HKEY_USERS\S-1-5-80-4050220999-2730734961-1537482082-519850261-379003301\Software\Microsoft\Avalon.Graphics
. A continuación, debe reiniciar el equipo.