Parámetros de informes paginados en Report Builder
Se aplica a: SQL Server 2016 (13.x) Reporting Services y versiones posteriores SharePoint
Se aplica a: SQL Server 2016 (13.x) Reporting Services y versiones posteriores
En este artículo se describen los usos habituales de los parámetros de informes paginados, las propiedades que puede establecer y otros aspectos. Los parámetros de informe le permiten controlar datos de informe, conectar informes relacionados y cambiar la presentación de los informes. Puede usar los parámetros de informe en informes paginados que cree en Report Builder y Report Designer. También puede usar parámetros de informe en informes móviles que cree en el Publicador de informes móviles de Microsoft SQL Server. Para obtener más información, consulte Conceptos de parámetros de informes en informes paginados (Report Builder).
Nota:
El Publicador de informes móviles de SQL Server está en desuso para todas las versiones de SQL Server Reporting Services posteriores a SQL Server Reporting Services 2019. Se interrumpe a partir de SQL Server Reporting Services 2022 y Power BI Report Server.
Para obtener más información sobre cómo agregar un parámetro a un informe, vea Tutorial: Agregar un parámetro a un informe (Report Builder).
Usos comunes de los parámetros
Estos son algunos usos habituales de los parámetros:
- Controlar los datos con filtros que puede ajustar con una interfaz personalizable. Para obtener más información, consulte Control de datos de informes móviles y paginados.
- Conectar el informe principal con informes detallados que resuelven cada uno una pregunta específica. Para obtener más información, vea Conectar informes relacionados.
- Cambiar la presentación del informe ajustando la representación. Para obtener más información, vea Cambiar la presentación de los informes.
Control de datos de informes móviles y paginados
Report Builder y Report Designer proporcionan opciones para filtrar datos en función del tipo de datos que tenga:
Filtre los datos del informe paginado en el origen de datos; para ello escriba las consultas del conjunto de datos que incluyen variables.
Filtrar datos desde un conjunto de datos compartido Cuando se agrega un conjunto de datos compartido a un informe paginado, no se puede cambiar la consulta. En el informe, podrá agregar un filtro del conjunto de datos que incluya una referencia al parámetro de informe creado por usted.
Filtre los datos de un conjunto de datos compartido en un informe móvil de SQL Server. Para más información, vea Creación y publicación de informes móviles con el Publicador de informes móviles de SQL Server.
Permita a los usuarios especificar valores para personalizar los datos de un informe paginado. Por ejemplo, para proporcionar dos parámetros para la fecha de inicio y de finalización de los datos de ventas.
Conectar informes relacionados
Use parámetros para relacionar informes principales con informes detallados, subinformes e informes vinculados. Cuando se diseña un conjunto de informes, cada informe se puede diseñar de tal modo que responda a determinadas preguntas. Cada informe puede aportar un punto de vista o un nivel de detalle distinto sobre la información relacionada. Para ofrecer un conjunto de informes interrelacionados, cree parámetros para los datos relacionados en los informes de destino. Para obtener más información, vea Informes detallados en un informe paginado (Report Builder),Subinformes en informes paginados (Report Builder) yCrear un informe vinculado.
Personalizar conjuntos de parámetros para varios usuarios. Crear dos informes vinculados basados en un informe de ventas en el servidor de informes. Un informe vinculado usa valores de parámetros predefinidos para ccomerciales. El segundo informe vinculado usa valores de parámetros predefinidos para directores de ventas. Ambos informes utilizan la misma definición de informe.
Cambiar la presentación de los informes
Report Builder proporciona herramientas que puede usar para cambiar las presentaciones:
Para personalizar la representación de un informe, envíe comandos a un servidor de informes a través de una solicitud URL. Para obtener más información, vea Acceso URL (SSRS) y Pasar un parámetro de informe en una dirección URL.
Puede conceder a los usuarios la opción de especificar valores para que puedan personalizar la apariencia de un informe. Por ejemplo, proporcionar un parámetro Boolean para indicar si se expandirán o contraerán todos los grupos de filas anidadas de una tabla.
Puede conceder a los usuarios la opción de personalizar la apariencia y los datos del informe mediante la inclusión de parámetros en una expresión. Para obtener más información, consulte Referencias a la colección de parámetros en un informe paginado (Report Builder).
Visualización de un informe con parámetros
Al ver un informe que tiene parámetros, el panel Parámetros muestra todos los parámetros para que los usuarios puedan especificar valores de forma interactiva. En la siguiente imagen se muestra el panel Parámetros de un informe con los parámetros @ReportMonth, @ReportYear, @EmployeeID, @ShowAll, @ExpandTableRows, @CategoryQuota, y @SalesDate.
Panel Parámetros: el panel Parámetros muestra un mensaje y un valor predeterminado para cada parámetro. Puede personalizar el diseño de los parámetros. Para más información, vea Personalizar el panel de parámetros en un informe paginado (Report Builder).
Parámetro @SalesDate: el parámetro @SalesDate es de tipo de datos Date/Time. El mensaje Seleccionar fecha aparece junto al cuadro de texto. Para modificar la fecha, escriba una nueva en el cuadro de texto o utilice el control de calendario.
Parámetro @ShowAll: el parámetro @ShowAll es de tipo de datos Boolean. Utilice los botones de radio para especificar True o False.
Identificador Mostrar u ocultar área de parámetros: en la barra de herramientas del Visor de informes, seleccione esta flecha para mostrar u ocultar el panel Parámetros.
Parámetro @CategoryQuota: el parámetro @CategoryQuota es de tipo de datos Float, por lo que acepta un valor numérico. @CategoryQuota se establece para permitir varios valores.
Ver informe: después de introducir los valores de parámetros, seleccione Ver informe para ejecutar el informe. Si todos los parámetros poseen valores predeterminados, el informe se ejecuta automáticamente en la primera vista.
Creación de parámetros
Puede crear parámetros de informe de varias formas:
- Use una consulta de conjunto de datos con variables o procedimientos almacenados que contengan parámetros. Para obtener más información, vea Consulta de conjunto de datos o procedimiento almacenado con parámetros.
- Cree un parámetro de forma manual. Para obtener más información, vea Crear un parámetro de forma manual.
- Agregue un elemento de informe que contenga referencias a un parámetro. Para obtener más información, vea Elemento de informe con un parámetro.
Nota:
No todos los orígenes de datos son compatibles con los parámetros.
Consulta de conjunto de datos o procedimiento almacenado con parámetros
Agregue una consulta de conjunto de datos que contenga variables o un procedimiento almacenado de conjunto de datos que contenga parámetros de entrada. Los parámetros de conjunto de datos se crean para cada variable o parámetro de entrada y los parámetros de informe se crean para cada parámetro de conjunto de datos.
En esta imagen del Generador de informes se muestra lo siguiente:
Parámetros de informe del panel Datos del informe.
El conjunto de datos con los parámetros.
Panel Parámetros.
Los parámetros enumerados en el cuadro de diálogo Propiedades del conjunto de datos.
El conjunto de datos se puede incrustar o compartir. Cuando se agrega un conjunto de datos compartido a un informe, los parámetros de conjunto de datos que están marcados como internos no se pueden invalidar en el informe. Podrá invalidar parámetros de conjunto de datos que no estén marcados como internos.
Para obtener más información, vea Consulta de conjunto de datos.
Crear un parámetro de forma manual
Cree un parámetro manualmente en el panel Datos del informe. Puede configurar parámetros de informe para que un usuario pueda especificar de forma interactiva valores que le permitan a personalizar el contenido o la apariencia de un informe. También puede configurar los parámetros de informe para que un usuario no pueda cambiar los valores preconfigurados.
Nota:
Dado que los parámetros se administran de forma independiente en el servidor, al volver a publicar un informe principal con la nueva configuración de los parámetros no se sobrescribe la configuración de los parámetros existente en el informe.
Elemento de informe con un parámetro
Nota
Los elementos de informe están en desuso para todas las versiones de SQL Server Reporting Services a partir de SQL Server Reporting Services 2019 y todas las versiones de Power BI Report Server a partir de la versión de Power BI Report Server de septiembre de 2022.
Agregue un elemento de informe que contenga referencias a un parámetro o a un conjunto de datos compartido que contenga variables.
Los elementos de informe se almacenan en el servidor de informes y están disponibles para que otros usuarios los utilicen en sus informes. Los elementos de informe que representan parámetros no se pueden administrar en el servidor de informes. Puede buscar parámetros en la Galería de elementos de informe. Después de agregarlos, puede configurarlos en el informe. Para más información, consulte Elementos de informe (Generador de informes y SSRS).
Nota:
Los parámetros se pueden publicar como elemento de informe independiente para las regiones de datos que tienen conjuntos de datos dependientes con parámetros. Aunque los parámetros se enumeren como elemento de informe, no puede agregar un parámetro de elemento de informe directamente a un informe. En lugar de ello, agregue el elemento de informe y los parámetros de informe necesarios se generan automáticamente a partir de las consultas de conjunto de datos que se encuentran en el elemento de informe, o a las que este hace referencia. Para más información sobre los elementos de informe, vea Elementos de informe (Generador de informes y SSRS) y Elementos de informe en el Diseñador de informes (SSRS).
Valores de parámetros
A continuación, se presentan las opciones para seleccionar valores de parámetro en el informe:
Seleccione un único valor de parámetro de la lista desplegable.
Seleccione varios valores de parámetro en la lista desplegable.
Seleccione un valor de la lista desplegable para un parámetro, el cual determina los valores que están disponibles en la lista desplegable para otro parámetro. Estos valores son parámetros en cascada. Los parámetros en cascada le permitirán filtrar sucesivamente los valores de parámetro para reducir los miles de valores posibles a un número más fácil de manejar.
Para más información, vea Agregar parámetros en cascada a un informe paginado (Report Builder).
Ejecute el informe sin tener que seleccionar un valor de parámetro porque ya existe un valor predeterminado para el parámetro.
Propiedades de parámetros de informe
Puede cambiar las propiedades de los parámetros de informe con el cuadro de diálogo Propiedades del informe. En la siguiente tabla se resumen las propiedades que se pueden establecer para cada parámetro:
Propiedad | Descripción |
---|---|
Nombre | Introduzca un nombre de parámetro con distinción de mayúsculas y minúsculas. El nombre debe comenzar con una letra y puede tener letras, números o un carácter de subrayado (_). El nombre no puede tener espacios. En el caso de los parámetros generados automáticamente, el nombre coincide con el parámetro en la consulta de conjunto de datos. De forma predeterminada, los parámetros creados manualmente son similares a ReportParameter1. |
Prompt | El texto que aparece junto al parámetro en la barra de herramientas del Visor de informes. |
Tipo de datos | Un parámetro de informes debe ser de uno de los siguientes tipos de datos: Booleano. El usuario selecciona True o False en un botón de opción. Fecha y hora. El usuario selecciona una fecha en un control de calendario. Entero. El usuario introduce valores en un cuadro de texto. Flotante. El usuario introduce valores en un cuadro de texto. Texto. El usuario introduce valores en un cuadro de texto. Cuando se definen los valores disponibles para un parámetro, el usuario elige valores en una lista desplegable, aunque el tipo de datos sea DateTime. Para obtener más información acerca de los tipos de datos de informe, vea RDL Data Types. |
Permitir valor en blanco | Seleccione esta opción si el valor del parámetro puede ser una cadena vacía o estar en blanco. Si especifica valores válidos para un parámetro y quiere que uno de ellos esté en blanco, deberá incluirlo como uno de los valores que especifique. Al seleccionar esta opción no se incluye automáticamente un espacio en blanco en los valores disponibles. |
Permitir valor NULL | Seleccione esta opción si el valor del parámetro puede ser un valor null. Si especifica valores válidos para un parámetro y quiere que uno de ellos sea null, deberá incluir null como uno de los valores que especifique. Al seleccionar esta opción no incluye automáticamente un valor null en los valores disponibles. |
Permitir varios valores | Proporcione los valores disponibles para crear una lista desplegable que permita realizar selecciones a los usuarios. Utilice esta propiedad para asegurarse de que solo se enviarán valores válidos en una consulta de conjunto de datos. Seleccione esta opción si el valor del parámetro puede ser varios valores que se muestran en una lista desplegable. No se permiten valores null. Cuando esta opción está seleccionada, se agregan casillas a la lista de valores disponibles en una lista desplegable de parámetros. La parte superior de la lista incluye una casilla para Seleccionar todo. Los usuarios pueden activar los valores que desean usar. Si los datos que proporcionan valores cambian rápidamente, podría darse el caso de que la lista que ve el usuario no sea la más actualizada. |
Visible | Seleccione esta opción si desea mostrar el parámetro de informe en la parte superior del informe al ejecutarse. Esta opción permite a los usuarios seleccionar los valores de los parámetros en tiempo de ejecución. |
Hidden | Seleccione esta opción si desea ocultar el parámetro de informe en el informe publicado. Los valores del parámetro de informe pueden continuar estableciéndose en una dirección URL de informe, en una definición de suscripción o en el servidor de informes. |
Interno | Seleccione esta opción para ocultar el parámetro de informe. En el informe publicado, el parámetro de informe solamente podrá verse en la definición de informe. |
Valores disponibles | Si especifica valores disponibles para un parámetro, los valores válidos aparecerán siempre como una lista desplegable. Por ejemplo, si proporciona valores disponibles para un parámetro DateTime, aparecerá una lista desplegable con las fechas en el panel Parámetros, en lugar de un control de calendario. Puede establecer una opción en el origen de datos para utilizar una transacción única para todas las consultas de los conjuntos de datos que estén asociadas a un origen de datos. Esta opción garantiza que la lista de valores sea coherente entre el informe y los subinformes. Nota de seguridad En cualquier informe que incluya un parámetro del tipo de datos Texto, asegúrese de utilizar una lista de valores disponibles (también conocida como lista de valores válidos) y asegúrese de que los usuarios que ejecuten el informe tengan solo los permisos necesarios para ver los datos en el informe. Para obtener más información, consulte Seguridad (Generador de informes). |
Valores predeterminados | Establezca los valores predeterminados a partir de una consulta o de una lista estática. Los informes se ejecutan de forma automática en la primera vista cuando cada parámetro de informe tiene un valor predeterminado. |
Avanzado | Establecer el atributo de definición de informe UsedInQuery, un valor que indica si este parámetro afecta directa o indirectamente a los datos de un informe. Determinar automáticamente cuándo actualizar Elija esta opción si desea que el procesador de informes determine una configuración para este valor. El valor es True si el procesador de informes detecta una consulta de conjunto de datos con una referencia directa o indirecta a este parámetro o si el informe tiene subinformes. Actualizar siempre Elija esta opción cuando el parámetro de informes se utilice directa o indirectamente en una consulta de conjunto de datos o una expresión de parámetro. Esta opción establece UsedInQuery en True. No actualizar nunca Elija esta opción cuando el parámetro de informe no se use directa o indirectamente en una expresión de consulta o parámetro de conjunto de datos. Esta opción establece UsedInQuery en False. Precaución Use No actualizar nunca con precaución. En el servidor de informes, UsedInQuery se utiliza para ayudar a controlar las opciones de memoria caché para los datos de los informes y para los informes representados, y opciones de parámetros para instantáneas de informe. Si establece No actualizar nunca de manera incorrecta podría provocar que los datos de informes o los informes incorrectos se almacenen en memoria caché o provocar que una instantánea de informe tenga datos incoherentes. Para más información, vea Lenguaje RDL (Report Definition Language) (SSRS). |
Consulta de conjunto de datos
Para filtrar los datos en la consulta de conjunto de datos, incluya una cláusula de restricción que limite los datos recuperados; para ello, deberá especificar los valores que se van a incluir o excluir del conjunto de resultados.
Use el diseñador de consultas para el origen de datos para generar una consulta con parámetros.
Para las consultas de Transact-SQL, los diferentes orígenes de datos admiten una sintaxis diferente para los parámetros. La compatibilidad varía para los parámetros que se identifican en la consulta por su posición o los que se identifican por su nombre. Para obtener más información, vea los artículos relacionados con los tipos de orígenes de datos externos específicos en Conjuntos de datos de informe (SSRS). En el diseñador de consultas relacional, debe seleccionar la opción de parámetro de un filtro para crear una consulta parametrizada. Para obtener más información, vea Interfaz de usuario del Diseñador de consultas relacionales (Report Builder).
Puede especificar si se va a crear un parámetro basado en un filtro que especifique en el diseñador de consultas. Puede especificarlo en las consultas basadas en un origen de datos multidimensionales, como Microsoft SQL Server Analysis Services, SAP NetWeaver BI o Hyperion Essbase. Para obtener más información, vea el artículo sobre el diseñador de consultas en Herramientas de diseño de consulta (SSRS) que se corresponda con la extensión de datos.
Administración de parámetros para un informe publicado
Cuando diseñe un informe, los parámetros de informe se guardarán en la definición de informe. Cuando diseñe un informe, los parámetros de informe se guardarán y administrarán por separado, no con la definición de informe.
En un informe publicado, puede usar las siguientes herramientas:
Propiedades de los parámetros de informe: cambie directamente los valores de los parámetros de informe en el servidor de informes independientemente de la definición del informe.
Informes en memoria caché: para crear un plan de memoria caché para un informe, cada parámetro debe tener un valor predeterminado. Para más información, vea Informes en caché (SSRS).
Conjuntos de datos compartidos en memoria caché: para crear un plan de memoria caché para un conjunto de datos compartido, cada parámetro debe tener un valor predeterminado. Para más información, vea Informes en caché (SSRS).
Informes vinculados: puede crear informes vinculados con valores de parámetro preestablecidos para filtrar datos para los distintos destinatarios. Para obtener más información, consulte Crear un informe vinculado.
Suscripciones de informe: puede especificar valores de parámetro para filtrar datos y entregar informes mediante suscripciones. Para más información, consulte Suscripciones y entrega (Reporting Services).
Acceso URL: puede especificar valores de parámetro en una dirección URL a un informe. También puede ejecutar informes y especificar valores de parámetro mediante el acceso desde una dirección URL. Para obtener más información, consulte Acceso URL (SSRS).
Las propiedades de los parámetros para un informe publicado se conservan al volver a publicar la definición del informe. Si se vuelve a publicar la definición del informe como el mismo informe y no se modifican los nombres de los parámetros ni los tipos de datos, se conserva la configuración de las propiedades. Es posible que deba cambiar las propiedades de parámetros en el informe publicado si agrega o elimina parámetros de la definición del informe. O bien, es posible que tenga que cambiar las propiedades para cambiar el tipo de datos o el nombre de un parámetro existente.
No todos los parámetros pueden modificarse siempre que se desea. Si un parámetro de informe obtiene un valor predeterminado de una consulta de conjunto de datos, ese valor no se puede modificar para un informe publicado. Tampoco se puede modificar en el servidor de informes. El valor utilizado en tiempo de ejecución se determina cuando se ejecuta la consulta. Si usa parámetros basados en expresiones, se determina cuando se evalúa la expresión.
Las opciones de ejecución del informe pueden incidir en el modo en que se procesan los parámetros. Un informe que se ejecute como instantánea no puede utilizar parámetros obtenidos de una consulta excepto si la consulta incluye valores predeterminados para los parámetros.
Parámetros de una suscripción
Puede definir una suscripción para un informe a petición o para una instantánea y especificar los valores de parámetro que se usarán durante el procesamiento de la suscripción.
Informe a petición: para un informe a petición, puede especificar un valor de parámetro diferente que el valor publicado para cada parámetro indicado en el informe. Por ejemplo, supongamos que tiene un informe de llamadas de servicio que utiliza un parámetro Período de tiempo para devolver las solicitudes de atención al cliente para el día, la semana o el mes actual. Si el valor de parámetro predeterminado para el informe se establece en hoy, la suscripción puede usar un valor de parámetro diferente (como semana o mes) para producir un informe que contenga cifras semanales o mensuales.
Instantánea: para una instantánea, la suscripción debe usar los valores de parámetro definidos para la instantánea. La suscripción no puede reemplazar un valor de parámetro que se haya definido para una instantánea. Por ejemplo, supongamos que se va a suscribir a un informe de ventas para la región occidental que se ejecuta como instantánea de un informe, y la instantánea especifica Occidental como valor de parámetro regional. En este caso, si crea una suscripción a este informe, debe utilizar el valor de parámetro Occidental en la suscripción. Para proporcionar una indicación visual de que se omite el parámetro, los campos de parámetros de la página de suscripción se establecen en campos de solo lectura.
Las opciones de ejecución del informe pueden incidir en el modo en que se procesan los parámetros. Los informes con parámetros que se ejecuten como instantáneas de informes utilizan los valores de parámetro definidos para la instantánea de informes. Los valores de parámetro se definen en la página Propiedades de parámetros del informe. Un informe que se ejecute como instantánea no puede utilizar parámetros obtenidos de una consulta excepto si la consulta incluye valores predeterminados para los parámetros.
Si cambia un valor de parámetro en la instantánea de un informe después de que se haya definido la suscripción, el servidor de informes la desactiva. La desactivación de la suscripción indica que el informe se ha modificado. Para activarla, abra y guarde la suscripción.
Nota:
Las suscripciones controladas por datos pueden utilizar valores de parámetros que se obtienen a partir de un origen de datos de suscriptores. Para obtener más información, vea Usar un origen de datos externo para obtener información de los suscriptores (suscripción controlada por datos).
Para más información, consulte Suscripciones y entrega (Reporting Services).
Parámetros y asegurar datos
Sea precavido cuando se distribuyan informes con parámetros que contengan información confidencial o delicada. Un usuario puede reemplazar fácilmente un parámetro de informe con un valor diferente y, sin pretenderlo, provocar la divulgación de la información.
Una alternativa segura al uso de parámetros para los datos de los empleados o el personal es seleccionar datos que se basen en expresiones que incluyan el campo UserID de los campos integrados. UserID proporciona un método de obtener la identidad del usuario que ejecuta el informe y utiliza esa identidad para recuperar datos específicos de usuario.
Importante
En cualquier informe que incluya un parámetro del tipo de Cadena, utilice una lista de valores disponibles (que también se conoce como una lista de valores válidos) y de que los usuarios que ejecuten el informe solo tengan los permisos necesarios para ver los datos del informe. Cuando se define un parámetro de tipo String, el usuario ve un cuadro de texto que admite cualquier valor. Una lista de valores disponibles limita los valores que se pueden especificar. Si el parámetro de informe está asociado a un parámetro de conjunto de datos y no se utiliza una lista de valores disponibles, un usuario del informe podría introducir sintaxis SQL en el cuadro de texto y exponer el informe y el servidor a un ataque por inyección de código SQL. Si el usuario tiene permisos suficientes para ejecutar la nueva instrucción SQL, podría provocar resultados no deseados en el servidor.
Si un parámetro de informe no está asociado a un parámetro de conjunto de datos y los valores de parámetro están incluidos en el informe, un usuario del informe podría introducir sintaxis de expresiones o una dirección URL en el valor de parámetro y representar el informe en Excel o HTML. Si después otro usuario ve el informe y selecciona el contenido del parámetro representado, el usuario podría ejecutar accidentalmente el script o el vínculo malintencionados.
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.