Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NET
1. Resultado Final del Reporte, Diseo de Factura en Crystal Reports.
2. Requisitos: Visual Studio 200X, x=5, 8, 10, 12 Crystal Reports Microsoft SQL Server 200X, x=5,8,12 Pasos: Agregamos un nuevo elemento Crsytal Reports, al proyecto, de tipo Reporting.
Realizamos el diseo de la Factura: Como se podr observar necesitamos dos procedimientos almacenados, una para recuperar datos referente al detalle y el otro para recuperar datos referente a la factura. Se agregan los campos respectivos y se da el formato que mejor se ajuste a sus necesidades.
Como se habrn podido dar cuenta, necesitamos algunos parmetros de entrada, como el nmero de factura y a partir de l, poder generar los datos referente al pedido gestionado. Tambien necesitamos mostrar el total a pagar, el igv, el subtotal y el total a pagar pero en letras. Para ello es necesario crear parametros en Crystal Reports.
Ahora mostramos el contenido de los procedimientos almacenados Procedimiento para listar los detalles de una determinada factura.
Procedimiento para listar los datos de una determinada factura. Los campos @LETRAS, @MONTO1,@MONTO2,@MONTO3,
Ahora
agregamos
un
nuevo
formulario,
el
cual
tendr
un
objeto
CrystalReportViewer.
Imports CrystalDecisions.CrystalReports.Engine Imports CrystalDecisions.Shared Public Class FrmRptFactura Public MiCod_fact, V_Venta, IGV, Total, NumeroLetras As String Private Sub FrmRptFactura_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.crvFactura.ReportSource = Nothing 'pasando el Cdigo de Venta ingresado a una variable discreta Dim Cod_fact As New ParameterDiscreteValue Dim M_IGV As New ParameterDiscreteValue Dim M_VVenta As New ParameterDiscreteValue Dim M_Total As New ParameterDiscreteValue Dim M_NumLetras As New ParameterDiscreteValue Cod_fact.Value = MiCod_fact.ToString M_VVenta.Value = V_Venta.ToString M_IGV.Value = IGV.ToString M_Total.Value = Total.ToString M_NumLetras.Value = NumeroLetras.ToString 'en la variable tabla se mostrara el resultado final 'del reporte. Dim tabla As New ParameterFields Dim temp As ParameterField temp = New ParameterField temp.CurrentValues.Add(Cod_fact) temp.ParameterFieldName = "@num_fact" tabla.Add(temp) temp = New ParameterField temp.CurrentValues.Add(M_VVenta) temp.ParameterFieldName = "@MONTO1" tabla.Add(temp) temp = New ParameterField temp.CurrentValues.Add(M_IGV)
temp.ParameterFieldName = "@MONTO2" tabla.Add(temp) temp = New ParameterField temp.CurrentValues.Add(M_Total) temp.ParameterFieldName = "@MONTO3" tabla.Add(temp) temp = New ParameterField temp.CurrentValues.Add(M_NumLetras) temp.ParameterFieldName = "@LETRAS" tabla.Add(temp) Me.crvFactura.ReportSource = New ReporteFactura Me.crvFactura.ParameterFieldInfo = tabla End Sub End Class
Ahora lo invocamos al formulario que tiene el reporte. Esto lo hacemos desde el formulario GestionPedidos o desde consulta de facturas.
Private Sub Btn_Imprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Imprimir.Click FrmRptFactura.MiCod_fact = num_fact.ToString FrmRptFactura.V_Venta = Me.lbl_vVenta.Text FrmRptFactura.IGV = Me.lbl_Igv.Text FrmRptFactura.Total = Me.lbl_pVenta.Text FrmRptFactura.NumeroLetras = Me.lbl_numletras.Text FrmRptFactura.Show() End Sub
Realizamos una prueba, para verificar si el reporte est funcionando correctamente. Accedemos al sistema, para poder realizar el pedido a un determinado cliente. Nos pide ingresar el usuario y la contrasea. De ser estas credenciales correctas, accedemos al sistema. Este usuario ser el vendedor.
Estando y en el sistema, procedemos a generar el nuevo pedido. Para el cliente identificado con DNI:20123422
Guardamos el pedido.
Ahora mandamos a generar la factura la con nmero 55 y posteriormente realizar el pago. Ya podemos imprimir o exportar a cualquier formato. (pdf, xls)