Ordenar datos en un informe

Actualizado: 14 de abril de 2006

Los datos de cada una de las regiones de datos (tablas, matrices y listas) pueden ordenarse por campos y expresiones. La capacidad de ordenación se agrega a un informe antes de publicarlo. Puede configurar un informe para que admita ordenación por parte del usuario final, permitiendo así a los usuarios cambiar de forma interactiva el orden mientras ven un informe. Como alternativa, puede utilizar parámetros para ordenar datos u ordenar los datos durante el procesamiento de los mismos especificando una cláusula ORDER BY en la consulta.

Ordenar de manera interactiva

Puede establecer propiedades en encabezados de columna para proporcionar ordenación interactiva en un informe publicado. La ordenación se especifica a través de propiedades de cuadro de texto. Puede especificar ordenación para varias columnas de la misma tabla, lista o matriz, así como para datos anidados o agrupados.

Para especificar ordenación interactiva

  1. Haga clic con el botón secundario en un encabezado de columna (por ejemplo, una columna de un encabezado de tabla) y seleccione Propiedades para abrir el cuadro de diálogo Propiedades del cuadro de texto.
  2. Haga clic en la ficha Ordenación interactiva.
  3. Seleccione Agregar una acción de ordenación interactiva a este cuadro de texto.
  4. Para especificar una expresión de ordenación, seleccione el campo que corresponda a la columna para la que va a definir una acción de ordenación (por ejemplo, para un encabezado de columna denominado "Title", elija =Fields!Title.Value). Es preciso especificar una expresión de ordenación.
  5. Seleccione la región de datos y el ámbito de la ordenación. Este paso determina si la acción de ordenación se aplica a todas las regiones de datos de un informe, está limitada a la región de datos que contiene el cuadro de texto o su ámbito es otro conjunto de regiones de datos que elija.
  6. Haga clic en Aceptar.

Para comprobar la acción de ordenación, puede mostrar una vista previa del informe. Las columnas que admiten ordenación interactiva tienen iconos de flecha para indicar el orden. Para alternar entre el orden ascendente y el descendente, haga clic en el encabezado de columna.

Ordenación con parámetros

Pueden utilizarse parámetros de informe para ordenar los datos de un informe basándose en la información especificada por el usuario mediante un parámetro para cambiar las propiedades de ordenación de una región de datos. También existen varios métodos para suministrar el parámetro al informe.

Ordenar en una región de datos, conjunto de datos y agrupación

Es posible suministrar un valor de parámetro a una expresión de ordenación de una región de datos, conjunto de datos o agrupación. Por ejemplo, se podría cambiar la expresión de ordenación de la tabla Product del informe de manera que se ordene por nombre o precio de producto.

El parámetro de este ejemplo se denomina SortOrder y contiene una lista de los valores disponibles: Name y ListPrice. Estos valores se corresponden con los campos de la lista de campos. El parámetro también incluye el valor predeterminado Name, por lo que el informe, cuando se ejecuta, ordena los productos por nombre de manera predeterminada. Para obtener información acerca de parámetros de informe, vea Trabajar con parámetros en Reporting Services.

[!NOTA] Los valores de la lista de valores disponibles deben ser los nombres de los campos de la lista de campos, no los nombres de las columnas de la base de datos. Aunque en muchos casos estos nombres son similares, en realidad pueden tener diferencias. Si va a ordenar una agrupación, puede especificar un orden en valores agregados. No se permite ordenación con valores agregados para conjuntos o regiones de datos.

La expresión de ordenación de la tabla Product del informe incluye el parámetro SortOrder. La siguiente expresión, cuando se utiliza en la expresión de ordenación, ordena los datos de la tabla por el valor del parámetro de informe SortOrder.

=Fields(Parameters!SortOrder.Value).Value

Usar acciones de dirección URL para ordenar columnas de informe

Si crea un parámetro y lo utiliza como en los ejemplos anteriores, el usuario verá un cuadro de lista en el que podrá elegir el valor del parámetro. Cuando el usuario ejecute el informe, los datos se ordenarán por el valor elegido. Sin embargo, en lugar de proporcionar un cuadro de lista, se puede incluir una flecha arriba o abajo en la que el usuario haga clic para ordenar los datos. Para ello, agregue una acción de dirección URL al cuadro de texto que contenga el texto donde desea que el usuario haga clic; por ejemplo, el cuadro de texto de un encabezado de columna.

La siguiente expresión, cuando se utiliza en una acción de dirección URL, proporciona un vínculo que ordena los datos de la tabla por precio listado. Para crear la dirección URL, se utilizan propiedades globales que se basan en la ubicación del informe en el servidor de informes cuando se ejecuta. Esto es útil si no se sabe en qué lugar del servidor va a estar el informe. También se incluye un parámetro que desactiva la barra de herramientas. Así se ocultan las listas de parámetros y los controles de la página.

= Globals!ReportServerUrl & "?" & Globals!ReportFolder & "/" & Globals!ReportName & "&SortOrder=ListPrice&rc:Toolbar=false"

[!NOTA] Este vínculo sólo funciona después de que se publica el informe en un servidor de informes. Si se utiliza en la vista previa del Diseñador de informes, los resultados pueden ser imprevisibles.

Para obtener información acerca del uso de acciones de dirección URL, vea Agregar vínculos a un informe. Para obtener información acerca de la construcción de una dirección URL que ejecute un informe, vea URL Access.

Vea también

Tareas

Cómo ordenar los datos de una tabla (Diseñador de informes)
Cómo ordenar datos en una matriz (Diseñador de informes)
Cómo ordenar datos en una lista (Diseñador de informes)

Conceptos

Trabajar con regiones de datos

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

14 de abril de 2006

Contenido modificado:
  • Se actualizó la consulta para que funcione con AdventureWorks en lugar de AdventureWorks2000.