hace poco menos de un mes no tenia ni mi3rd4 de idea de lo que eran los CrystalReports que de ahora en adelante llamare CrysRep....
para decirte que no sabia que los CrysRep no eran producto de la Microsoft, y por si no lo sabías, dejame decirte que los CrysRep son un producto ajeno a bi$$gates.
Sino me crees, date una vuelta por el site
www.businessobjects.com
Con esto empiezo a abrirte los ojos a lo que es el mundo de los CrysRep.
Verás que trabajar con los CrysRep es bien mamado, y me baso en la teoría del Huevo de Colón.... con esto no digo que es fácil porque alguien me enseño... lo digo porque así quedaras luego de leer el post!
Ya entrando en materia, en este apartado te explicare como trabajar con los CrysRep ver 10 en vb.Net 2005
requisitos:
el Visual Basic .Net 2005 en español, con el componente CrysRep Instalado por supuesto.
una base de Datos relacional.
y lo más importante
La necesidad de crear un Reporte!!!!- Crea un proyecto nuevo del tipo "Aplicacion para Windows"
para trabajar adecuadamente, (ojo con la palabra adecuada, porque siempre se puede de otra forma....) necesitas conectar tu proyecto de vb.Net a tu data, por medio del menú Herramientas (vb.Net) - Conectar con base de Datos... eso para crear un Esquema de tu Data..
Esto te creara un DataSet con todas las tablas que tu desees.
A lo que me referia con la palabra adecuadamente, es que una opción es crear tu esquema a patita, pero date cuenta que es mas facil ocupar los famosos Asistentes a los que microsoft nos tiene acostumbrados a ir creando un DataTable con todos los campos uno por uno.... pero en fin it's your desicion
- va ahora agregas un frm a tu proyecto... tu te llamaras frmReportes.
- en el agregas un control CrystalReportViewer.... tu te llamaras objViewer
- al objViewer le asignas la propiedad "Dock" a Fill pa que te ocupte todo el espacio del frm
- agrega un nuevo elemento a tu proyecto, del tipo CrystalReport,... tu te llamaras objCrystal
ojo que cuando hayas agregado el objCrystal te aparecera un asistente que te preguntará si queres hacer uno en Blanco, con Asistente o duplicar uno que ya creaste....
Primero vamos a seleccionar uno en blanco. (mas adelante ocuparemos el asistente....)
con esto te crea un CrysRep en blanco y te debe aparecer en la parte izquierda una ventana acoplable llamada "Explorador de Campos".
ahi, donde dice "Campos de Base de Datos" da clic derecho y luego "Asistente de Base de Datos"---"ADO.Net DataSets" aqui te deben aparecer las tablas de tu esquema... sino pos tas frito...
seleccionas la tabla de la que quieres el reporte... ojo ahorita solo agrega una... vamos a ir despacio...
- Aceptar
ahora en el Explorador de Campos debe de aparecer tu tabla con todos sus campos.
- Agrega los campos de tu tabla que queras mostrar en el reporte a la Seccion3(Detalles) del ObjCrystal
CrysRep le pondra los nombres de los campos automaticamente (gonitos los CrysRep)
ahora, el codigo.
en las declaraciones declara 3 cosas
- la conexion
- un dataSet
- un dataAdapter
- en el load del frmReportes vas a setear tu conexión... esto me lo voy a saltar porque es otor pisto....
luego abrir la conexion, vamos a crear la consulta... podes crear una consulta con algun criterio, todo de depende de tu Data.
- la vas a Abrir con el dataAdapter
(dataAdapter("select * from nombre_tabla", my_conexion)
- Llenas tu dataSet con el resultado de tu consulta, logicamente vas a consultar a la tabla que agregaste al Explorador de Campos...
(dataAdapter.fill(dataSet,"nombre_tabla")
- seteas el dataSource de tu objCrystal con el dataSet
objCrystal.SetDataSource(dataSet)
- refrescas tu objCrystal
objCrystal.Refresh
- al objViewer le seteas tu objCrystal
frmReporte.objViewer.ReportSource = objCrystal
ahora presiona F5 y veamos si furula.....
si todo salio bien... te pregunto ¿como se ve vo?
como ya es noche... mañana te sigo contando lo que tu mama no te dijo de los CrystalReport pero esta vez de un reporte con Corte de Control o llamado también Maestro - Detalle