1. Universidad Gerardo Barrios
Facultad de Ciencia y Tecnología
Fecha:
27/10/16
Practica 8: Creación de Reportes
Programación Computacional I
Objetivos:
Utilizar CrystalReport para crear reportes.
Agregar control ReportViewer para contener reportes
Desarrollo Teórico.
CRYSTAL REPORT
Crystal Reports es un producto de alta tecnología para la creación e integración de reportes con
datos provenientes de múltiples fuentes de datos.
Crystal Reports es una herramienta potente y a la vez fácil de usar para el diseño y generación
de informes a partir de datos almacenados en una base de datos u otra fuente de información.
Es, con diferencia, la herramienta más popular en su categoría, y no solo entre quienes podrían
considerarse sus usuarios puros (aquellos que necesitan obtener periódicamente información
para la toma de decisiones a partir de los datos de la empresa), sino también entre los
programadores, que lo han convertido en su herramienta favorita a la hora de embeber
capacidades de generación de informes dentro de las aplicaciones a medida. A este último hecho
indudablemente ha contribuido mucho el que, desde hace más de diez años, Crystal Reports
venga siendo incorporado de serie a las herramientas de desarrollo de Microsoft (Visual Basic y
luego Visual Studio).
Arquitectura. Componentes principales
La arquitectura de Crystal Reports.NET gira alrededor del soporte para un tipo de ficheros de
formato propietario, que se distingue por la extensión .RPT (report) y en el que se almacena la
definición de los informes. El producto se puede ver como la combinación de tres componentes
principales, que son:
Motor de Impresión (Crystal Reports Print Engine, CRPE): A pesar de lo que su nombre
sugiere, este componente, escrito en código no administrado, no sólo se encarga de lo
relacionado con la impresión en papel de los informes, sino además con todo lo que
tiene que ver con la ejecución de los mismos, empezando por el acceso a la base de
datos para leer la información y continuando con la generación de la imagen de las
diferentes páginas para luego volcarlas en pantalla, papel o exportarlas a otros formatos
como Adobe PDF o Microsoft Word.
2. Librerías de Código Manejado: Encapsulan la funcionalidad del Motor de Impresión a
través de un conjunto de clases fácilmente accesibles desde aplicaciones escritas en
Visual Basic, C# o cualquier otro lenguaje .NET. Estas son las librerías que se utilizaran
desde las aplicaciones o servicios (para Windows o la Web) para cargar, ejecutar e
imprimir los informes.
Diseñador de Informes: Es el software que presenta la interfaz de usuario a través de la
cual un usuario, programador o no, puede crear (“diseñar”) un informe y guardarlo en
un fichero .RPT para su posterior reutilización. Se trata de una aplicación sofisticada,
repleta de potentes asistentes que garantizan una alta productividad sin limitar las
posibilidades. La versión del Diseñador que incluye Crystal Reports.NET se integra
perfectamente dentro de Visual Studio 2005, permitiendo creando una experiencia aún
más ágil y productiva.
Características
Creación de Reportes de Alta Productividad
El más completo acceso a datos: Crystal Reports provee más opciones de conectividad
a datos que cualquier otra herramienta. Incluye más de 30 drivers para acceso a bases
de datos relacionales, fuentes de datos XML y cubos OLAP (Incluyendo sistemas ERP,
CRM, Oracle, IBM DB2 y Microsoft SQL Server). También puede acceder a datos
personalizados a través de JavaBeans y objetos COM (ADO record sets) para una
conectividad más flexible.
Diseño integral y opciones de formato: La tecnología flexible de diseño de Crystal
Reports provee control completo sobre el acceso y la presentación de los datos en los
reportes. Posee más de 100 opciones de formato, incluyendo parámetros, mapas, tablas
cruzadas, gráficos e hipervínculos, para incrementar el impacto de los reportes. También
se incluyen más de 160 formulas, funciones y operadores para un control completo de
la presentación de los datos.
Productividad: El nuevo Repositorio Crystal permite almacenar elementos clave de los
reportes, tales como objetos de texto, imágenes, sentencias SQL y funciones
personalizadas. Gracias a este repositorio central se puede reutilizar estos objetos en
múltiples reportes. Este almacén centralizado de objetos permite minimizar los
esfuerzos de mantenimiento de los reportes y al mismo tiempo ser más productivo en
el diseño de reportes nuevos.
De la misma manera, se puede crear plantillas corporativas para ser aplicadas a todos
los reportes y así evitar dar formato una y otra vez a cada uno de los nuevos reportes
que se cree.
Flexibilidad en Integración e Interacción
La interacción y acceso a los datos que sus usuarios demandan: Crystal Reports habilita
la visualización e interacción con los reportes a través de una amplia variedad de
dispositivos y entornos. Incluye los Report Parts (fracciones de reporte) o el soporte para
Smart Tags en Office XP, para proveer acceso, navegación e interacción con los reportes
3. vía portales web, documentos de Microsoft Office o dispositivos inalámbricos. Los
visores Web avanzados habilitan a los usuarios finales para realizar búsquedas dentro
de los datos de un reporte y exportarlas posteriormente a Microsoft Excel, Word y
páginas HTML con el vínculo dinámico al reporte original. Adicionalmente, el reporte
completo puede ser exportado a una variedad de formatos incluyendo XML, PDF, HTML
y Microsoft Excel.
La flexibilidad y el control que usted necesita: Con flexibles SDKs (Software
Development Kits) para aplicaciones .NET, Java y COM y controles para que incluso el
usuario final pueda hacer cambios a los reportes, Crystal Reports habilita la estrecha
integración tanto en aplicaciones Cliente/Servidor como en aplicaciones Web.
Nuevas características
Crystal Reports XI continúa desarrollando su tecnología de reportes para satisfacer las
necesidades y desafíos de los analistas de negocio y desarrolladores. Más de 50 nuevas
características y mejoras han sido desarrolladas en esta nueva versión, entre las que se
destacan:
Control SQL: Permite editar las sentencias SQL directamente para un control ilimitado
sobre la conectividad con la base de datos.
Repositorio: Permite almacenar objetos de reporte clave en una librería centralizada,
para ser reutilizados en otros reportes.
Report Application Server: Servicio de procesamiento de reportes basado en Web, para
realizar integración de contenido dinámico en aplicaciones Web empresariales.
SDKs para .NET, Java y COM: Permite crear aplicaciones utilizando cualquier plataforma
de desarrollo y controlando la visualización, interacción y modificación de los reportes
en tiempo de ejecución.
Licencias de publicación Web flexibles: Capacidades de procesamiento en cola, que
hacen a un mejor aprovechamiento de las licencias.
Ventajas
Crystal Reports permite:
Transformar rápidamente cualquier fuente de datos en contenido interactivo.
Integrar estrechamente capacidades de diseño, modificación y visualización en
aplicaciones .NET, Java o COM.
Permitir a los usuarios finales acceder e interactuar con los reportes a través de portales
Web, dispositivos móviles y documentos de Microsoft Office.
4. REPORT VIEWER
Existen varias formas de insertar un informe en .NET (ReportViewer, Crystal Reports, o SQL
Server Reporting Services), pero a lo largo de este curso nos vamos a centrar en cómo hacerlo
mediante el componente ReportViewer.
COMPONENTE REPORTVIEWER
El componente ReportViewer se va a encargar de contener nuestro informe, el cual podremos
cargar tanto dinámica, como estáticamente. Para insertar un ReportViewer, basta con ir al
cuadro de herramientas y arrastrarlo en nuestro formulario.
El control Web del visor de informes requiere un System.Web.UI.ScriptManager en el formulario
Web, ya que internamente, el control utiliza llamadas Ajax para generar el informe. Por esa
razón, además del ReportViewer, agregaremos un control Script manager.
5. Propiedades de ReportViewer.
Entre las propiedades del ReportViewer podemos destacar las siguientes:
SizeToReportContent: Determina si el área del informe tiene un tamaño fijo o si
equivale al tamaño del contenido del informe.
Propiedades de la categoría “Barra de herramientas”: Hace que se muestre u oculte
cualquier botón del ReportViewer (flechas de navegación, botón imprimir,…).
AsyncRendering: Determina si el informe se representa asincrónicamente a partir del
resto de la página.
Enlazar con un informe.
Para enlazar el objeto ReportViewer con un informe, deberemos de darle a la pestaña superior
derecha del objeto y asignarle el informe.
6. Desarrollo Práctico.
Antes de iniciar a trabajar en visual es necesario descargar ConnectorODBC para conectar bases
de datos MySQL.
CONFIGURAR CONECTOR ODBC DE MYSQL EN WINDOWS 32 Y 64 BITS
Para poder conectar algunas aplicaciones desde un Windows a una BBDD de MySQL
necesitamos un conector ODBC que podemos encontrar en la propia web.
http://dev.mysql.com/downloads/connector/odbc/
La razón de instalar la versión de 32 o 64 bits no es el sistema operativo que tenemos de base,
sino la aplicación que conectará con MySQL.
Es decir si tenemos un Windows 64 bits y queremos conectar el Access 2013 de 64 bits
necesitaremos el conector ODBC de 64 bits, pero si por el contrario tenemos Windows 64 bits y
Access 2013 de 32 bits necesitaremos el conector ODBC de 32 bits.
En mi caso instalaré el conector ODBC de 64 bits.
8. Una vez instalado ya podemos crear las conexiones ODBC:
Windows 8
Para configurar la conexión ODBC tenemos que ir a la carpeta “C:WindowsSysWOW64” y
ejecutar el archivo “odbcad32.exe”
Agregaremos un nuevo ODBC y seleccionaremos el que acabamos de instalar de “MySQL ODBC
5.2 ANSI Driver”
9. En este paso configuraremos la conexión del servidor y la BBDD que necesitemos. Crearemos
una conexión ODBC por cada BBDD que queramos conectar.
Una vez muestre el mensaje de conexion selecciona la base de datos a la cual realizara la
conexion.
Ahora nos aparece nuestro Origen de datos que hemos creado.
11. 2. Se abrirá el asistente del crystalreport
Seleccione el formato estándar.
3. En mis conexiones aparecerá la conexión que acabamos de crear con MYSQL
CONNECTOR, sino aparece debera buscarla en
Le pedirá que escriba el nombre del usuario de la base de datos.
12. Al darle clic en finalizar se mostrará de la siguiente manera:
13. 4. Seleccione la tabla de la cual realizar el reporte para el ejemplo la base de datos solo
contiene una tabla, seleccionar la tabla alumno y clic en siguiente.
5. En la siguiente ventana le pide que seleccione los campos a mostrar.
14. Para el ejemplo mostraremos todos los campos, quedaría de la siguiente manera:
Clic en finalizar.
6. Al finalizar se mostrará el diseño del reporte, el cual usted podrá modificar.
15. Agregar el control CrystalReportViewer.
1. Agregue un nuevo formulario a la aplicación
2. En el nuevo formulario, arrastre el control Crystal ReportViewer
3. Por el momento el reporte no se ha llenado con datos, ejecute la aplicación visualizar
el informe.
4. Para llenar el reporte lo puede realizar de dos maneras:
Desde el diseñador
17. Creando Código.
Guardar el proyecto y ejecutar el programa, si aparece el siguiente error:
Clic en el botón aceptar.
18. Es necesario configurar el archivo App.config para que pueda ejecutarse.
Agregar la siguiente línea:
El archivo quedara asi:
Guarde los cambios y ejecute nuevamente, visualizara el siguiente reporte: