Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Esta visita guiada muestra cómo crear un informe para un sitio web de Microsoft Visual Studio 2008 ASP.NET y cómo agregar un control ReportViewer a una página web de manera que los usuarios puedan ver el informe.
Requisitos previos
Para usar esta visita guiada, debe tener acceso a la base de datos de ejemplo AdventureWorks. Para obtener más información, vea Visita guiada: Instalar la base de datos AdventureWorks.
También debe tener acceso a un servidor que ejecute Microsoft Internet Information Services (IIS) versión 5.0 o posterior con permisos para crear una página web de ASP.NET.
Lleve a cabo los siguientes pasos en su equipo para utilizar plantillas de Visual Studio 2008 en la creación de una página web de ASP.NET con un control ReportViewer configurado para ver el informe creado. En este ejemplo, creará la aplicación en Microsoft Visual Basic.
Cree un nuevo sitio web.
En el menú Archivo, seleccione Nuevo y haga clic en Sitio web.
En el cuadro de diálogo Nuevo sitio web, seleccione Sitio web de ASP.NET.
En la lista Idioma, elija Visual Basic y haga clic en Aceptar.
En el cuadro Ubicación, seleccione HTTP si aún no está seleccionado y, a continuación, haga clic en Examinar para desplazarse a una nueva carpeta.
En el cuadro de diálogo Seleccionar ubicación, haga clic en IIS local y desplácese al directorio raíz del sitio web.
Haga clic en el botón Crear nueva aplicación Web para crear una nueva carpeta y escriba un nombre. Presione ENTRAR.
Haga clic en Abrir.
Haga clic en Aceptar.
Se abre el proyecto del sitio web y muestra la página web Default.aspx.
En el Explorador de soluciones, compruebe que Default.aspx está resaltada.
En el menú Ver, haga clic en Diseñador.
Ahora está listo para modificar la página predeterminada del sitio web.
Para definir una conexión de datos y DataTabl, agregue un DataSet.
En el menú Sitio web, seleccione Agregar nuevo elemento.
En Agregar nuevo elemento, haga clic en DataSet. Haga clic en Agregar. Cuando se le pregunte si desea agregar el elemento a la carpeta App_Code, haga clic en Sí. De este modo, se agrega un nuevo archivo XSD DataSet1.xsd al proyecto, se abre el Diseñador de DataSet y se invoca al Asistente para la configuración de TableAdapter.
En la página Elegir la conexión de datos, si ha instalado AdventureWorks utilizando SQLExpress, es posible que vea una conexión de datos existente sqlexpress.AdventureWorks.dbo que podrá seleccionar; a continuación, vaya al paso 6. En caso contrario, haga clic en Nueva conexión.
En el cuadro de diálogo Orígenes de datos, seleccione Microsoft SQL Server (cliente SQL).
En el cuadro de diálogo Nombre de servidor, escriba el nombre del servidor en el que se ubica la base de datos de ejemplo AdventureWorks. Por ejemplo, el nombre de la instancia predeterminada de SQL Server Express es (local)\sqlexpress. Una vez introducido el nombre del servidor, seleccione AdventureWorks en la lista desplegable de bases de datos y haga clic en Aceptar.
Haga clic en Siguiente.
En la página Guardar cadena de conexión en el archivo de config. de la aplicación, escriba el nombre de la cadena de conexión o acepte el valor predeterminado AdventureWorksConnectionString. Haga clic en Siguiente.
En la página Elija un tipo de comando, seleccione Usar instrucciones SQL. Asegúrese de que los otros botones de opción no están seleccionados.
En la página Escriba una instrucción SQL, escriba la siguiente consulta Transact-SQL para recuperar datos de la base de datos AdventureWorks y haga clic en Finalizar. También puede hacer clic en el botón Generador de consultas y utilizar el Generador de consultas para crear la consulta y comprobarla con el botón Ejecutar consulta.
SELECT d.Name as Dept, s.Name as Shift, e.EmployeeID as EmployeeID FROM (HumanResources.Department d INNER JOIN HumanResources.EmployeeDepartmentHistory e ON d.DepartmentID = e.DepartmentID) INNER JOIN HumanResources.Shift s ON e.ShiftID = s.ShiftIDSi la consulta no devuelve los datos esperados, es posible que esté utilizando una versión anterior de AdventureWorks. Para obtener más información acerca de la instalación de la versión de SQL Server 2005 de AdventureWorks, vea Visita guiada: Instalar la base de datos AdventureWorks.
En la página Elija los métodos que se van a generar, acepte los valores predeterminados de Rellenar un DataTable con Nombre de método: Fill y Devolver un DataTable con Nombre de método: GetData. Haga clic en Siguiente.
En la página Resultados del asistente, haga clic en Finalizar.
Ha completado la configuración de DataTable de ADO.NET como origen de datos del informe.
En la página Diseñador de DataSet de Visual Studio, debería ver el DataTable que agregó (el nombre predeterminado es DataTable1), con la enumeración de las columnas resultantes de la definición de consulta. En el menú Datos, puede seleccionar Vista previa de datos y, a continuación, hacer clic en el botón Vista previa para comprobar los resultados de la consulta.
Diseñe el informe.
En el menú Sitio web, seleccione Agregar nuevo elemento.
En el cuadro de diálogo Agregar nuevo elemento, seleccione la plantilla Informe, escriba un nombre para el archivo de informe y, a continuación, haga clic en Agregar. De este modo, se crea un archivo de definición de informe (el predeterminado es Report.rdlc), se abre el Diseñador de informes y se muestra el panel Orígenes de datos de sitios Web.
Abra el Cuadro de herramientas. Haga clic en un cuadro de texto y, a continuación, en la superficie de diseño del informe.
Escriba el título del informe en el cuadro de texto: N.º de empleados por turno y por departamento. Expanda el cuadro de texto si fuera necesario.
Desde el Cuadro de herramientas, arrastre un elemento de informe Matriz al informe, debajo del cuadro de texto. El fondo blanco punteado es la página del informe. Para ajustar la ubicación de la matriz en la página, haga clic en la esquina izquierda para seleccionarla y arrastre o utilice las teclas de dirección para mover el elemento según sea necesario.
En la ventana Orígenes de datos de sitios Web, expanda el nodo DataTable1 hasta que vea las columnas de la consulta. Arrastre el campo Dept al cuadro de texto Filas de la segunda fila de la primera columna de la matriz.
Arrastre el campo Shift al cuadro de texto Columnas de la primera fila de la segunda columna de la matriz. Mientras está seleccionado el cuadro de texto, en la ventana Propiedades, establezca la propiedad TextAlign en Right. Haga clic en el cuadro de texto para activar la barra de herramientas Formato del informe y haga clic en el botón Negrita.
Seleccione la matriz haciendo clic en cualquier lugar de ésta. Haga clic con el botón secundario y seleccione el nombre de la matriz (el nombre predeterminado es matrix1). Aparecerá un borde alrededor del elemento de informe de matriz. Haga clic con el botón secundario en dicho borde y seleccione Propiedades. Compruebe que el título del cuadro de diálogo que aparece es Propiedades de la matriz.
Haga clic en la ficha Grupos. En la sección Columnas, haga clic en Editar.
En el cuadro de diálogo Ordenar y agrupar, haga clic en la ficha Ordenación.
Haga clic en el primer cuadro debajo de Expresión para activar el cuadro de texto. En la lista desplegable, elija =Fields!Dept.Value. Esta operación garantiza que los datos del informe se ordenarán por nombre de departamento. Haga clic en Aceptar.
Haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades de la matriz.
En la ventana Orígenes de datos de sitios Web, arrastre el campo EmployeeID al cuadro de texto Datos de la segunda fila de la segunda columna de la matriz. Haga clic con el botón secundario en este cuadro de texto y seleccione Expresión.
Edite la función de agregado Sum predeterminada y cámbiela a Count. Haga clic en Aceptar.
Haga clic en Aceptar para cerrar el cuadro de diálogo Propiedades del cuadro de texto.
En el menú Archivo, seleccione Guardar todo.
Agregue un control ReportViewer a la aplicación.
En el Explorador de soluciones, haga clic con el botón secundario en Default.aspx y seleccione Ver diseñador.
Abra la ventana del Cuadro de herramientas. En el grupo Datos, arrastre un control ReportViewer a la página.
Si aún no está abierto, abra el panel de etiquetas inteligentes Tareas de ReportViewer; para ello, haga clic en el triángulo de la esquina superior izquierda del control ReportViewer, en la página web. En el cuadro Elegir informe, seleccione el nombre completo para Report.rdlc.
Cuando seleccione un informe, se crearán automáticamente las instancias de orígenes de datos que se utilizan en el informe. El código se genera para crear instancias de cada DataTable (y su contenedor DataSet) y un control ObjectDataSource correspondiente a cada origen de datos utilizado en el informe. Este control de origen de datos se configura automáticamente.
Nota |
|---|
Para comprender por qué ASP.NET utiliza un control ObjectDataSource y no un control SqlDataSource, aun cuando el origen de datos subyacente puede ser una base de datos u otro almacenamiento de datos de escritura contundente, vea Crear orígenes de datos para un informe. |
Genere y ejecute la aplicación.
Presione CTRL+F5 para ejecutar la página sin depuración o F5 para ejecutarla con depuración.
Como parte del proceso de generación, se compila el informe y se agregan a la Lista de tareas todos los errores encontrados (como los errores de sintaxis en las expresiones utilizadas en el informe).
La página web aparece en el explorador. El control ReportViewer muestra el informe. Puede utilizar la barra de herramientas para examinar el informe, ampliar o reducir la visualización y exportar a Excel.
Cierre el explorador.
Vea también
Referencia
Microsoft.Reporting.WinForms.ReportViewer.Drillthrough
Microsoft.Reporting.WinForms.LocalReport.SubreportProcessing
Microsoft.Reporting.WebForms.ReportViewer.Drillthrough
Microsoft.Reporting.WebForms.LocalReport.SubreportProcessing
Conceptos
Utilizar el panel de etiquetas inteligentes Tareas de ReportViewer
Nota