' Mybusiness POS v. 2011
Sub Main()                 
    ' Realizado para Irving Hernandez
    ' Creamos el recordSet del encabezado de la venta
    Set rstEncabezado = Rst("SELECT * FROM ventas WHERE venta = " & prn.Documento, Ambiente.Connection )
    ' Verificamos que la venta que se desea imprimir exista
    if rstEncabezado.EOF Then
       MsgBox "No existe la venta seleccionada",vbInformation
       Exit Sub
    end if 
    ' Creamos el recordSet de las partidas que componen la venta
    Set rstPartidas = Rst("SELECT partvta.iespecial, partvta.articulo, prods.precio1,prods.descrip, partvta.precio, partvta.cantidad, partvta.descuento, partvta.impuesto, partvta.preciobase, partvta.prdescrip FROM partvta INNER JOIN prods ON prods.articulo = partvta.articulo WHERE venta =" & rstEncabezado.fields("Venta"), Ambiente.Connection )
    ' Traemos todos los datos del cliente
    Set rstCliente = Rst("SELECT * FROM clients WHERE cliente = '" & rstEncabezado.fields("Cliente") & "'", Ambiente.Connection )
    ' Traemos los datos de cobranza si es que existe
    Set rstCobranza = Rst( "SELECT * FROM cobranza WHERE venta = " & rstEncabezado("venta"), Ambiente.Connection )
    cSalida = "" 
    
    'Esto abre el cajon de dinero
    if Ambiente.rstEstacion("Cajon") <> 0 Then 
       cSalida = cSalida & Chr(27) & Chr(112) & Chr(48) & Chr(20) & Chr(20) 
       cSalida = cSalida & Chr(7)
       ' Sansung de inyección
       ' cSalida = cSalida & Chr(27) & Chr(112) & Chr(48) & Chr(49)
    end if
    Set rstTextTicket = CreaRecordSet( "SELECT * FROM tickettext", Ambiente.Connection )
    If rstTextTicket.EOF Then
       cSalida = cSalida & "" & Ambiente.Empresa & Chr(13) & Chr(10)
       cSalida = cSalida & "" & Trim( Ambiente.Direccion1 ) & Chr(13) & Chr(10)
       cSalida = cSalida & "" & Trim( Ambiente.Direccion2 ) & Chr(13) & Chr(10)
       cSalida = cSalida & "" & Trim( Ambiente.Telefonos ) & Chr(13) & Chr(10)
    Else
       cSalida = cSalida & rstTextTicket("textheader")
    End If
    cSalida = cSalida & "" & Trim( rstEncabezado("Usuario") ) & " " & Trim( Ambiente.Estacion ) & " Ticket: " & rstEncabezado("No_referen") & Chr(13) & Chr(10)
    cSalida = cSalida & Formato( rstEncabezado("f_emision"),"dd-MM-yyyy" ) & " Hora: " & rstEncabezado("usuHora") & Chr(13) & Chr(10)
    cSalida = cSalida & Trim( rstCliente("cliente") ) & " " & Trim( rstCliente("Nombre") ) & Chr(13) & Chr(10)
    cSalida = cSalida & Ambiente.rstEstacion("leyendacomodin") & " " & rstEncabezado("comodin") & Chr(13) & Chr(10)
    cSalida = cSalida & "Vendedor: " & rstEncabezado("Vend") & Chr(13) & Chr(10)
    cSalida = cSalida & "CANT.         PRECIO  IMPORTE" & Chr(13) & Chr(10)
    nImporteTotal = 0
    nImpuesto = 0
    nCantidadTotal = 0     
    nDescuentoTotal = 0
    nImporteOrigen = 0
    'PrintText cSalida
    If Ambiente.Tag <> "HTML" Then
  
       If Ambiente.rstEstacion("ticket") <> 0 Then
          if clAt( "LPT", Ambiente.rstEstacion("pticket") ) > 0 Then
             Out Trim(Ambiente.rstEstacion("pticket")), cSalida
          else
             if Ambiente.Ticket.PortOpen Then
                Ambiente.Ticket.Output = cSalida
             end if 
          end if
       End if           
       cSalida = ""
    End If
    While Not rstPartidas.EOF 
          nPrecio = rstPartidas("Precio") * ( 1 - (rstPartidas("Descuento")/100) ) * (1 + ( rstPartidas("impuesto") / 100 ) )
          nPrecioBase = Round( rstPartidas("PrecioBase") * (1 + ( rstPartidas("impuesto") / 100 ) ), 2)
          nDescuento = (nPrecioBase - nPrecio) * rstPartidas("Cantidad")
          If nPrecioBase > 0 Then
             nDescPor = ( nPrecio / nPrecioBase ) * 100
          Else
             nDescPor = 0
          End If 
          nDescuentoTotal = nDescuentoTotal + nDescuento
          nImporte = nPrecio * rstPartidas("Cantidad")
          nCantidad = PadL(Formato( rstPartidas("cantidad"), "##,##0.00" ),3)
          cDescrip  = Mid( rstPartidas("Descrip"), 1, 40 ) & vbCrLf
          nCantidadTotal = nCantidadTotal + rstPartidas("cantidad")
          nImporteTotal = nImporteTotal + nImporte
          nImpuesto = nImpuesto + ( nImporteTotal * ( rstPartidas("impuesto") / 100 ) )          
          nPrecio = 0
          nIEspecial = rstPartidas("Precio") * (Val2(rstPartidas("iespecial")) / 100)
          nIVa = rstPartidas("Precio") * (rstPartidas("impuesto") / 100)
          nPrecio = rstPartidas("Precio") + nIEspecial + nIVa
          cPrecio = PadL(Trim(Formato( nPrecio,  Ambiente.FDinero )),8)
          cImporte = PadL(Trim(Formato( Round( nPrecio, 2) * rstPartidas("cantidad") * (1 - (rstPartidas("descuento") / 100)), Ambiente.FDinero )),8)    
          nPrecioOrigen = Round( rstPartidas("PrecioBase") * (1 + ( rstPartidas("impuesto") / 100 )),2) * rstPartidas("cantidad")
          nImporteOrigen = nImporteOrigen + nPrecioOrigen
          strSalida = PadL(Formato( nCantidad, Ambiente.Formato ),2) & "      " & cPrecio & "  " & cImporte
          'If rstPartidas("Precio1") > rstPartidas("Precio") Then
          '   nDescuentoPartida = ( rstPartidas("Precio1") - rstPartidas("Precio") ) * nCantidad
          '   strSalida = strSalida & " Descuento: " & Formato( nDescuentoPartida, "##,##0.00" ) & vbCrLf
          'End If
          cSalida = cSalida & strSalida & Chr(13) & Chr(10)
          cSalida = cSalida & cDescrip
          If Not clEmpty( cNull( rstPartidas("prdescrip") ) ) Then
             cSalida = cSalida & Trim( rstPartidas("prdescrip") ) & vbCrLf
          End If     
          rstPartidas.MoveNext
    Wend
    'PrintText cSalida
    If Ambiente.Tag <> "HTML" Then
  
       If Ambiente.rstEstacion("ticket") <> 0 Then
          if clAt( "LPT", Ambiente.rstEstacion("pticket") ) > 0 Then
             Out Trim(Ambiente.rstEstacion("pticket")), cSalida
          else
             if Ambiente.Ticket.PortOpen Then
                Ambiente.Ticket.Output = cSalida
             end if 
          end if
       End if           
       cSalida = ""
    End If
    cSalida = cSalida & Chr(13) & Chr(10) 
    cSalida = cSalida & Chr(13) & Chr(10)    
    cSalida = cSalida & "         Importe:            " & PadL(Formato( Val2(rstEncabezado("importe")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)
    cSalida = cSalida & "        Impuesto:            " & PadL(Formato( Val2(rstEncabezado("impuesto")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)
  
    if Val2(rstEncabezado("iespecial")) > 0 Then
       cSalida = cSalida & "     Impuesto 2%:            " & PadL(Formato( Val2(rstEncabezado("iespecial")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)
    end if
    if nDescuentoTotal > 0 Then
       cSalida = cSalida & "         Importe:            " & PadL(Formato( nImporteOrigen, Ambiente.FDinero ),10) & Chr(13) & Chr(10)
       cSalida = cSalida & "       Descuento:            " & PadL(Formato( nDescuentoTotal, Ambiente.FDinero ),10) & Chr(13) & Chr(10)
    end if
    cSalida = cSalida & "         Importe:            " & PadL(Formato( Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)
    cSalida = cSalida & "        Redondeo:            " & PadL(Formato( Val2(rstEncabezado("Redondeo")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)     
    cSalida = cSalida & Chr(13) & Chr(10)
    cSalida = cSalida & PadL(Formato( nCantidadTotal, "###,###" ),4) & "  ----- TOTALES ----     " & PadL(Formato( (Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")) + Val2(rstEncabezado("redondeo"))), Ambiente.FDinero ),10) & Chr(13) & Chr(10)     
    nPagoTotal = Val2(rstEncabezado("Pago1")) + Val2(rstEncabezado("Pago2")) + Val2(rstEncabezado("Pago3"))
    if rstEncabezado("Pago1") > 0 Then
       cSalida = cSalida & "                  Pago en " & rstEncabezado("Concepto1") & " " & PadL(Formato( Val2(rstEncabezado("Pago1")), Ambiente.FDinero ),9) & Chr(13) & Chr(10)
    end if 
    if rstEncabezado("Pago2") > 0 Then
       cSalida = cSalida & "                  Pago en " & rstEncabezado("Concepto2") & " " & PadL(Formato( Val2(rstEncabezado("Pago2")), Ambiente.FDinero ),9) & Chr(13) & Chr(10)
    end if
    
    if rstEncabezado("Pago3") > 0 Then
       cSalida = cSalida & "                  Pago en " & rstEncabezado("Concepto3") & " " & PadL(Formato( Val2(rstEncabezado("Pago3")), Ambiente.FDinero ),9) & Chr(13) & Chr(10)     
    end if
    Eventos
    If rstEncabezado("Comision") > 0 Then
       cSalida = cSalida & "        Comisión:            " & PadL(Formato( Val2(rstEncabezado("comision")), Ambiente.FDinero ),10) & Chr(13) & Chr(10)
    End If
    
    nComision = rstEncabezado("comision")
    if nPagoTotal < (Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")) + Val2(rstEncabezado("redondeo"))) Then
       cSalida = cSalida & "                     Credito: " & PadL(Formato( Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("iespecial")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("redondeo")) - nPagoTotal, Ambiente.FDinero ),9) & Chr(13) & Chr(10)     
    else
       cSalida = cSalida & "                      Cambio: " & PadL(Formato( nPagoTotal - nComision - Val2(rstEncabezado("impuesto")) - Val2(rstEncabezado("iespecial")) - Val2(rstEncabezado("importe")) - Val2(rstEncabezado("redondeo")), Ambiente.FDinero ),9) & Chr(13) & Chr(10)     
    end if
    Set rstMoneda = CreaRecordSet( "SELECT * FROM monedas WHERE moneda = '" & rstEncabezado("moneda") & "'", Ambiente.Connection )
    cSalida = cSalida & Chr(13) & Chr(10)
    cSalida = cSalida & Chr(13) & Chr(10)
    cSalida = cSalida & Letra( Val2(rstEncabezado("impuesto")) + Val2(rstEncabezado("importe")) + Val2(rstEncabezado("iespecial")), Trim(rstMoneda("Descrip")), True,rstMoneda("Nombre") ) & Chr(13) & Chr(10)
    If rstTextTicket.EOF Then
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
  
       cSalida = cSalida & "***** GRACIAS POR SU COMPRA *****" & Chr(13) & Chr(10)
       cSalida = cSalida &  Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)
       cSalida = cSalida & Chr(13) & Chr(10)    
       cSalida = cSalida & Chr(13) & Chr(10)    
    Else
       cSalida = cSalida & rstTextTicket("textend")
    End If
    
    ' Esto manda un corte de papel
    'PrintText cSalida
    if Ambiente.rstEstacion("ticketcorte") <> 0 Then
       cSalida = cSalida & Chr(27) & Chr(105)        
    end if
    If Ambiente.Tag = "HTML" Then
  
       Ambiente.Tag = ""
       
       cSalida = Replace( cSalida, Chr(13) & Chr(10), "
" ) 
       cSalida = "" & cSalida & " "
       CreaHtml "", (cSalida)
  
    Else
       if Ambiente.rstEstacion("ticket") <> 0 Then
          if clAt( "LPT", Ambiente.rstEstacion("pticket") ) > 0 Then
             Out Trim(Ambiente.rstEstacion("pticket")), cSalida
          else
             if Ambiente.Ticket.PortOpen Then
                Ambiente.Ticket.Output = cSalida
             end if 
          end if
       End if           
    End If
End Sub     
     
CONTACTO ***** jofelchez@gmail.com *****
Soporte Remoto, helpmybusinesspos.info , TeamViewer, Hamachi, Descarga My Business pos 2012 Gratis, crack activar, keygen activador , FACTURACIÓN ELECTRÓNICA, my business pos 2012, MyCBB, Codigo de Barras BiDimensional, configurar facturas, Migración de la Versión 2006 a la Versión 2011, Delta, Configurar 2011, Manuales de Instalación, Errores, Modificar, Respaldos, Nuevo IVA, Red MyBusiness, Problema, Ambiente path, Migración, Impresora, Descarga 2011, Reportes, Presentaciones, Win7, SQL, Manager, Ticket, Etiquetas, Generador, Corte X Z, Restaurar, Zebra, Logo, recomendaciones, Remisiones, Barras, Inventario, hamachi, Delta y LINUX, code39, como cambiar el iva en my business pos, my business pos blogspot, como instalar my busuness delta, TPV, MyMoney, Concentrador POS, Zebra, Datamax, Mobile Business, Commander, Restaurante, MyBusiness POS 2012, Kardex
viernes, 11 de noviembre de 2011
Formato de tickets 3
Suscribirse a:
Enviar comentarios (Atom)
 
 
 
No hay comentarios:
Publicar un comentario
Por favor, también escribe tu e-mail para contactarte
LA ASESORIA TIENE UN COSTO, para que lo consideres antes de Exigir Respuesta.