Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - alturito51@gmail.com

Páginas: [1]
1
Visual Basic .NET / C# / Re:Ayuda Impresión con Print Document
« en: Abril 05, 2015, 06:41:01 pm »
Amigos buenas tardes ya tengo casi solucionado este temita, el código:

Código: (vb) [Seleccionar]
    Private Sub GenerarFactura(ByVal IdFactura As Integer, ByVal CantLineas As Integer)
        Factura.DocumentName = "FAC" & IdFactura
        Dim Alto As Integer = 390 + (CantLineas * 15)
        Dim Tamaño As New Printing.PaperSize("Factura", 291, Alto)
        Factura.DefaultPageSettings.PaperSize = Tamaño
        Factura.PrinterSettings.DefaultPageSettings.Margins.Top = 10
        Factura.PrinterSettings.DefaultPageSettings.Margins.Bottom = 5
        Factura.PrinterSettings.DefaultPageSettings.Margins.Left = 5
        Factura.PrinterSettings.DefaultPageSettings.Margins.Right = 5

        AddHandler Factura.PrintPage, AddressOf prt_PrintPage

        Factura.Print()
    End Sub

    Private Sub prt_PrintPage(ByVal sender As Object, ByVal e As PrintPageEventArgs)

        Dim fontTitulo As New Font("Arial", 14, FontStyle.Bold)
        Dim fontEncabezado As New Font("Arial", 9, FontStyle.Regular)
        Dim fontCuerpo As New Font("Arial", 8, FontStyle.Regular)
        Dim fontTituloColumna As New Font("Arial", 8, FontStyle.Bold)

        Dim FormatoCentro As New StringFormat
        FormatoCentro.Alignment = StringAlignment.Center
        FormatoCentro.LineAlignment = StringAlignment.Center
        Dim FormatoIzquierda As New StringFormat()
        FormatoIzquierda.Alignment = StringAlignment.Near
        FormatoIzquierda.LineAlignment = StringAlignment.Center
        Dim FormatoDerecha As New StringFormat()
        FormatoDerecha.Alignment = StringAlignment.Far
        FormatoDerecha.LineAlignment = StringAlignment.Center

        Dim Parrafo As Rectangle
        Parrafo = New Rectangle(0, 5, 291, 16)
        e.Graphics.DrawString("DICO S.A.", fontTitulo, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 20, 291, 12)
        e.Graphics.DrawString("Distribuidora y Comercializadora", fontEncabezado, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 35, 291, 12)
        e.Graphics.DrawString("de Oriente S.A.", fontEncabezado, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 50, 291, 12)
        e.Graphics.DrawString("Finca El Oasis, La Fragua, Zacapa", fontEncabezado, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 65, 291, 12)
        e.Graphics.DrawString("Nit: 8027636-9", fontEncabezado, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 80, 291, 12)
        e.Graphics.DrawString("Tel: 50168594", fontEncabezado, Brushes.Black, Parrafo, FormatoCentro)

        Parrafo = New Rectangle(0, 105, 291, 12)
        e.Graphics.DrawString("RES:2007-1-28-18731", fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 120, 291, 12)
        e.Graphics.DrawString("DE FECHA: 21/03/2014", fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 135, 291, 12)
        e.Graphics.DrawString("VALE", fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 150, 291, 12)
        e.Graphics.DrawString("SERIE: " & vSerie & " NO. " & vIdVenta, fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(0, 165, 291, 12)
        e.Graphics.DrawString("FECHA EMISION: " & lblFecha.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)

        Parrafo = New Rectangle(0, 190, 291, 12)
        e.Graphics.DrawString("CODIGO: " & FrmPDV.txtCodigo.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(0, 205, 291, 12)
        e.Graphics.DrawString("NIT: " & FrmPDV.lblNit.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(0, 220, 291, 12)
        e.Graphics.DrawString("NOMBRE:", fontCuerpo, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(0, 235, 291, 12)
        e.Graphics.DrawString(FrmPDV.lblNombre.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoIzquierda)

        Parrafo = New Rectangle(0, 260, 50, 15)
        e.Graphics.DrawString("CANT.", fontTituloColumna, Brushes.Black, Parrafo, FormatoCentro)
        Parrafo = New Rectangle(50, 260, 175, 15)
        e.Graphics.DrawString("DESCRIPCION", fontTituloColumna, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(225, 260, 50, 15)
        e.Graphics.DrawString("COSTO", fontTituloColumna, Brushes.Black, Parrafo, FormatoDerecha)

        Dim Linea As Integer = 275

        Dim CantLinea As Integer = 0
        For n As Integer = 0 To FrmPDV.ListView1.Items.Count - 1
            Parrafo = New Rectangle(0, Linea + (n * 15), 50, 12)
            e.Graphics.DrawString(FrmPDV.ListView1.Items(n).SubItems(1).Text, fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
            Parrafo = New Rectangle(50, Linea + (n * 15), 175, 12)
            e.Graphics.DrawString(FrmPDV.ListView1.Items(n).SubItems(2).Text, fontCuerpo, Brushes.Black, Parrafo, FormatoIzquierda)
            Parrafo = New Rectangle(225, Linea + (n * 15), 50, 12)
            e.Graphics.DrawString(FormatNumber(FrmPDV.ListView1.Items(n).SubItems(4).Text), fontCuerpo, Brushes.Black, Parrafo, FormatoDerecha)
            CantLinea = (n * 15)
        Next

        Linea += CantLinea + 10
        Parrafo = New Rectangle(225, Linea, 50, 12)
        e.Graphics.DrawString("---------------", fontCuerpo, Brushes.Black, Parrafo, FormatoDerecha)
        Linea += 10
        Parrafo = New Rectangle(50, Linea, 175, 15)
        e.Graphics.DrawString("TOTAL", fontTituloColumna, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(225, Linea, 50, 12)
        e.Graphics.DrawString(lblMonto.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoDerecha)
        Linea += 15
        Parrafo = New Rectangle(50, Linea, 175, 15)
        e.Graphics.DrawString("EFECTIVO", fontTituloColumna, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(225, Linea, 50, 12)
        e.Graphics.DrawString(txtPago.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoDerecha)
        Linea += 15
        Parrafo = New Rectangle(50, Linea, 175, 15)
        e.Graphics.DrawString("VUELTO", fontTituloColumna, Brushes.Black, Parrafo, FormatoIzquierda)
        Parrafo = New Rectangle(225, Linea, 50, 12)
        e.Graphics.DrawString(lblVuelto.Text, fontCuerpo, Brushes.Black, Parrafo, FormatoDerecha)

        Linea += 50
        Parrafo = New Rectangle(0, Linea, 291, 12)
        e.Graphics.DrawString("- - - - - SUJETO A PAGOS TRIMESTRALES - - - - -", fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        Linea += 15
        Parrafo = New Rectangle(0, Linea, 291, 12)
        e.Graphics.DrawString("GRACIAS POR SU COMPRA, VUELVA PRONTO", fontCuerpo, Brushes.Black, Parrafo, FormatoCentro)
        e.HasMorePages = False
    End Sub


La Ticket me queda rebien, el problema es que ahora me imprime varios documentos en ves de solo uno, igual necesito ayuda si alguien puede hecharme la mano muy agradecido.




hola mil disculpa, necesito tu ayuda, me gustaria saber si ya resolviste este problema? y si ya lo hiciste pues me ayude y me facilite

Páginas: [1]