Publicado el 1 comentario

Personalizar comandos en punto de venta

En es sistema buscamos el procedimiento PUNTOV031 (business manager–configuracion–personalizacion–procedimientos y rutinas de usuario)
Dentor de este encontramos la función ValidaComando(). Ahí podemos ver cómo se invoca a las dierentes ventanas, como el Z010, Z009, Z026 y además podemos agregar las que necesitemos personalizar.


Sub ValidaComando()

If clAt( "/", Articulo ) > 0 And clAt( "//", Articulo ) = 0 Then
Call cantidaporPrecio()
Exit Sub
End If

If Trim(UCase(Articulo)) = "COMPRAS" Then
Set Compras = CreateObject( "MyBCompras.Compras" )
Set Compras.Ambiente = Ambiente
Compras.NuevaCompra True
End If

If Len( Trim( Articulo ) ) <> 4 Then
Exit Sub
End If

If clAt( "Z", UCase(Articulo) ) <> 1 Then
Exit Sub
End If

Select Case UCase(Articulo)
Case "Z001"
Script.RunForm "ALTACLIENTE", Me, Ambiente,, True
Case "Z002"
Me.OperacionBloqueada = False
txtFields(3) = "Operación Reactivada"
Case "Z003"
Me.FinalizaOperacion
Case "Z004"
Script.RunForm "ALTARAPIDA", Me, Ambiente,, True
Case "Z005"

If Question(Mensaje(642, Ambiente)) Then
Me.BorraVenta = True
Me.FinalizaOperacion
End If

Case "Z006"

Me.RecuperaVentaDeCliente

Case "Z007"

If txtFields(0).Enabled Then
txtFields(0).SetFocus
End If

Case "Z008"

AplicaDescuento

Case "Z009"

Script.RunProcess "CORTEX", Me, Ambiente

Case "Z010"

Script.RunProcess "CORTEZ", Me, Ambiente

Case "Z011"

Script.RunForm "PAGOEFECTIVO", Me, Ambiente,, True

Case "Z012"

Script.RunForm "COBROENEFECTIVO", Me, Ambiente,, True

Case "Z013"

Set rstUsuventas = CreaRecordSet( "SELECT * FROM usuventas WHERE usuario = '" & Ambiente.Uid & "'", Ambiente.Connection )

If rstUsuventas.EOF Then
Script.RunForm "DEVOLUCIONES", Me, Ambiente, True
'Exit Sub
End If

If Val2( rstUsuventas("devpunto") ) <> 0 Then
Script.RunForm "DEVOLUCIONES", Me, Ambiente, True
'Exit Sub
Else
MyMessage "No tiene derecho a hacer devoluciones, solicite el permiso con su supervisor"
'Exit Sub
End If

Case "Z014"

Script.RunForm "TICKETAFACTURA", Me, Ambiente,, True

'Case "Z016"
'
' Me.ActivaCobranza

Case "Z015"

Script.RunProcess "PUNTOV063", Me, Me.Ambiente

Case "Z016"

Script.RunForm "RETICKET", Me, Ambiente,, True

'Case "Z019"
'
' MyMessage "CONTROL + F12 Editar datos cliente" & vbCrLf & "CONTROL + F7 Editar guión" & vbCrLf & "SHIFT + F3 Colocar cursor en campo repartidor" & vbCrLf & "SHIFT + F4 Alta de repartidor"

Case "Z017"

Script.RunForm "FCAJA", Me, Ambiente,, True

Case "Z018"

Script.RunForm "CAMBIOUSUARIO", Me, Ambiente,, True

'Case "Z022"
'
' Script.RunProcess "VENTASCOLECTOR", Me, Me.Ambiente

Case "Z019"

Calculadora Ambiente

Case "Z020"

Script.RunProcess "ABRECAJON", Me, Me.Ambiente

Case "Z021"

Script.RunForm "AUXCLIENTS", Parent, Ambiente,, True

Case "Z022"

Script.RunProcess "ELIMINAVENTA", Me, Me.Ambiente

Case "Z023"

Script.RunForm "VENTASOBSERV", Me, Ambiente,, True

Case "Z024"

Script.RunForm "VENTASDESC", Me, Ambiente,, True

Case "Z025"

Script.RunForm "CAMBIOVALEEFECTIVO", Me, Me.Ambiente,, True

Case "Z026"

Script.Runform "FACTURADECIERRE", Me, Ambiente,, False

Case "Z027"

Script.RunHuellaForm "REGISTROACCESO", Me, Ambiente,, True

'Case "Z028"

'Script.Runform "LISTADEPEDIDOS", Me, Ambiente,, True

End Select

CancelaProceso = True
txtFields(4) = ""

End Sub

Publicado el 11 comentarios

Colocar logo en ticket USB


La ruta donde encontramos el formato de ticket dentro del business manager es: Configuración–Presonalización–Formatos del sistema–Ticket USB
Trataremos de identificar la línea que dice IniciaDocumento y debajo de esta podemos colocar el logo


IniciaDocumento 'tratamos de identificar esta línea, indica el inicio de la impresión

'Ruta del logo: C:\archivos de programa\MyBusiness POS 2012\images\logo.jpg
'El logo debe tener extensión logo.jpg
' Los valores Col(0), Row(0), Col(3),Row(4) son las coordenadas inicio y el tamaño

Picture Ambiente.path & "\Images\logo.jpg", Col(0), Row(0), Col(3),Row(4)
'EstableceImpresora "Mi Impresora laser" 'esta linea permite elegir impresora USB destino
EstableceFuente "Courier New", 8 'Fuente que tendra el ticket USB
Say 0,0.2, cSalida 'Alineación del texto, en pulgadas. cSalida es el texto a imprimir

FinDocumento 'Termina la Impresión USB
'

Publicado el 5 comentarios

Funciones para impresión de Ticket

Existen varias formas imprimir un ticket de venta tanto en pantalla como en la miniptinter.
El formato de ticket se encuentra en la ruta del business manager: configuración–personalizacion–formatos del sistema–TICKET. Abrir el código con doble clic e ir al final de este hasta identificar esta línea que se refiere a la impresión; ahí es posible aplicar diferentes opciones de impresión:

Script.sendToPrinter Ambiente, (cSalida), prn.Pantalla

Si queremos imprimir en USB, colocar:

'Código para impresora conectada por cable USB
'o para la impresora predeterminada de Windows).
IniciaDocumento
' EstableceImpresora "Mi Impresora laser" 'esta linea permite elegir impresora USB destino
EstableceFuente "Courier New", 8 'Fuente que tendra el ticket USB
Say 0,.2, cSalida 'Alineación del texto, en pulgadas. cSalida es el texto a imprimir
FinDocumento 'Termina la Impresión USB
'Exit Sub
'Exit Sub es por si deseamos que termine el proceso y saltar las lineas de código que le preceden
'

Si deseamos imprimir en impresora conectada por cable LPT:

'Función para impresora conectada por cable LPT
'Impresión de ticket, corteX y CorteZ _
Enviamos a la impresorade tickets que está configurada en ESTACION01
Script.sendToPrinter Ambiente, (cSalida), prn.Pantalla 'cSalida es el texto que se imprimirá
'

Si deseamos ver el texto del ticket en una ventana emergente:

MsgBox ("" & cSalida) 'cSalida es el texto que se visualizará
'

Una segunda opción para visualizar el el texto del ticket en una ventana emergente.

Mymessage "" & cSalida 'cSalida es el texto que se visualizará
'

Publicado el Dejar un comentario

Cómo hacer un Corte Z más pequeño?

Si deseamos un Corte Z que consuma menos papel, podemos hacer el siguiente ajuste en la ruta del business manager (Configuración–Personalización–Formatos del sistema–CorteZ). Nos colocamos aproximadamente en la linea 70 e identificamos la linea:



    detallado = True

Modificamos esta linea a False y quedará así:


    detallado = False

Guardamos y hacemos la prueba

En caso de que necesitemos el corte completo con impuestos, lo podemos hacer el cambio a true y ya aparecerá la información detallada del corte.