1. Entorno
- SQL Server 2008
- Visual Studio 2008
2. Introducción
Continuando con el tutorial del sistemas de ventas con C#, ahora crearemos el reporte con Crystal Report que nos mostrara el documento creado producto de la venta que hemos realizado. Como este es un tutorial con un fin didáctico, para crear el reporte nosotros escribiremos el código auto generado por la inserción de la venta, aunque lo ideal seria que desde la capa de negocios obtengamos el código que se genero y se muestre el reporte de forma automática.
3. Desarrollo
3.1. Diseño del formulario
Ahora debemos de modificar nuestro formulario que hemos creado anteriormente que se llamaba frmRegistrarVenta. Si recordamos este formulario tenia un Tab Control con dos pestañas, una que se llamaba Registrar y otro que se llama Reporte. Y justo en esta ultima pestaña es donde vamos a poner nuestro reporte. Para poder mostrar los reportes en C#, debemos de agregar un componente que se llama CrystalReportViewer que se encuentra en nuestro cuadro de herramientas en el grupo de Informe
Y luego en nuestro formulario hacemos el siguiente diseño
3.2. Creando nuestro DataSet
Para poder crear un reporte para Crystal Reporte, lo primero que se tiene que hacer es crear un DataSet en donde se almacenara todo nuestro datos de la consulta y nos servira para llenar nuestro reporte y para eso les prepare el siguiente video para que puedan crear un DataSet de la manera mas rápida y sencilla.
3.3. Creando nuestro Reporte en Crystal Report
Ahora debemos de diseñar nuestro reporte con la información que obtenemos de nuestro DataSet que hemos creado anteriormente, para eso también les prepare otro vídeo.
El reporte al final debería tener el siguiente diseño
3.4. Código Fuente
Ahora nos vamos a ir al evento clic del botón "btnReporte" de nuestro formulario "frmRegistrarVenta" y pondremos el siguiente código fuente
private void btnReporte_Click(object sender, EventArgs e) { try { //Creamos el documento CrystalDecisions.CrystalReports.Engine.ReportDocument rpt=new CrystalDecisions.CrystalReports.Engine.ReportDocument(); //Obtenemos el documento que se encuentra en nustra carpeta bin\debug\crReporte.rpt rpt.Load( Application.StartupPath + "\\crReporte.rpt"); //Lleanamos el reporte con la información que obtenemos de la base de datos rpt.SetDataSource(NegVenta.ObtenerVenta(Convert.ToInt32(this.txtCodigoVenta.Text))); //Establecemos los datos al reporte this.crvReporte.ReportSource=rpt; //Refrescamos nuestro reporte this.crvReporte.RefreshReport(); } catch (Exception ex) { } }
No hay comentarios.:
Publicar un comentario