Publicado el 2 comentarios

Formato de etiquetas para zebra 2844

' El siguiente procedimiento imprime las etiquetas de cada uno de los articulos
Public Sub Main ()

Set rstPartidas = CreaRecordSet( “SELECT articulo, descrip, etiquetas, precio1, precio2, precio10 FROM prods WHERE etiquetas > 0”, Ambiente.Connection )

While Not rstPartidas.EOF

For i = 1 to rstPartidas(“etiquetas”)
ImprimeEtiqueta “LPT1”, rstPartidas(“articulo”), “”,rstPartidas(“descrip”) , Formato(rstPartidas(“precio1”), “##,##0.00” ), Formato(rstPartidas(“precio2”), “##,##0.00” ), Formato(rstPartidas(“precio10”), “##,##0.00” )
Next

rstPartidas.MoveNext

Wend

Set rstPartidas = CreaRecordSet( “SELECT clavesadd.clave, prods.descrip, clavesadd.etiquetas, prods.precio1, prods.precio2, prods.precio10 FROM clavesadd INNER JOIN prods ON clavesadd.articulo = prods.articulo WHERE clavesadd.etiquetas > 0”, Ambiente.Connection )

While Not rstPartidas.EOF

For i = 1 to rstPartidas(“etiquetas”)
ImprimeEtiqueta “LPT1”, rstPartidas(“clave”), “”,rstPartidas(“descrip”) , Formato(rstPartidas(“precio1”), “##,##0.00” ), Formato(rstPartidas(“precio2”), “##,##0.00” ), Formato(rstPartidas(“precio10”), “##,##0.00” )
Next

rstPartidas.MoveNext

Wend

End sub

Public Sub ImprimeEtiqueta( cPuerto, cArticulo, cDato1, cDescrip, cPrecioDeLista, cMayoreo, cSugerido )

cPuerto = Trim( cPuerto )
cArticulo = Trim( cArticulo )
cDescrip = Trim( cDescrip )
cDato1 = Trim( cDato1 )

cSalida = “”

‘ Aqui se puede modificar la etiqueta utiliza un lenguaje llamado EPL2 le adjunto manual del
‘ lenguaje, tambien si tienen la información del formato de la etiqueta y quieren que la
‘ diseñe por favor mandemelo
‘ Aqui se muestran los comandos basicos
‘ El comando N inicia la etiqueta
‘ El comando A muestra un dato de texto en donde el 250 es la posición en el eje de las X
‘ y el 15 la posición en el eje de las Y
‘ El comando B muestra el código de barras donde 250 es la posición en el eje de las X y 45
‘ Es la posición de inicio del eje de las Y
‘ El comando P Finaliza la etiqueta y el nunero 1 indica cuantas etiquetas se van a imprimir

cSalida = cSalida & “N” & Chr(13) & Chr(10)
cSalida = cSalida & “D14” & Chr(13) & Chr(10)
cSalida = cSalida & “A220,15,0,1,1,1,N,” & Chr(34) & Formato( Date, “dd-MM-yyyy” ) & Chr(34) & Chr(13) & Chr(10)
cSalida = cSalida & “A05,11,0,2,1,1,N,” & Chr(34) & Mid( cDescrip,1, 12 ) & Chr(34) & Chr(13) & Chr(10)
cSalida = cSalida & “B05,30,0,2,1,6,25,B,” & Chr(34) & cArticulo & Chr(34) & Chr(13) & Chr(10)
cSalida = cSalida & “A220,55,0,4,1,1,N,” & Chr(34) & “$” & cPrecioDeLista & Chr(34) & Chr(13) & Chr(10)
‘cSalida = cSalida & “A250,95,0,2,1,1,N,” & Chr(34) & cMayoreo & Chr(34) & Chr(13) & Chr(10)
cSalida = cSalida & “P1” & Chr(13) & Chr(10)

if Ambiente.rstEstacion(“ietiquetas”) <> 0 Then
if clAt( “LPT”, Ambiente.rstEstacion(“ietiquetaspuerto”) ) > 0 Then
Out Trim(Ambiente.rstEstacion(“ietiquetaspuerto”)), cSalida
else
if Ambiente.ImpresoraDeEtiquetas.PortOpen Then
Ambiente.ImpresoraDeEtiquetas.Output = cSalida
end if
end if
end if

Dormir 100
Eventos

End Sub

 

Publicado el Dejar un comentario

Al dar un clic en un módulo adicional de la barra de tareas

Este es el código fuente del Procedimiento RUNBARRA
RUNBARRA almacena todas las acciones que realizan los iconos de la ventana principal del sistema.
Aqui podemos hacer algunos ajustes para ejecutar nuestras Formas desarrolladas con el Editor de “Ambiente de desarrollo”
' Mybusiness POS v. 2011
Sub Main()
Dim Ventas

Select Case Ambiente.Tag
Case "Series"
Script.RunForm "SERIES", Parent, Ambiente,, False
Case "Verificador"

If Question( "Desea activar el verificador de precios (recuerde desactiva la ventana con ...1 y enter)", 1 ) Then
MuestraVerificador
End If

Case "Reconectar"
CreaConexiones
Case "AltaRapida"
Script.RunForm "ALTARAPIDA", Parent, Ambiente,, False
Case "AltaHotel"
Script.RunForm "ALTASERVICIOS", Parent, Ambiente,, False
Case "MySQLPass"
Script.RunForm "PASSMYSQL", Parent, Ambiente,, False
Case "HotSync"
Script.RunProcess "HOTSYNC", Parent, Ambiente
Case "Ofertas"
Script.RunForm "OFERTAS", Parent, Ambiente,, False
Case "CambioPrecio"
Script.RunForm "CAMBIOPRECIO", Parent, Ambiente,, False
Case "Procedimientos"
MuestraNodo "Procedimientos"
Case "Formatos"
MuestraNodo "formatos"
Case "Reportes"
MuestraNodo "Reportes"
Case "Hermes"
Script.RunForm "OFERTAS2", Parent, Ambiente,, False
Case "Etiquetas2"
Script.RunForm "ETIQUETA2", Parent, Ambiente,, False
Case "InvExcel"
Script.RunForm "PRODSEXCEL", Parent, Ambiente,, False
Case "estados"
Script.RunForm "ESTADOS", Parent, Ambiente,, False
Case "EditarCB"
MuestraDEtiquetas
Case "EditarTicket"
Script.RunForm "EDITORTICKET", Me, Ambiente,, False
Case "EditarGuion"
Script.RunForm "EDITORMENSAJE", Me, Ambiente,, False
Case "Pls2001"
Script.RunForm "EPLS2000", Me, Ambiente,, False
Case "Repartidor"
Script.RunForm "ALTAREPARTIDOR", Me, Ambiente,, False
Case "ImpVentas"
Script.RunForm "IMPVENTAS2", Me, Ambiente,, False
Case "Pacientes"
Script.RunForm "PACIENTES", Me, Ambiente,, False
Case "Bitacoras"
Script.RunForm "BITACORAS", Me, Ambiente,, False
Case "SubirBitacora"
Script.RunForm "SUBIRBITACORAS", Me, Ambiente,, False
Case "prospectos"
' Script puede ejecutar un proceso, una forma de captura, un reporte
' o un formato impreso
Script.RunForm "PROSPECTOS", Me, Ambiente,, False
Case "PreciosEspeciales"
Script.RunForm "PRECIOSESPECIALES", Me, Ambiente,, False

Case "Recostear"
Script.RunForm "COSTEO", Me, Ambiente,, False

Case "Touch"

Set Ventas = CreateObject("MyBVentas.ventas")
Set Ventas.Ambiente = Ambiente
Ventas.ActivaTouch

Case "PuntoVenta2"

Set Ventas = CreateObject("MyBVentas.ventas")
Set Ventas.Ambiente = Ambiente
Ventas.ActivaPuntoDeVenta2

Case "Recalcular"
If Question( "Desea recalcular el inventario", 1 ) Then
Call RecDelta()
End If

Case "Servicios"

ejecuta "CD010"

Case "DatosGenerales"

Me.DatosEmpresa

Case "Mantenimiento"

RepararBaseDedatos

Case "FormatosImpresion"

Formatos

Case "Consecutivos"

'Consecutivos
SetSessionValue Ambiente, "FORMPADRECONSEC", "BUSINESSMANAGER"
Script.RunForm "CONSECUTIVOS", Me, Ambiente,, True

Case "GeneralConsecutivos"

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

Case "BorrarBase"

EliminaDatos

Case "AltaEmpresa"

Script.RunForm "DATOSEMPRESA", Me, Ambiente,, False

Case "CambiarEmpresa"

CambiaEmpresa

Case "RegistroDeLicencia"

AcercaDe

Case "ConfigGeneral"

ConfigGeneral

Case "SincronizarProcedimientos"

SincronizarProcedimientos

Case "Rangos"

establecerPeriodosDeCarpetas

Case "configpocket"
Script.RunForm "CONFIGPOCKETPC", Me, Ambiente,, True
Case "inventariopocket"
Script.RunForm "ENTRADAPOCKET", Me, Ambiente,, True
Case "pocket"
Script.RunForm "EXPORTAIMPORTAPOCKET", Me, Ambiente,, True
'Script.RunProcess "EXPORTAINFOTOPOCKET", Parent, Ambiente
Case "confirmaventas"
Script.RunForm "CONFIRMAVENTAS", Me, Ambiente,, True
Case "creanotas"
Script.RunForm "AsistenteNotasPocket", Me, Ambiente,, True
'Case "creainventariofisico"
'Script.RunForm "INVFISICOPOCKET", Me, Ambiente,, True
Case "reportepedidospk"
EjecutaReporte "PEDIDOSMOBILE"
Case "cargainicial"
EjecutaReporte "PRODSPOCKET"
Case "ventaspendientes"
EjecutaReporte "VENTASMOBILE"
Case "articulosvendidos"
EjecutaReporte "VENTAPRODSMOBILE"

Case "HojaInventario"

Script.RunForm "HOJACOSTOS", Me, Ambiente,, False
'muestraHojaDeInventario

Case "CobroCaja"

Set ventas = CreateObject( "MyBVentas.ventas" )
Set ventas.Ambiente = Me.Ambiente
Ventas.MuestraCobroEncaja

Case "Consulta"

Script.RunForm "CONSULTA", Me, Ambiente,, False

Case "etenvio"

Script.RunForm "ETENVIO", Me, Ambiente,, False

Case "FacturaCierre"

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

Case "series"

activaSeriesSalida

Case "lotes"

activaFormaDeLotes

Case "CambioCosto"

activaFormaDeCambiosDeCosto

Case "ReportesFinancieros"

ShellRun Me.hWnd, "Open", "http://localhost:4410/index.myweb?newsession"

Case "seriesseguimiento"

Script.RunForm "RASTREOSERIE", Me, Ambiente,, False

Case "MBInventario"

Set MBInventario = CreateObject( "MyBArticulos.Articulos" )
Set MBInventario.Ambiente = Ambiente
MBInventario.muestraMBInventario

Case "ordenproduccion"

Set p = CreateObject( "MyBProduccion.produccion" )
Set p.Ambiente = Ambiente
p.NuevaOp

Case "capturaetiquetas"

Set p = CreateObject( "MyBProduccion.produccion" )
Set p.Ambiente = Ambiente
p.MuestraCapturaDeFracciones

Case "seguimiento"

Set p = CreateObject( "MyBProduccion.produccion" )
Set p.Ambiente = Ambiente
p.muestraSeguimiento

Case "destajo"

Script.RunForm "DESTAJO", Me, Ambiente,, False

Case "ordenservicio"

Script.RunForm "ORDENES", Me, Ambiente,, False

Case "BuscarTicket"

Script.RunForm "BUSCATICKET", Me, Ambiente,, False

Case "existenciaremota"

Script.RunForm "EXISTENCIAREMOTA", Me, _
Ambiente, , False

Case "Abonos"

Set Cobranza = CreateObject( "MyBCobranza.Cobranza" )
Set Cobranza.Ambiente = Ambiente
Cobranza.NuevoAbono

Case "ImportarMySQL"

Script.RunForm "IMPORTAMYSQL", Me, Ambiente,, False

Case "Analisis"

Script.RunForm "PRODUCTOSSUGERIDO", Me, Ambiente,, False

Case "UEPS"

Script.RunForm "COSTEOUEPS", Me, Ambiente,, False

Case "PEPS"

Script.RunForm "COSTEOPEPS", Me, Ambiente,, False

Case "Secciones"

Script.RunForm "BUSQUEDASECCIONES", Me, Ambiente,, False

Case "Comandas"

Script.RunProcess "AAMESAS", Me, Ambiente

Case "Reservaciones"

Script.RunProcess "AARESERVACIONES", Me, Ambiente

Case "Backup"

Script.RunForm "RESPALDOBASEDEDATOS", Me, Ambiente,, False

Case "Menu"

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

Case "r_impresoras"

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

Case "CierreTienda"

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

Case "Huella"

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

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

Case "Clientes2"

Script.RunForm "CLIENTES", Me, Ambiente,, False

Case "Proveedores2"

Script.RunForm "PROVEEDORES", Me, Ambiente,, False

Case "FPersonalizados"

Script.RunForm "GENERADORDOCUMENTOS", Me, Ambiente,, False

Case "materiales"

Script.RunForm "HOJADEMATERIALES", Me, Ambiente,, False

Case "imc"

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

Case "RemisionFactura"

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

Case "ImpClientes"

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

Case "ImpProveedores"

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

Case "CambioPrecio"

Script.RunForm "CAMBIOPRECIO", Me, Ambiente,, True
case "ConfigSucursal"

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

Case "FacturaElectronica"
ConfigFile = Ambiente.Path + "\econfig.txt"
BatchFile = Ambiente.Path + "\FElectronica.bat"

Set rstConfiguracion = CreaRecordSet("select * from FEConfig ", Ambiente.Connection)
if not rstConfiguracion.EOF then
Set fso=CreateObject("Scripting.FileSystemObject")
If fso.FileExists(ConfigFile) Then
fso.DeleteFile ConfigFile
End if
If fso.FileExists(BatchFile) Then
fso.DeleteFile BatchFile
End if
If not fso.FolderExists(rstConfiguracion("FileLocation")) Then
fso.CreateFolder(rstConfiguracion("FileLocation"))
End if

outline BatchFile,"@echo off" + vbCrLf
outline BatchFile,"cd " + Ambiente.Path + vbCrLf
outline BatchFile,"start /wait FElectronica.exe" + vbCrLf
outline BatchFile,"exit" + vbCrLf

'ambiente.connection.execute "exec FEInicializaSerie '"+ trim(ambiente.estacion) + "'"
outline ConfigFile,ambiente.connection + vbCrLf
ShellRun Me.hWnd, "Open",Ambiente.Path + "\FElectronica.bat"
end if

Case "Tallas"

Script.RunForm "TallaColModelos", Me, Ambiente,, True
End Select

End Sub

Sub ejecuta( nombreProcedimiento )
Dim rstFormato

Set rstFormato = CreaRecordSet( _
"SELECT * FROM formatos WHERE formato = '" & nombreProcedimiento & "'",_
Ambiente.Connection )

If rstFormato.EOF Then
Exit Sub
End If

' 1.- Tipo de programa
' 2.- Codigo de programacion
' 3.- El objeto Ambiente
' 4.- El objeto padre
Script.Preview rstFormato("tipo"), rstFormato("codigo"), Ambiente, Me

End Sub

Sub EjecutaReporte(reporte)

Dim rstReporte

Set rstReporte = Rst("SELECT * FROM formatosdelta WHERE formato = '" & reporte & "'", Ambiente.Connection )

If rstReporte.EOF Then
Exit Sub
End If

Script.Preview rstReporte("tipo"), rstReporte("codigo"), Ambiente, Me, rstReporte("formato"), ""

End Sub

Publicado el Dejar un comentario

Ticket con descuentos

Este es el código fuente del formato “Ticket con descuentos”

' Mybusiness POS v. 2011
Sub Main()

if Ambiente.rstEstacion("torreta") <> 0 Then
if clAt( "LPT", Ambiente.rstEstacion("ptorreta") ) > 0 Then
Out Trim(Ambiente.rstEstacion("ptorreta")), Chr( 12 ) & "Total: $" & Formato( Val2( txtFields(4) ), "###,###.00" )
else
On Error resume next
Ambiente.torreta.PortOpen = True
if Ambiente.torreta.PortOpen Then
Ambiente.Torreta.OutPut = Chr( 12 ) & "Total: $" & Formato( Val2( txtFields(4) ), "###,###.00" )
end if
end if
end if

If Ambiente.rstEstacion("ventasportelefono") <> 0 Then

cSalida = ""

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

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

Exit Sub
End If

'If MsgBox( "Desea imprimir el ticket", vbQuestion + vbYesNo + vbDefaultButton2 ) = vbNo Then
' Exit Sub
'End If

' 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. DESCRIPCION 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, 16 )
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) & " " & cDescrip & " " & 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)

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

Dormir 100
Eventos

End Sub

Publicado el 3 comentarios

Cómo solucionar el Error de decimales y Reportes en Blanco?

wpid-12921860_959637817437617_1017869236_o.png.jpg

A varios usuarios les ha sucedido que no pueden visualizar los reportes de manera correcta; solo se alcanza a visualizar un poco que se está cargando el reporte, pero al momento de mostrarlo se queda casi en blanco toda la ventana.

La solución que les comparto en esta ocasión tal vez suena muy simple,  sin embargo, estoy seguro que a más de uno le va a ser útil.

Debe configurar su equipo al idioma Español (México).

Esto se logra siguiendo la ruta INICIO — PANEL DE CONTROL — CONFIGURACION REGIONAL Y DE IDIOMA.

Ahí Seleccionamos el idioma Español de México  y también se recomienda la ubicación México.

Esto además soluciona el problema de que los aprecios de los artículos se ven en miles o millones de pesos (cuando en realidad su valor es unos pesos y algunos centavos).

Este tip también soluciona el problema de los decimales con coma (1,500) y muestra los decimales con el punto decimal(1.5) como lo conocemos en México.

Espero haber aportado algo para todos los visitantes del blog. cualquier duda contactarme a jofelchez@gmail.com

Publicado el 7 comentarios

Imprimir una remisión de más de una hoja (solución)

Hoy voy a compartir con ustedes el tip sobre la impresión de una remisión o cualquier otro documento en tamaño carta que tenga bastantes partidas.

El código se encuentra en la siguiente ruta, dentro del sistema MyBusinessPOS:

Configuración–Personalización–Formatos del Sistema. Ahi se encuentra el formato REMISIONES

Damos doble clic y podemos modoficarlo. Dentro del reporte encontramos un bloque grande IF. Antes de que termine el bloque IF y FinDocumento, colocamos el siguiente código:

'-----------------------------------------------------------------------------------------------------------------------------------
'-----------------------------------------------------------------------------------------------------------------------------------
'2011-04-01
'Jose Felix jofelchez@gmail.com
'ESTE BLOQUECITO DE CÓDIGO ES EL QUE PERMITE QUE SE REALICE EL SALTO DE PÁGINA
'

if val2(Row( Incremento )) > 0.025 Then 'EN ESTE CASO, EL VALOR 0.025 SON PULGADAS
Incremento = 1
PaginaNueva
end if

'-----------------------------------------------------------------------------------------------------------------------------------
'-----------------------------------------------------------------------------------------------------------------------------------

Incremento = Incremento + 1
rstPartidas.MoveNext
Wend

End If

Guardamos y listo

Pero no se preocupen si les parece confuso, les dejo tambien el código fuente y el archivo .paq; y como siempre les recomiendo que antes de hacer pruebas, se haga un respaldo. Este es el link de descarga:

remision en varias paginas EJEMPLO.paq

REMISION_VARIAS_PAGINAS_Ejemplo_codigo_TEXTO