Quantcast
Channel: Imprimir Ticket de Venta en C#
Viewing all articles
Browse latest Browse all 4

Imprimir Ticket de Venta en C#

$
0
0

Hola gente! Les comento mi problema. Tengo una aplicación de escritorio desarrollada con Visual Studio con C#. La misma consiste en un sistema de venta para un comercio. El problema que tengo se me presenta al momento de querer enviar un ticket a la controladora fiscal (EPSON TM-U220 AFII), el cual contiene todo el detalle de venta.

La aplicación muestra el detalle de una determinada venta en un DataGridView (grdDetalleVenta). En el mismo formulario he incluido un control del tipo "EPSON_Impresora_Fiscal", cuyo nombre es "axPrinterFiscal". Luego, el usuario manda a imprimir el comprobante mediante el botón Imprimir, cuyo código es el siguiente:

        public void Imprimir()
        {
            Conexion cadena = new Conexion();
            consultar producto = new consultar();
            string iva = "2100";
            string venta = "M";
            string bultos = "0";
            string ImpuestosInternos = "0";
            string printer = "P";
            string texto = "SUB";
            string pago = "Efectivo";
            double calculoMonto = Convert.ToDouble(txtTotal.Text) * 100; //Obtiene el Monto Total de la Venta
            string monto = calculoMonto.ToString();
            string descripcion = "T";
            axPrinterFiscal2.PortNumber = 2; //Es el numero de puerto al cual está conectada la controladora fiscal (es este punto donde me da el error, ya que no identifica a ninguna impresora conectada a este puerto, el cual a su vez es un puerto USB en realidad)
            axPrinterFiscal2.BaudRate = "9600";
            axPrinterFiscal2.OpenTicket(); //Aquí ya me arroja un error del tipo "Hay error de Comunicación. Puede ser un Time OUT"

            for (int i = 0; i < grdDetalleVenta.Rows.Count; i++)
            {
                string sqlArticulo = "SELECT ISNULL(P.codigo + ' - ' + PE.nombre,'') FROM Producto P, Peso PE, DetalleVenta DV WHERE DV.idProducto=P.idProducto AND P.idPeso=PE.idPeso AND DV.idDetalleVenta="+ Convert.ToInt64(grdDetalleVenta.Rows[i].Cells[0].Value);
                string articulo = producto.conocerCampoRegistro(cadena.cadenaConexion.ToString(), sqlArticulo, "Error al conocer el nombre del Artículo");
                string sqlCantidad = "SELECT ISNULL(DV.cantidad,'') FROM DetalleVenta DV WHERE DV.idDetalleVenta=" + Convert.ToInt64(grdDetalleVenta.Rows[i].Cells[0].Value);
                string cantidad = (Convert.ToDouble(producto.conocerCampoRegistro(cadena.cadenaConexion.ToString(), sqlCantidad, "Error al conocer el nombre del Artículo")) * 1000).ToString();
                string sqlPrecioUnitario = "SELECT ISNULL(DV.precioUnitario,'') FROM DetalleVenta DV WHERE DV.idDetalleVenta=" + Convert.ToInt64(grdDetalleVenta.Rows[i].Cells[0].Value);
                string precioUnitario = (Convert.ToDouble(producto.conocerCampoRegistro(cadena.cadenaConexion.ToString(), sqlPrecioUnitario, "Error al conocer el precio unitario del Artículo")) * 100).ToString();
                string sqlSubtotal = "SELECT ISNULL(DV.subtotal,'') FROM DetalleVenta DV WHERE DV.idDetalleVenta=" + Convert.ToInt64(grdDetalleVenta.Rows[i].Cells[0].Value);
                string subtotal = (Convert.ToDouble(producto.conocerCampoRegistro(cadena.cadenaConexion.ToString(), sqlSubtotal, "Error al conocer el subtotal del Detalle")) * 100).ToString();
                axPrinterFiscal2.SendTicketItem(ref articulo, ref cantidad, ref precioUnitario, ref iva, ref venta, ref bultos, ref ImpuestosInternos);                
            }

            axPrinterFiscal2.GetInvoiceSubtotal(ref printer, ref texto);
            axPrinterFiscal2.SendTicketPayment(ref pago, ref monto, ref descripcion);
            axPrinterFiscal2.CloseTicket();
        }

Alguna sugerencia y/o ayuda al respecto? Desde ya, muy agradecido! Saludos.-



Viewing all articles
Browse latest Browse all 4

Latest Images

Pangarap Quotes

Pangarap Quotes

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC

Trending Articles


Imágenes de Robin Hood para colorear


Dino Rey para colorear


Libros para colorear


Mandalas de flores para colorear


Dibujos para colorear de perros


Toro para colorear


People Walk Away Quotes, Inspire Quotes


Long Distance Relationship Tagalog Love Quotes


Mr. Bolero Best Tagalog Quotes


RE: Mutton Pies (mely)


Pokemon para colorear


Winx Club para colorear


Girasoles para colorear


Sapos para colorear


Renos para colorear


Dromedario para colorear


Tagalog Sad Love Quotes – Lungkot


Love Quotes Tagalog


Tamis Ng tagumpay


Mga Tala sa “Unang Siglo ng Nobela sa Filipinas” (2009) ni Virgilio S. Almario





Latest Images

Pangarap Quotes

Pangarap Quotes

Vimeo 10.7.0 by Vimeo.com, Inc.

Vimeo 10.7.0 by Vimeo.com, Inc.

HANGAD

HANGAD

MAKAKAALAM

MAKAKAALAM

Doodle Jump 3.11.30 by Lima Sky LLC

Doodle Jump 3.11.30 by Lima Sky LLC