- Se agregó multi-ticket al cerrar la mesa

- Se agregó la impresion del resumen de platillos vendidos en click largo de impresion en Cierre Total
This commit is contained in:
2024-03-06 05:51:37 -06:00
parent 469d7d91a4
commit a6e77b99a4
8 changed files with 622 additions and 218 deletions

View File

@@ -197,6 +197,9 @@ Sub JobDone(Job As HttpJob)
Dim CAT_GP_CLASIF As String = records(result.Columns.Get("CAT_GP_CLASIF"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD, CAT_GP_CLASIF) VALUES (?,?,?,?,?,?,?,?)", Array As Object (CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD,CAT_GP_CLASIF))
Next
For v = 1 To 20 'Agregamos productos varios (editables)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_GUNAPROD(CAT_GP_ID,CAT_GP_NOMBRE,CAT_GP_PRECIO,CAT_GP_ALMACEN,CAT_GP_IMG,CAT_GP_FECHA,CAT_GP_FECHA_MOD, CAT_GP_CLASIF) VALUES (?,?,?,?,?,?,?,?)", Array As Object ($"VAR${NumberFormat2(v, 2, 0, 0, False)}"$,$"Alimentos Varios ${NumberFormat2(v, 2, 0, 0, False)}"$,"1","10000",Null,"2024-02-04 17:00:00","2024-02-04 17:00:00","Varios"))
Next
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
Starter.skmt.EndTransaction
End If

View File

@@ -100,6 +100,24 @@ Sub Class_Globals
Private cb_cambioMesa As B4XComboBox
Private b_cambioMesa As Button
Private l_cambioMesa As Label
Private p_renombraVarios As Panel
Private l_renombraVarios As Label
Private b_renombraVarios As Button
Private et_precioVariable As EditText
Private et_nombreVariable As EditText
Private p_transparentePago As Panel
Private b_agregarPago As Button
Private l_tipoPago1 As Label
Private p_propina As Panel
Private cb_pago2 As B4XComboBox
Private l_tipoPago2 As Label
Private et_montoPago1 As EditText
Private et_montoPago2 As EditText
Private p_formasDePago As Panel
Dim listaFormasDePagoCB, listaFormaDePago, listaMontoDePago, listaTickets As List
Private l_tipoPago As Label
Private formaPago As String
Private l_faltaMonto As Label
End Sub
'You can add more parameters here.
@@ -144,7 +162,12 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.panelWH(p_transparenteCierreAdmin, Root.Width, Root.Height)
p_transparenteCierreAdmin.Top = 0 : p_transparenteCierreAdmin.left = 0
Subs.panelWH(p_transparenteResumen, Root.Width, Root.Height)
Subs.panelWH(p_transparentePago, Root.Width, Root.Height)
p_transparentePago.Top = 0 : p_transparentePago.left = 0
sv_resumen.Panel.LoadLayout("resumenCont")
Subs.centraEtiqueta(l_pago, p_pago.Width)
Subs.centraPanel(p_propina, p_pago.Width)
Subs.centraBoton(b_pagoCerrar, p_pago.Width)
Dim cs As CSBuilder
cs.Initialize
l_inicioDia.Text = cs.append("Para iniciar día, ingrese el texto ").bold.Append("INICIO DIA").Pop.Append(" y la tecla ").Bold.Append("Retorno").Pop.Append(" del teclado.").Color(Colors.red).Append(" Los datos del día anterior se borraran.").Popall
@@ -165,7 +188,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
p_mesas.Width = Root.Width
Subs.panelVisible(p_mesas, 0, 0)
cb_comensales.SetItems(Array As String(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20))
cb_pago.SetItems(Array As String("American Express", "Visa/Mastercard", "Efectivo"))
' cb_pago.SetItems(Array As String("American Express", "Visa/Mastercard", "Efectivo"))
cb_pagoPropina.SetItems(Array As String("Tarjeta", "Efectivo"))
cb_mesero.SetItems(Subs.traeMeserosLista)
Private lasCats As List = Subs.traeCategorias
@@ -188,6 +211,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End Sub
Sub B4XPage_Appear
Starter.imprimirTicket = False
reqManager.Initialize(Me, Starter.DBReqServer)
B4XPages.MainPage.atrasPresionado = False
' Log(Starter.DBReqServer)
@@ -236,8 +260,8 @@ Sub B4XPage_Appear
End If
Printer1.Initialize(Me, "Printer1")
n2t.Initialize
Log(n2t.NumberToWords(456.50))
Log(n2t.NumberToWords(456.51))
' Log(n2t.NumberToWords(456.50))
' Log(n2t.NumberToWords(456.51))
' For x = 198 To 305
' Log(NumberFormat2(x&".52", 1,2,2,True) & " -> " & n2t.NumberToWords(x&".52"))
' Next
@@ -246,10 +270,13 @@ End Sub
Sub B4XPage_CloseRequest As ResumableSub
' BACK key pressed
'Return True to close, False to cancel
If p_transparenteCambioMesa.Visible Then
If p_renombraVarios.Visible Then
p_renombraVarios.Visible = False
Else If p_transparenteCambioMesa.Visible Then
p_transparenteCambioMesa.Visible = False
Else If p_pago.visible Then 'Si se esta mostrando el popup de pago, lo cerramos.
p_pago.Visible = False
Else If p_transparentePago.visible Then 'Si se esta mostrando el popup de pago, lo cerramos.
' p_pago.Visible = False
p_transparentePago.Visible = False
Else If clv_prods_ll.AsView.Visible Then 'SI se muestran los
clv_prods_ll.AsView.Visible = False
lv_categorias.Visible = True
@@ -406,13 +433,13 @@ Sub LlenaProdsLL(p As ResultSet, extra As String)
' Loop
' pe.Close
Private c As Cursor = Starter.skmt.ExecQuery($"Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG, PE_PROID, PE_CANT from cat_gunaprod join pedido on cat_gp_id = Pe_proid where PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and CAT_GP_PRECIO > 0 And CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$)
Private c As Cursor = Starter.skmt.ExecQuery($"Select CAT_GP_ID, CAT_GP_NOMBRE, CAT_GP_ALMACEN, CAT_GP_PRECIO, CAT_GP_TIPOPROD, CAT_GP_IMG, PE_PROID, PE_CANT, PE_PRONOMBRE, PE_COSTOU from cat_gunaprod join pedido on cat_gp_id = Pe_proid where PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and CAT_GP_PRECIO > 0 And CAT_GP_CLASIF <> 'PROMOS' order by CAT_GP_NOMBRE"$)
' Log(c.RowCount)
If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1
c.Position = i
' If hayPedido And cantsMap.ContainsKey(c.GetString("CAT_GP_ID")) Then cant = cantsMap.Get(p.GetString("CAT_GP_ID")) 'Agregamos la cantidad ya comprada al producto
Dim tempMap As Map = CreateMap("prod":c.GetString("CAT_GP_NOMBRE"), "precio":c.GetString("CAT_GP_PRECIO"), "almacen":c.GetString("CAT_GP_ALMACEN"), "id":c.GetString("CAT_GP_ID"), "cant":c.GetString("PE_CANT"), "img":Null)
Dim tempMap As Map = CreateMap("prod":c.GetString("PE_PRONOMBRE"), "precio":c.GetString("PE_COSTOU"), "almacen":c.GetString("CAT_GP_ALMACEN"), "id":c.GetString("CAT_GP_ID"), "cant":c.GetString("PE_CANT"), "img":Null)
listaProdsConCant2.Add(tempMap)
listaProdsConCantIndex2.Add(c.GetString("CAT_GP_ID"))
' listaProdsConCant2.Add(tempMap)
@@ -552,7 +579,7 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In
Private precio As String=NumberFormat2(clv_prods_ll.GetValue(i).As(Map).Get("precio").As(Double),1,2,2,False)
If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null Then et_pCant.Text = clv_prods_ll.GetValue(i).As(Map).Get("cant")
l_prodX.Text = cs.Color(Colors.red).append(clv_prods_ll.GetValue(i).As(Map).Get("prod")).pop.append(CRLF).Color(0xFF017F01).Append($"Precio $${NumberFormat2(precio, 1, 2, 2, True)}"$).Popall
l_prodX.Tag = clv_prods_ll.GetValue(i).As(Map).Get("almacen")
l_prodX.Tag = clv_prods_ll.GetValue(i).As(Map)
l_pCant.Tag = clv_prods_ll.GetValue(i).As(Map).Get("id")
' Log(clv_prods_ll.GetValue(i).As(Map).Get("id"))
' Private rs_img As ResultSet = Starter.skmt.ExecQuery($"select CAT_GP_IMG from cat_gunaprod where CAT_GP_ID = '${clv_prods_ll.GetValue(i).As(Map).Get("id")}'"$)
@@ -771,7 +798,7 @@ Private Sub b_terminar_Click
End Sub
Sub llenaHistorial
Dim rs_hist As ResultSet = Starter.skmt.ExecQuery($"Select * from pedido_ticket where PT_PAGO <> 'VENTA' order by PT_PAGO desc, PT_TICKET"$)
Dim rs_hist As ResultSet = Starter.skmt.ExecQuery($"Select * from pedido_ticket where PT_PAGO <> 'VENTA' and PT_PAGO <> 'MULTI-TICKET' order by PT_PAGO desc, PT_TICKET"$)
If rs_hist.RowCount > 0 Then
l_historialVacio.Visible = False
Private cs As CSBuilder
@@ -937,6 +964,11 @@ Private Sub p_mesasItem_Click
' Log(p_prods.Width)
' p_prods.Width = clv_prods_ll.GetBase.Width
' clv_prods_ll.Base_Resize(400,Root.Height)
listaFormasDePagoCB.Initialize
listaFormaDePago.Initialize
listaMontoDePago.Initialize
listaTickets.Initialize
Starter.formasDePago = 1
tipoPago = "VENTA"
clv_prods_ll.AsView.Visible = False
lv_categorias.Visible = True
@@ -948,6 +980,7 @@ Private Sub p_mesasItem_Click
Starter.meseroActual = m.Get("mesero")
Starter.ticketActual = m.Get("ticket")
Starter.comensalesActuales = m.Get("comensales")
Starter.totalActual = m.Get("subtotal")
l_mesa.Text = $"MESA NO. ${m.Get("id")}"$
' Log(m)
b_mesaCerrar.Tag = m
@@ -956,7 +989,7 @@ Private Sub p_mesasItem_Click
LlenaProdsLL(Null, Null)
p_mesas.Visible = False
cb_mesero.SelectedIndex = 0
cb_pago.SelectedIndex = 0
' cb_pago.SelectedIndex = 0
cb_comensales.SelectedIndex = 0
' Private mesero As String = Subs.traeMesero(m.Get("id"))
If m.Get("mesero") <> "NINGUNO" Then cb_mesero.SelectedIndex = cb_mesero.IndexOf(m.Get("mesero"))
@@ -1029,6 +1062,7 @@ Private Sub b_abrirMesa_Click
End If
Starter.meseroActual = cb_mesero.SelectedItem
Starter.comensalesActuales = cb_comensales.SelectedItem
Starter.skmt.ExecNonQuery($"delete from usuarioa"$)
Starter.skmt.ExecNonQuery($"insert into usuarioa (usuario) values ('${cb_mesero.SelectedItem}')"$)
LlenaProdsLL(Null, Null)
l_comensalesAbierta2.Text = cb_comensales.SelectedItem
@@ -1050,17 +1084,33 @@ Private Sub cb_comensales_SelectedIndexChanged (Index As Int)
End Sub
Private Sub cb_mesero_SelectedIndexChanged (Index As Int)
Log(Index)
' Log(Index)
End Sub
Private Sub b_mesaCerrar_Click
' Log("Cerrar")
listaFormasDePagoCB.Initialize
listaFormaDePago.Initialize
listaMontoDePago.Initialize
listaTickets.Initialize
Starter.formasDePago = 1
p_formasDePago.Height = 40dip
p_propina.Top = 133dip
b_pagoCerrar.Top = 263dip
p_pago.Height = 320dip
p_formasDePago.RemoveAllViews
Private c As Cursor = Starter.skmt.ExecQuery($"select PE_MESA from PEDIDO where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA'"$)
If c.RowCount > 0 Then
Log(Sender.As(Button).tag)
p_transparentePago.Visible = True
p_transparentePago.BringToFront
agregaFormaDePago(l_tipoPago.Left, 0, Starter.formasDePago)
et_montoPago2.Text = Starter.totalActual
et_propina.Text = ""
p_pago.BringToFront
p_pago.Visible = True
et_montoPago2.Text = Starter.totalActual
' p_pago.Elevation = 100dip
' p_pago.BringToFront
' p_pago.Visible = True
Else
Starter.skmt.ExecNonQuery($"update CAT_MESAS set M_PAGO = null, M_TICKET = null, M_ESTATUS = null, M_MESERO = null, M_COMENSALES = null where M_ID = '${Starter.mesaActual}'"$)
B4XPage_CloseRequest
@@ -1091,30 +1141,59 @@ Private Sub p_pago_Click
End Sub
Private Sub b_pagoCerrar_Click
p_pago.Visible = False
If cb_pago.SelectedItem = "Efectivo" Then
tipoPago = "EFECTIVO"
' p_pago.Visible = False
listaTickets.Initialize
p_transparentePago.Visible = False
Log("###################### " & listaFormasDePagoCB.Size)
If listaFormasDePagoCB.Size > 1 Then
Log(">>>>>>>> VARIOS PAGOS")
Private sigTicketMT As String = Subs.traeConsecutivoTicket("CERRADA", "MULTI-TICKET")
Starter.skmt.ExecNonQuery($"update PEDIDO set PE_TIPO = 'MULTI-TICKET', PE_TICKET = '${sigTicketMT}' where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and PE_TICKET = '${Starter.ticketActual}'"$)
Starter.skmt.ExecNonQuery($"update PEDIDO_TICKET set PT_PAGO = 'MULTI-TICKET', PT_TICKET = '${sigTicketMT}', PT_PROPINA = '0', PT_PAGO_PROPINA = '0' where PT_MESA = '${Starter.mesaActual}' and PT_TICKET = '${Starter.ticketActual}' and PT_PAGO = 'VENTA'"$)
Starter.skmt.ExecNonQuery($"update CAT_MESAS set M_PAGO = null, M_TICKET = null, M_ESTATUS = null, M_MESERO = null, M_COMENSALES = null where M_ID = '${Starter.mesaActual}'"$) 'Reseteamos la mesa a cerrada.
For fdp = 0 To listaFormasDePagoCB.Size - 1
formaPago = listaFormaDePago.Get(fdp)
If formaPago = "Efectivo" Then
tipoPago = "EFECTIVO"
Else
'Pago con tarjeta
tipoPago = "TARJETA"
End If
Private sigTicket As String = Subs.traeConsecutivoTicket("CERRADA", tipoPago)
Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_TICKET, PE_FECHA, PE_MESERO, PE_MESA, PE_COSTO_SIN, PE_TIPO) VALUES(?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (listaMontoDePago.Get(fdp).As(EditText).text, listaMontoDePago.Get(fdp).As(EditText).text, 1, "Consumo de alimentos", "CDA01", sigTicket, Subs.traeFecha, Starter.meseroActual, Starter.mesaActual, listaMontoDePago.Get(fdp).As(EditText).text, tipoPago))
Private laPropina As String = "0"
If et_propina.Text <> "" Then
laPropina = et_propina.Text
End If
Starter.skmt.ExecNonQuery2("insert into PEDIDO_TICKET(PT_TICKET, PT_PAGO, PT_FECHA, PT_MESERO, PT_NOART, PT_MONTO, PT_MESA, PT_COSTO_SIN, PT_COMENSALES) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(sigTicket, tipoPago, Subs.traeFecha, Starter.meseroActual, 1, listaMontoDePago.Get(fdp).As(EditText).text, Starter.mesaActual, listaMontoDePago.Get(fdp).As(EditText).text, Starter.comensalesActuales))
' Log(tipoPago)
Starter.ticketActual = sigTicket
Private tm As Map = CreateMap("ticket":sigTicket, "pago":tipoPago)
listaTickets.Add(tm) 'Agregamos el ticket y pago a la lista para imprimir el ticket con estos datos al llamar b_imprimirTicket_Click
Next
Else
'Pago con tarjeta
tipoPago = "TARJETA"
Log(">>>>>>>> UN SOLO PAGO")
formaPago = listaFormaDePago.Get(0)
If formaPago = "Efectivo" Then
tipoPago = "EFECTIVO"
Else
'Pago con tarjeta
tipoPago = "TARJETA"
End If
Private sigTicket As String = Subs.traeConsecutivoTicket("CERRADA", tipoPago)
Starter.skmt.ExecNonQuery($"update CAT_MESAS set M_PAGO = null, M_TICKET = null, M_ESTATUS = null, M_MESERO = null, M_COMENSALES = null where M_ID = '${Starter.mesaActual}'"$)
Starter.skmt.ExecNonQuery($"update PEDIDO set PE_TIPO = '${tipoPago}', PE_TICKET = '${sigTicket}' where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and PE_TICKET = '${Starter.ticketActual}'"$)
Private laPropina As String = "0"
If et_propina.Text <> "" Then
laPropina = et_propina.Text
End If
Starter.skmt.ExecNonQuery($"update PEDIDO_TICKET set PT_PAGO = '${tipoPago}', PT_TICKET = '${sigTicket}', PT_TARJETA = '${formaPago}', PT_PROPINA = '${laPropina}', PT_PAGO_PROPINA = '${cb_pagoPropina.SelectedItem}' where PT_MESA = '${Starter.mesaActual}' and PT_TICKET = '${Starter.ticketActual}' and PT_PAGO = 'VENTA'"$)
' Log(tipoPago)
Starter.ticketActual = sigTicket
Private tm As Map = CreateMap("ticket":sigTicket, "pago":tipoPago)
listaTickets.Add(tm) 'Agregamos el ticket y pago a la lista para imprimir el ticket con estos datos al llamar b_imprimirTicket_Click
End If
Private sigTicket As String = Subs.traeConsecutivoTicket("CERRADA", tipoPago)
Starter.skmt.ExecNonQuery($"update CAT_MESAS set M_PAGO = null, M_TICKET = null, M_ESTATUS = null, M_MESERO = null, M_COMENSALES = null where M_ID = '${Starter.mesaActual}'"$)
' Log($"update CAT_MESAS set M_PAGO = null, M_TICKET = null, M_ESTATUS = null, M_MESERO = null, M_COMENSALES = null where M_ID = '${Starter.mesaActual}'"$)
Starter.skmt.ExecNonQuery($"update PEDIDO set PE_TIPO = '${tipoPago}', PE_TICKET = '${sigTicket}' where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and PE_TICKET = '${Starter.ticketActual}'"$)
' Log($"update PEDIDO set PE_TIPO = '${tipoPago}', PE_TICKET = '${sigTicket}' where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA' and PE_TICKET = '${Starter.ticketActual}'"$)
Private laPropina As String = "0"
If et_propina.Text <> "" Then
laPropina = et_propina.Text
' Starter.skmt.ExecNonQuery($"insert into PROPINAS (PR_MESA, PR_TICKET, PR_PAGO, PR_PROPINA, PT_MESERO, PR_FECHA) values ('${Starter.mesaActual}', '${sigTicket}', '${tipoPago}', '${laPropina}', '${Starter.meseroActual}', '${DateTime.Date(DateTime.Now)}')"$)
End If
Starter.skmt.ExecNonQuery($"update PEDIDO_TICKET set PT_PAGO = '${tipoPago}', PT_TICKET = '${sigTicket}', PT_TARJETA = '${cb_pago.SelectedItem}', PT_PROPINA = '${laPropina}', PT_PAGO_PROPINA = '${cb_pagoPropina.SelectedItem}' where PT_MESA = '${Starter.mesaActual}' and PT_TICKET = '${Starter.ticketActual}' and PT_PAGO = 'VENTA'"$)
' Log($"update PEDIDO_TICKET set PT_PAGO = '${tipoPago}', PT_TICKET = '${sigTicket}' where PT_MESA = '${Starter.mesaActual}' and PT_TICKET = '${Starter.ticketActual}' and PT_PAGO = 'VENTA"$)
Log(tipoPago)
Starter.ticketActual = sigTicket
b_imprimirTicket_Click
' Log("Close Request")
' B4XPage_CloseRequest
Sleep(1000)
WobbleMenu1_Tab1Click
End Sub
@@ -1257,7 +1336,7 @@ Sub Printer1_Error
End Sub
Sub b_imp_Click
Private imprimirAqui As Boolean = False
Private imprimirAqui As Boolean = Starter.imprimirTicket
Private sDate, sTime As String
Private c As Cursor
sv_resumen.Panel.Height = p_resumen.Height
@@ -1267,33 +1346,36 @@ Sub b_imp_Click
la_cuenta.Initialize("2")
b_imp.Enabled = False
ProgressDialogShow("Imprimiendo, un momento ...")
Printer1.DisConnect
If Not(Printer1.IsConnected) Then
If Starter.logger Then Log("conectando 1")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada)
Sleep(1000)
cont = cont + 1
If cont = 7 Then Printer1.Connect 'Tratamos de reconectar
If cont > 15 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
Else
If Starter.logger Then Log("conectando 2")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
Sleep(1000)
cont = cont + 1
If cont = 2 Then Printer1.Connect
If cont > 4 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
If imprimirAqui Then
Printer1.DisConnect
If Not(Printer1.IsConnected) Then
If Starter.logger Then Log("conectando 1")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada)
Sleep(1000)
cont = cont + 1
If cont = 7 Then Printer1.Connect 'Tratamos de reconectar
If cont > 15 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
Else
If Starter.logger Then Log("conectando 2")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
Sleep(1000)
cont = cont + 1
If cont = 2 Then Printer1.Connect
If cont > 4 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
End If
Printer1.Reset
End If
Printer1.Reset
Dim bmp As Bitmap
bmp.InitializeResize(File.DirAssets, "logoLanter2.bmp", 376, 129, True) 'ignore
Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
@@ -1325,21 +1407,28 @@ Sub b_imp_Click
For i = 0 To c.RowCount - 1
c.Position = i
ticket = c.GetString("PE_TICKET")
If c.GetString("PE_TIPO") = "TARJETA" Then tipo = "Pago Tarjeta " Else tipo = "Pago Efectivo "
If c.GetString("PE_TIPO") = "TARJETA" Then
tipo = "Pago Tarjeta "
Else If c.GetString("PE_TIPO") = "EFECTIVO" Then
tipo = "Pago Efectivo "
End If
If mesaAnt <> c.GetString("PE_MESA") Then
Private tm As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as totalMesa from PEDIDO_TICKET where PT_MESA = '${c.GetString("PE_MESA")}'"$)
Private tm As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as totalMesa from PEDIDO_TICKET where PT_MESA = '${c.GetString("PE_MESA")}' and PT_PAGO <> 'MULTI-TICKET'"$)
tm.Position = 0
cs.Color(Colors.red).Append($"Mesa ${c.GetString("PE_MESA")} - $${NumberFormat2(tm.GetString("totalMesa"), 1, 2, 2, True)} ${CRLF}"$).pop
If imprimirAqui Then Printer1.WriteString($"Mesa ${c.GetString("PE_MESA")} - $${NumberFormat2(tm.GetString("totalMesa"), 1, 2, 2, True)} ${CRLF}"$)
Private tipoAnt As String = ""
End If
If tipoAnt <> c.GetString("PE_TIPO") Then
If tipoAnt <> c.GetString("PE_TIPO") And c.GetString("PE_TIPO") <> "MULTI-TICKET" Then
Private tpt As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as totalTipo from PEDIDO_TICKET where PT_MESA = '${c.GetString("PE_MESA")}' and PT_PAGO = '${c.GetString("PE_TIPO")}'"$)
tpt.Position = 0
cs.Color(Colors.red).Append($" * ${tipo} - $${NumberFormat2(tpt.GetString("totalTipo"), 1, 2, 2, True)} ${CRLF}"$).pop
If imprimirAqui Then Printer1.WriteString($" * ${tipo} - $${NumberFormat2(tpt.GetString("totalTipo"), 1, 2, 2, True)} ${CRLF}"$)
End If
cs.Append($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall
If imprimirAqui Then Printer1.WriteString($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$)
If c.GetString("PE_TIPO") <> "MULTI-TICKET" Then
cs.Append($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall
If imprimirAqui Then Printer1.WriteString($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$)
End If
mesaAnt = c.GetString("PE_MESA")
tipoAnt = c.GetString("PE_TIPO")
Next
@@ -1347,10 +1436,12 @@ Sub b_imp_Click
Private tt As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as total from PEDIDO_TICKET where PT_PAGO = 'TARJETA'"$)
Private te As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as total from PEDIDO_TICKET where PT_PAGO = 'EFECTIVO'"$)
tt.Position = 0 : te.Position = 0
Private totalEfectivo As String = 0
If te.GetString("total") <> Null Then totalEfectivo = te.GetString("total")
cs.color(Colors.green).Append($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall
If imprimirAqui Then Printer1.WriteString($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$)
cs.color(Colors.green).Append($"Total Efectivo: ${NumberFormat2(te.GetString("total"), 1,2,2,True)}${CRLF}"$).popall
If imprimirAqui Then Printer1.WriteString($"Total Efectivo: ${NumberFormat2(te.GetString("total"), 1,2,2,True)}${CRLF}"$)
cs.color(Colors.green).Append($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$).popall
If imprimirAqui Then Printer1.WriteString($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$)
l_resumen.Text = cs
l_resumen.Height = su.MeasureMultilineTextHeight(l_resumen, l_resumen.Text)
@@ -1366,9 +1457,166 @@ Sub b_imp_Click
' Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
' Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
' Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
' Printer1.WriteString(CRLF)
' Printer1.WriteString(CRLF)
' Printer1.WriteString(CRLF)
Sleep(1000)
Printer1.DisConnect
Catch
ToastMessageShow("Error en la impresion 2.", True)
Printer1.Disconnect
B4XPages.ShowPage("Principal")
End Try
Sleep(1000)
b_imp.Enabled = True
ProgressDialogHide
End Sub
Sub b_imp_LongClick
Private imprimirAqui As Boolean = Starter.imprimirTicket
Private sDate, sTime As String
Private c As Cursor
sv_resumen.Panel.Height = p_resumen.Height
cs.Initialize
Private l_total, la_cuenta As Label
l_total.Initialize("l")
la_cuenta.Initialize("2")
b_imp.Enabled = False
ProgressDialogShow("Imprimiendo, un momento ...")
If imprimirAqui Then
Printer1.DisConnect
If Not(Printer1.IsConnected) Then
If Starter.logger Then Log("conectando 1")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada)
Sleep(1000)
cont = cont + 1
If cont = 7 Then Printer1.Connect 'Tratamos de reconectar
If cont > 15 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
Else
If Starter.logger Then Log("conectando 2")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
Sleep(1000)
cont = cont + 1
If cont = 2 Then Printer1.Connect
If cont > 4 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
End If
Printer1.Reset
End If
' Dim bmp As Bitmap
' bmp.InitializeResize(File.DirAssets, "logoLanter2.bmp", 376, 129, True) 'ignore
' Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
' myimage = Printer1.DitherImage2D(myimage, 128)
' myimage= Printer1.PackImage(myimage)
' If imprimirAqui Then Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
' If imprimirAqui Then Printer1.WriteString(Printer1.REVERSE)
' If imprimirAqui Then Printer1.PrintImage(myimage)
' If imprimirAqui Then Printer1.WriteString(Printer1.UNREVERSE)
Try
DateTime.DateFormat = "yyyymmdd"
sDate = DateTime.Date(DateTime.Now)
If imprimirAqui Then Printer1.WriteString("LA LANTERNA RISTORANTE" & CRLF)
DateTime.DateFormat = "MM/dd/yyyy"
sDate = DateTime.Date(DateTime.Now)
sTime = DateTime.Time(DateTime.Now)
Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$)
Log(c.RowCount)
If c.RowCount = 0 Then 'Si no hay mesas abiertas entonces ...
Private c As Cursor = Starter.skmt.ExecQuery("select distinct CAT_GP_CLASIF, PE_PRONOMBRE, sum(pe_cant) as cuantos from pedido join CAT_GUNAPROD on cat_gp_id = PE_PROID group by PE_PRONOMBRE order by CAT_GP_CLASIF, PE_PRONOMBRE")
If c.RowCount > 0 Then
c.Position = 0
Private catAnt As String = ""
Private catTotal As String = 0
' Private tipoAnt As String = ""
' Private tipo As String
' Private ticket As String
If imprimirAqui Then Printer1.WriteString($"Fecha: ${sDate} ${sTime} ${CRLF}${CRLF}"$)
For i = 0 To 30 ' c.RowCount - 1
c.Position = i
' ticket = c.GetString("PE_TICKET")
' If c.GetString("PE_TIPO") = "TARJETA" Then
' tipo = "Pago Tarjeta "
' Else If c.GetString("PE_TIPO") = "EFECTIVO" Then
' tipo = "Pago Efectivo "
' End If
' Log($"${catAnt} - ${c.GetString("CAT_GP_CLASIF")}"$)
If catAnt <> c.GetString("CAT_GP_CLASIF") Then
' Private tm As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as totalMesa from PEDIDO_TICKET where PT_MESA = '${c.GetString("PE_MESA")}' and PT_PAGO <> 'MULTI-TICKET'"$)
If catAnt <> "" Then
cs.Color(Colors.Green).Append($"Total ${catAnt}: ${catTotal}${CRLF}"$).pop
If imprimirAqui Then
Printer1.WriteString(Printer1.BOLD)
Printer1.WriteString($"Total ${catAnt}: ${catTotal}${CRLF}${CRLF}"$)
Printer1.WriteString(Printer1.NOBOLD)
End If
Log($">>>>>>> CAT TOTAL ${catAnt}: ${catTotal}"$ )
End If
' tm.Position = 0
cs.Color(Colors.red).Append($"** ${c.GetString("CAT_GP_CLASIF")} **${CRLF}"$).pop
Printer1.WriteString(Printer1.BOLD)
If imprimirAqui Then Printer1.WriteString($"** ${c.GetString("CAT_GP_CLASIF")} **${CRLF}"$)
Printer1.WriteString(Printer1.NOBOLD)
Private tipoAnt As String = ""
catTotal = 0
End If
Private elNombre As String = c.GetString("PE_PRONOMBRE")
If elNombre.Length > 28 Then elNombre = elNombre.SubString2(0, 28)
Log($"${elNombre.Length} - ${elNombre}"$)
' If imprimirEste Then Printer1.WriteString($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
' Log($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
cs.Color(Colors.DarkGray).Append($"${elNombre} - ${c.GetString("cuantos")} ${CRLF}"$).pop
If imprimirAqui Then Printer1.WriteString($"${elNombre}${Subs.alineaDerecha(c.GetString("cuantos"), (31 - elNombre.Length), ".")} ${CRLF}"$)
catTotal = catTotal + c.GetString("cuantos")
Private tipoAnt As String = ""
' If tipoAnt <> c.GetString("PE_TIPO") And c.GetString("PE_TIPO") <> "MULTI-TICKET" Then
' Private tpt As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as totalTipo from PEDIDO_TICKET where PT_MESA = '${c.GetString("PE_MESA")}' and PT_PAGO = '${c.GetString("PE_TIPO")}'"$)
' tpt.Position = 0
' cs.Color(Colors.red).Append($" * ${tipo} - $${NumberFormat2(tpt.GetString("totalTipo"), 1, 2, 2, True)} ${CRLF}"$).pop
' If imprimirAqui Then Printer1.WriteString($" * ${tipo} - $${NumberFormat2(tpt.GetString("totalTipo"), 1, 2, 2, True)} ${CRLF}"$)
' End If
' If c.GetString("PE_TIPO") <> "MULTI-TICKET" Then
' cs.Append($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall
' If imprimirAqui Then Printer1.WriteString($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$)
' End If
catAnt = c.GetString("CAT_GP_CLASIF")
' tipoAnt = c.GetString("PE_TIPO")
Next
If imprimirAqui Then Printer1.WriteString(CRLF)
' Private tt As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as total from PEDIDO_TICKET where PT_PAGO = 'TARJETA'"$)
' Private te As Cursor = Starter.skmt.ExecQuery($"select sum(PT_MONTO) as total from PEDIDO_TICKET where PT_PAGO = 'EFECTIVO'"$)
' tt.Position = 0 : te.Position = 0
' Private totalEfectivo As String = 0
' If te.GetString("total") <> Null Then totalEfectivo = te.GetString("total")
' cs.color(Colors.green).Append($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$).popall
' If imprimirAqui Then Printer1.WriteString($"${CRLF}Total Tarjeta: ${NumberFormat2(tt.GetString("total"), 1,2,2,True)}${CRLF}"$)
' cs.color(Colors.green).Append($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$).popall
' If imprimirAqui Then Printer1.WriteString($"Total Efectivo: ${NumberFormat2(totalEfectivo, 1,2,2,True)}${CRLF}"$)
l_resumen.Text = cs
l_resumen.Height = su.MeasureMultilineTextHeight(l_resumen, l_resumen.Text)
sv_resumen.Panel.Height = l_resumen.Height
End If
Subs.panelVisible(p_transparenteResumen, 0, 0)
Else
ToastMessageShow("¡Es necesario que NO haya mesas abiertas para realizar el cierre!", True)
End If
Sleep(1000)
Printer1.DisConnect
Catch
@@ -1716,6 +1964,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_TIPO = 'EFECTIVO'"$)
Starter.skmt.ExecNonQuery($"delete from PEDIDO_TICKET where PT_PAGO = 'EFECTIVO'"$)
llenaHistorial
Log(">>>>> ENVIO TERMINADO")
ToastMessageShow("¡Envío terminado!", False)
End If
If reqManager.errorList.Size > 0 Then Log(">>>>> ERRORES - " & reqManager.errorList)
@@ -1726,8 +1975,15 @@ Private Sub b_regresarProds_Click
WobbleMenu1_Tab1Click
End Sub
Sub imprimeTicket (ticket As String, pago As String) As ResumableSub
Starter.ticketActual = ticket
tipoPago = pago
b_imprimirTicket_Click
End Sub
Private Sub b_imprimirTicket_Click
Private imprimirEste As Boolean = False
Private imprimirEste As Boolean = Starter.imprimirTicket
' Log(imprimirEste)
Private logger As Boolean = True
Private TAMANO As Int
Private ESPACIO As Int
@@ -1739,31 +1995,33 @@ Private Sub b_imprimirTicket_Click
b_imp.Enabled = False
' If l_total.Text <> Null And l_total.Text <> "null" Then Subs.ponImpreso(la_cuenta.Text) 'Solo lo marcamos como impreso si tiene venta (total > 0).
ProgressDialogShow("Imprimiendo, un momento ...")
Printer1.DisConnect
If Not(Printer1.IsConnected) Then
If Starter.logger Then Log("conectando 1")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada)
Sleep(1000)
cont = cont + 1
If cont = 7 Then Printer1.Connect 'Tratamos de reconectar
If cont > 15 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
Else
If Starter.logger Then Log("conectando 2")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
Sleep(1000)
cont = cont + 1
If cont = 2 Then Printer1.Connect
If cont > 4 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
If imprimirEste Then
Printer1.DisConnect
If Not(Printer1.IsConnected) Then
If Starter.logger Then Log("conectando 1")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada)
Sleep(1000)
cont = cont + 1
If cont = 7 Then Printer1.Connect 'Tratamos de reconectar
If cont > 15 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
Else
If Starter.logger Then Log("conectando 2")
Printer1.Connect
Private cont As Int = 0
Do While Not(impresoraConectada) Or Not(Printer1.IsConnected)
Sleep(1000)
cont = cont + 1
If cont = 2 Then Printer1.Connect
If cont > 4 Then impresoraConectada = True
Loop
Sleep(500)
impresoraConectada = False
End If
End If
DateTime.DateFormat = "MM/dd/yyyy"
Private sDate,sTime As String
@@ -1778,109 +2036,116 @@ Private Sub b_imprimirTicket_Click
ESPACIO = 14
BLANCO = " " 'esto para las impresoras nuevas
'printer.Initialize(cmp20.OutputStream)
Printer1.Reset
If imprimirEste Then Printer1.Reset
Dim bmp As Bitmap
bmp.InitializeResize(File.DirAssets, "logoLanter2.bmp", 376, 129, True) 'ignore
Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
myimage = Printer1.DitherImage2D(myimage, 128)
myimage= Printer1.PackImage(myimage)
If imprimirEste Then Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
If imprimirEste Then Printer1.WriteString(Printer1.REVERSE)
If imprimirEste Then Printer1.PrintImage(myimage)
If imprimirEste Then Printer1.WriteString(Printer1.UNREVERSE)
Try
If imprimirEste Then Printer1.WriteString("RESTAURANTE Y COCINA ITALIANA PEVEL" & CRLF)
If logger Then Log("RESTAURANTE Y COCINA ITALIANA PEVEL" & CRLF)
If imprimirEste Then Printer1.WriteString("RFC: RCI230918DAA " & CRLF)
If logger Then Log("RFC: RCI230918DAA" & CRLF)
If imprimirEste Then Printer1.WriteString("REG FSC: GENERAL DE LEY DE PERSONAS MORALES" & CRLF)
If logger Then Log("REG FSC: GENERAL DE LEY DE PERSONAS MORALES" & CRLF)
If imprimirEste Then Printer1.WriteString("DOM FSC: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If logger Then Log("DOM FSC: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If imprimirEste Then Printer1.WriteString("EXPEDIDO EN: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If logger Then Log("EXPEDIDO EN: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If imprimirEste Then Printer1.WriteString("TEL: 55 5207 9969" & CRLF)
If logger Then Log("TEL: 55 5207 9969" & CRLF)
If imprimirEste Then Printer1.WriteString("No. Ticket: " & Starter.ticketActual & CRLF)
If logger Then Log("No. Ticket: " & Starter.ticketActual & CRLF)
If imprimirEste Then Printer1.WriteString("CDMX " & sDate &" " & sTime & CRLF)
If logger Then Log("CDMX " & sDate &" " & sTime & CRLF)
If imprimirEste Then Printer1.WriteString($"Mesero: ${Starter.meseroActual}${Subs.rellenaHasta(15 - Starter.meseroActual.Length)}${Printer1.BOLD} # Mesa${CRLF}"$)
If logger Then Log($"Mesero: ${Starter.meseroActual}${Subs.rellenaHasta(15 - Starter.meseroActual.Length)} # Mesa${CRLF}"$)
If imprimirEste Then Printer1.WriteString(Printer1.NOBOLD)
If imprimirEste Then Printer1.WriteString($"Comensales: ${Starter.comensalesActuales}${Subs.rellenaHasta(14 - Starter.mesaActual.Length)}${Printer1.BOLD} ${Starter.mesaActual}${CRLF}"$)
If logger Then Log($"Comensales: ${Starter.comensalesActuales}${Subs.rellenaHasta(14 - Starter.mesaActual.Length)}${Starter.mesaActual}${CRLF}"$)
' If imprimirEste Then Printer1.WriteString($"${Printer1.BOLD}${Subs.alineaDerecha(Starter.mesaActual, 28, " ")}"$)
' If logger Then Log($"${Subs.alineaDerecha(Starter.mesaActual, 28, " ")}"$)
' If imprimirEste Then Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
' If logger Then Log("ID.Cliente: " & la_cuenta.Text & CRLF)
If imprimirEste Then Printer1.WriteString(" " & CRLF)
c = Starter.skmt.ExecQuery($"select * from PEDIDO where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = '${tipoPago}' and PE_TICKET = '${Starter.ticketActual}'"$)
If c.RowCount > 0 Then
' LogColor(listaTickets, Colors.red)
For k = 0 To listaTickets.Size - 1 'Por cada ticket y pago de la lista imprimimos un ticlet.
LogColor($">>>>>> INICIA IMPRESION DE TICKET ${listaTickets.Get(k).As(Map).Get("ticket")} <<<<<<<<<<<<"$, Colors.Red)
Starter.ticketActual = listaTickets.Get(k).As(Map).Get("ticket")
tipoPago = listaTickets.Get(k).As(Map).Get("pago")
Try
If imprimirEste Then Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
If imprimirEste Then Printer1.WriteString(Printer1.REVERSE)
If imprimirEste Then Printer1.PrintImage(myimage)
If imprimirEste Then Printer1.WriteString(Printer1.UNREVERSE)
If imprimirEste Then Printer1.WriteString("RESTAURANTE Y COCINA ITALIANA PEVEL" & CRLF)
If logger Then Log("RESTAURANTE Y COCINA ITALIANA PEVEL" & CRLF)
If imprimirEste Then Printer1.WriteString("RFC: RCI230918DAA " & CRLF)
If logger Then Log("RFC: RCI230918DAA" & CRLF)
If imprimirEste Then Printer1.WriteString("REG FSC: GENERAL DE LEY DE PERSONAS MORALES" & CRLF)
If logger Then Log("REG FSC: GENERAL DE LEY DE PERSONAS MORALES" & CRLF)
If imprimirEste Then Printer1.WriteString("DOM FSC: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If logger Then Log("DOM FSC: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If imprimirEste Then Printer1.WriteString("EXPEDIDO EN: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If logger Then Log("EXPEDIDO EN: PASEO DE LAS PALMAS NO. 275, LOCAL B" & CRLF)
If imprimirEste Then Printer1.WriteString("TEL: 55 5207 9969" & CRLF)
If logger Then Log("TEL: 55 5207 9969" & CRLF)
If imprimirEste Then Printer1.WriteString("No. Ticket: " & Starter.ticketActual & CRLF)
If logger Then Log("No. Ticket: " & Starter.ticketActual & CRLF)
If imprimirEste Then Printer1.WriteString("CDMX " & sDate &" " & sTime & CRLF)
If logger Then Log("CDMX " & sDate &" " & sTime & CRLF)
If imprimirEste Then Printer1.WriteString($"Mesero: ${Starter.meseroActual}${Subs.rellenaHasta(15 - Starter.meseroActual.Length)}${Printer1.BOLD} # Mesa${CRLF}"$)
If logger Then Log($"Mesero: ${Starter.meseroActual}${Subs.rellenaHasta(15 - Starter.meseroActual.Length)} # Mesa${CRLF}"$)
If imprimirEste Then Printer1.WriteString(Printer1.NOBOLD)
For i = 0 To c.RowCount - 1
c.Position = i
Private elNombre As String = c.GetString("PE_PRONOMBRE")
If elNombre.Length > 30 Then elNombre.SubString2(0, 30)
If imprimirEste Then Printer1.WriteString($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
Log($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
Next
End If
c = Starter.skmt.ExecQuery($"select *, ifnull(PT_PROPINA, "0") as propina from PEDIDO_TICKET where PT_MESA = '${Starter.mesaActual}' and PT_PAGO = '${tipoPago}' and PT_TICKET = '${Starter.ticketActual}'"$)
' Log($"Rowcount: ${c.RowCount}"$)
If c.RowCount > 0 Then
c.Position = 0
' Log(c.GetString("propina"))
Private elTotal As String = c.GetString("PT_MONTO")
If c.GetString("propina") <> 0 And c.GetString("PT_PAGO_PROPINA") = "Tarjeta" Then
If imprimirEste Then Printer1.WriteString($"${CRLF}Propina: $${NumberFormat2(c.GetString("PT_PROPINA"), 1, 2, 2, True)}"$)
If logger Then Log($"${CRLF}Propina: $${NumberFormat2(c.GetString("PT_PROPINA"), 1, 2, 2, True)}"$)
elTotal = elTotal + c.GetString("PT_PROPINA")
If imprimirEste Then Printer1.WriteString($"Comensales: ${Starter.comensalesActuales}${Subs.rellenaHasta(14 - Starter.mesaActual.Length)}${Printer1.BOLD} ${Starter.mesaActual}${CRLF}"$)
If logger Then Log($"Comensales: ${Starter.comensalesActuales}${Subs.rellenaHasta(14 - Starter.mesaActual.Length)}${Starter.mesaActual}${CRLF}"$)
' If imprimirEste Then Printer1.WriteString($"${Printer1.BOLD}${Subs.alineaDerecha(Starter.mesaActual, 28, " ")}"$)
' If logger Then Log($"${Subs.alineaDerecha(Starter.mesaActual, 28, " ")}"$)
' If imprimirEste Then Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
' If logger Then Log("ID.Cliente: " & la_cuenta.Text & CRLF)
If imprimirEste Then Printer1.WriteString(" " & CRLF)
c = Starter.skmt.ExecQuery($"select * from PEDIDO where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = '${tipoPago}' and PE_TICKET = '${Starter.ticketActual}'"$)
' Log($"select * from PEDIDO where PE_MESA = '${Starter.mesaActual}' and PE_TIPO = '${tipoPago}' and PE_TICKET = '${Starter.ticketActual}'"$)
' Log(c.RowCount)
If c.RowCount > 0 Then
If imprimirEste Then Printer1.WriteString(Printer1.NOBOLD)
For i = 0 To c.RowCount - 1
c.Position = i
Private elNombre As String = c.GetString("PE_PRONOMBRE")
If elNombre.Length > 30 Then elNombre.SubString2(0, 30)
If imprimirEste Then Printer1.WriteString($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
Log($"${c.GetString("PE_CANT")} ${elNombre}${CRLF}${Subs.alineaDerecha("$"&NumberFormat2(c.GetString("PE_COSTO_TOT"), 1, 2, 2, True), 30, ".")}${CRLF}"$)
Next
End If
If imprimirEste Then Printer1.WriteString($"${CRLF}Total: $${NumberFormat2(elTotal, 1, 2, 2, True)}"$)
If logger Then Log($"${CRLF}Total: $${NumberFormat2(elTotal, 1, 2, 2, True)}"$)
If imprimirEste Then Printer1.WriteString($"${CRLF}${n2t.NumberToWords(NumberFormat2(elTotal, 1, 2, 2, False))}"$)
If logger Then Log($"${CRLF}${n2t.NumberToWords(NumberFormat2(elTotal, 1, 2, 2, False))}"$)
c = Starter.skmt.ExecQuery($"select *, ifnull(PT_PROPINA, "0") as propina from PEDIDO_TICKET where PT_MESA = '${Starter.mesaActual}' and PT_PAGO = '${tipoPago}' and PT_TICKET = '${Starter.ticketActual}'"$)
' Log($"Rowcount: ${c.RowCount}"$)
If c.RowCount > 0 Then
c.Position = 0
' Log(c.GetString("propina"))
Private elTotal As String = c.GetString("PT_MONTO")
' If c.GetString("propina") <> 0 And c.GetString("PT_PAGO_PROPINA") = "Tarjeta" Then 'Se comento porque lo propina no se debe de sumar al ticket.
' If imprimirEste Then Printer1.WriteString($"${CRLF}Propina: $${NumberFormat2(c.GetString("PT_PROPINA"), 1, 2, 2, True)}"$)
' If logger Then Log($"${CRLF}Propina: $${NumberFormat2(c.GetString("PT_PROPINA"), 1, 2, 2, True)}"$)
' elTotal = elTotal + c.GetString("PT_PROPINA")
' End If
If imprimirEste Then Printer1.WriteString($"${CRLF}Total: $${NumberFormat2(elTotal, 1, 2, 2, True)}"$)
If logger Then Log($"${CRLF}Total: $${NumberFormat2(elTotal, 1, 2, 2, True)}"$)
If imprimirEste Then Printer1.WriteString($"${CRLF}${n2t.NumberToWords(NumberFormat2(elTotal, 1, 2, 2, False))}"$)
If logger Then Log($"${CRLF}${n2t.NumberToWords(NumberFormat2(elTotal, 1, 2, 2, False))}"$)
If tipoPago <> "VENTA" Then
If imprimirEste Then Printer1.WriteString($"${CRLF}Forma de pago: ${c.GetString("PT_PAGO")}"$)
If logger Then Log($"${CRLF}Forma de pago: ${c.GetString("PT_PAGO")}"$)
End If
End If
If imprimirEste Then Printer1.WriteString(Printer1.UNREVERSE)
If imprimirEste Then Printer1.WriteString(Printer1.NOBOLD)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If tipoPago <> "VENTA" Then
If imprimirEste Then Printer1.WriteString($"${CRLF}Forma de pago: ${c.GetString("PT_PAGO")}"$)
If logger Then Log($"${CRLF}Forma de pago: ${c.GetString("PT_PAGO")}"$)
If imprimirEste Then Printer1.WriteString("----------- PAGADO -----------" & CRLF)
If logger Then Log("------------ PAGADO ----------" & CRLF)
Else
If imprimirEste Then Printer1.WriteString("---------- NO PAGADO ---------" & CRLF)
If logger Then Log("---------- NO PAGADO ---------" & CRLF)
End If
End If
If imprimirEste Then Printer1.WriteString(Printer1.UNREVERSE)
If imprimirEste Then Printer1.WriteString(Printer1.NOBOLD)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If tipoPago <> "VENTA" Then
If imprimirEste Then Printer1.WriteString("----------- PAGADO -----------" & CRLF)
If logger Then Log("------------ PAGADO ----------" & CRLF)
Else
If imprimirEste Then Printer1.WriteString("---------- NO PAGADO ---------" & CRLF)
If logger Then Log("---------- NO PAGADO ---------" & CRLF)
End If
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If imprimirEste Then Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
If logger Then Log("----ESTE TICKET NO ES UN -----" & CRLF)
If imprimirEste Then Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
If logger Then Log("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
If imprimirEste Then Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
If logger Then Log("--------INFORMATIVO-----------" & CRLF)
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
Sleep(1000)
Printer1.DisConnect
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If imprimirEste Then Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
If logger Then Log("----ESTE TICKET NO ES UN -----" & CRLF)
If imprimirEste Then Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
If logger Then Log("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
If imprimirEste Then Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
If logger Then Log("--------INFORMATIVO-----------" & CRLF)
If imprimirEste Then Printer1.WriteString("------------------------------" & CRLF)
If logger Then Log("------------------------------" & CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
If imprimirEste Then Printer1.WriteString(CRLF)
Catch
Log(LastException)
End Try
Sleep(1000)
Printer1.DisConnect
Catch
Log(LastException)
End Try
Next
Sleep(1000)
b_imp.Enabled = True
ProgressDialogHide
@@ -1892,5 +2157,136 @@ Private Sub cb_pagoPropina_SelectedIndexChanged (Index As Int)
End Sub
Private Sub p_transparenteCambioMesa_Click
'Para evitar que el clic en pantalla no se siga hacia atras
End Sub
Private Sub l_prodX_LongClick
Log(Sender.As(Label).tag)
Private m As Map = Sender.As(Label).tag.As(Map)
If m.Get("prod").As(String).Contains("Alimentos Varios") Then
p_renombraVarios.BringToFront
et_nombreVariable.Text = m.Get("prod")
et_nombreVariable.tag = m
et_precioVariable.Text = m.Get("precio")
p_renombraVarios.Visible = True
Else
ToastMessageShow("Este artículo no es editable", False)
End If
End Sub
Private Sub b_renombraVarios_Click
p_renombraVarios.Visible = False
Private m As Map = et_nombreVariable.tag.As(Map)
' Private c As Cursor=Starter.skmt.ExecQuery($"select * from pedido where PE_PROID = '${m.Get("id")}' and PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA'"$)
' Log($"select * from pedido where PE_PROID = '${m.Get("id")}' and PE_TICKET = '${Starter.ticketActual}' and PE_MESA = '${Starter.mesaActual}' and PE_TIPO = 'VENTA'"$)
' If c.RowCount > 0 Then
' Starter.skmt.ExecNonQuery($"update PEDIDO set PE_PRONOMBRE = '${et_nombreVariable.text}', PE_COSTOU = '${et_precioVariable.text}' where PE_PROID = '${m.Get("id")}' and PE_TIPO = 'VENTA' and PE_MESA = '${Starter.mesaActual}' and PE_TICKET = '${Starter.ticketActual}'"$)
' Log($"update PEDIDO set PE_PRONOMBRE = '${et_nombreVariable.text}', PE_COSTOU = '${et_precioVariable.text}' where PE_PROID = '${et_nombreVariable.tag}' and PE_TIPO = 'VENTA' and PE_MESA = '${Starter.mesaActual}' and PE_TICKET = '${Starter.ticketActual}'"$)
' Else
Private cant As Int = m.Get("cant")
If cant = 0 Then cant = 1
Subs.actualizaProducto(et_precioVariable.text, cant, et_nombreVariable.Text, m.Get("id"), Starter.ticketActual, DateTime.Now, Starter.meseroActual, Starter.mesaActual, et_precioVariable.Text, "VENTA", Starter.comensalesActuales)
' End If
LlenaProdsLL(Null, Null)
End Sub
Private Sub p_transparentePago_Click
'Para evitar que el clic en pantalla no se siga hacia atras
End Sub
Private Sub b_agregarPago_Click
Starter.formasDePago = Starter.formasDePago + 1
' Log(Starter.formasDePago)
agregaFormaDePago(l_tipoPago.Left, (70 * (Starter.formasDePago - 1)), Starter.formasDePago)
End Sub
Sub agregaFormaDePago(left0 As Int, top0 As Int, tag0 As Int)
Log("agregaFormaDePago |" & top0 & "|" & tag0)
Private p_num As Panel
p_num.Initialize("")
p_num.LoadLayout("formaPago")
If Starter.formasDePago > 1 Then
p_propina.Top = p_propina.Top + 70
p_formasDePago.Height = p_formasDePago.Height + 70
p_pago.Height = p_pago.Height + 70
b_pagoCerrar.Top = b_pagoCerrar.Top + 70
End If
l_tipoPago2.Text = $"${Starter.formasDePago}:"$
cb_pago2.Tag = tag0
et_montoPago2.Tag = tag0
cb_pago2.SetItems(Array As String("American Express", "Visa/Mastercard", "Efectivo"))
p_num.Tag = tag0
listaFormasDePagoCB.Add(cb_pago2)
listaFormaDePago.Add(cb_pago2.SelectedItem)
listaMontoDePago.Add(et_montoPago2)
p_formasDePago.AddView(p_num, left0, top0, 340dip, 38dip)
b_pagoCerrar.Enabled = False
End Sub
Private Sub cb_pago2_SelectedIndexChanged (Index As Int)
Log(Sender.As(B4XComboBox).tag)
Log(Sender.As(B4XComboBox).SelectedItem)
listaFormaDePago.Set(Sender.As(B4XComboBox).tag - 1, Sender.As(B4XComboBox).SelectedItem)
Log(listaFormaDePago)
End Sub
Private Sub et_montoPago2_TextChanged (Old As String, New As String)
Log("TEXT CHANGED")
Log(Starter.totalActual)
Private subtotal As String = 0
Private enBlanco As Boolean = False
For i = 0 To listaMontoDePago.Size - 1
Log(listaMontoDePago.Get(i).As(EditText).text)
If listaMontoDePago.Get(i).As(EditText).text <> "" Then
subtotal = subtotal + listaMontoDePago.Get(i).As(EditText).text
Else
enBlanco = True
End If
Next
LogColor($"FALTAN ${Starter.totalActual - subtotal}"$, Colors.blue)
If subtotal < Starter.totalActual Then
LogColor($"FALTAN ${Starter.totalActual - subtotal}"$, Colors.red)
l_faltaMonto.Text = $"FALTAN ${NumberFormat2((Starter.totalActual - subtotal), 1, 0, 0, False)}"$
else if subtotal > Starter.totalActual Then
LogColor($"SOBRAN ${subtotal - Starter.totalActual}"$, Colors.red)
l_faltaMonto.Text = $"SOBRAN ${NumberFormat2((subtotal - Starter.totalActual), 1, 0, 0, False)}"$
Else
l_faltaMonto.Text = ""
End If
If listaMontoDePago.Size > 1 And (l_faltaMonto.Text <> "" Or enBlanco) Then
b_pagoCerrar.Enabled = False
Else
b_pagoCerrar.Enabled = True
End If
End Sub
Private Sub et_montoPago2_FocusChanged (HasFocus As Boolean)
Log("FOCUS CHANGED")
Log(Starter.totalActual)
Private subtotal As String = 0
Private enBlanco As Boolean = False
For i = 0 To listaMontoDePago.Size - 1
Log(listaMontoDePago.Get(i).As(EditText).text)
If listaMontoDePago.Get(i).As(EditText).text <> "" Then
subtotal = subtotal + listaMontoDePago.Get(i).As(EditText).text
Else
enBlanco = True
End If
Next
LogColor($"FALTAN ${Starter.totalActual - subtotal}"$, Colors.blue)
If subtotal < Starter.totalActual Then
LogColor($"FALTAN ${Starter.totalActual - subtotal}"$, Colors.red)
l_faltaMonto.Text = $"FALTAN ${NumberFormat2((Starter.totalActual - subtotal), 1, 0, 0, False)}"$
else if subtotal > Starter.totalActual Then
LogColor($"SOBRAN ${subtotal - Starter.totalActual}"$, Colors.red)
l_faltaMonto.Text = $"SOBRAN ${NumberFormat2((subtotal - Starter.totalActual), 1, 0, 0, False)}"$
Else
l_faltaMonto.Text = ""
End If
If listaMontoDePago.Size > 1 And (l_faltaMonto.Text <> "" Or enBlanco) Then
b_pagoCerrar.Enabled = False
Else
b_pagoCerrar.Enabled = True
End If
End Sub

BIN
B4A/Files/formapago.bal Normal file

Binary file not shown.

Binary file not shown.

View File

@@ -1,27 +1,28 @@
Build1=Default,lanterna.keymon.lat,HU2_PUBLIC
File1=candado.png
File10=logoLanter.png
File11=logoLanter_192x192.png
File12=logoLanter2.bmp
File13=logoLanterNegro.bmp
File14=logoLanterNegro.png
File15=logoLanterNegro2.bmp
File16=MainPage.bal
File17=mesasItem.bal
File18=principal.bal
File19=proditem.bal
File10=logoLanter.bmp
File11=logoLanter.png
File12=logoLanter_192x192.png
File13=logoLanter2.bmp
File14=logoLanterNegro.bmp
File15=logoLanterNegro.png
File16=logoLanterNegro2.bmp
File17=MainPage.bal
File18=mesasItem.bal
File19=principal.bal
File2=durakelo.png
File20=proditemCarrito.bal
File21=resumenCont.bal
File22=usuario.png
File23=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.png
File20=proditem.bal
File21=proditemCarrito.bal
File22=resumenCont.bal
File23=usuario.png
File24=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.png
File3=engrane.png
File4=engranes.png
File5=errormanager.bal
File6=kmt.db
File7=login.bal
File8=logo.png
File9=logoLanter.bmp
File6=formaPago.bal
File7=kmt.db
File8=login.bal
File9=logo.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup11=Default Group
@@ -38,6 +39,7 @@ FileGroup20=Default Group
FileGroup21=Default Group
FileGroup22=Default Group
FileGroup23=Default Group
FileGroup24=Default Group
FileGroup3=Default Group
FileGroup4=Default Group
FileGroup5=Default Group
@@ -72,7 +74,7 @@ Module5=EscPosPrinter
Module6=numeroATexto
Module7=Starter
Module8=Subs
NumberOfFiles=23
NumberOfFiles=24
NumberOfLibraries=17
NumberOfModules=8
Version=12.8
@@ -80,7 +82,7 @@ Version=12.8
#Region Project Attributes
#ApplicationLabel: Lanterna
#VersionCode: 1
#VersionName: 4.02.25
#VersionName: 4.03.04
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -17,7 +17,7 @@ ModuleBreakpoints6=
ModuleBreakpoints7=
ModuleBreakpoints8=
ModuleClosedNodes0=
ModuleClosedNodes1=12
ModuleClosedNodes1=
ModuleClosedNodes2=
ModuleClosedNodes3=
ModuleClosedNodes4=
@@ -25,6 +25,6 @@ ModuleClosedNodes5=
ModuleClosedNodes6=
ModuleClosedNodes7=
ModuleClosedNodes8=47,48,68
NavigationStack=Subs,panelWH,545,0,C_Principal,b_pagoCerrar_Click,1060,2,C_Principal,b_imp_Click,1216,2,C_Principal,et_inicioDia_EnterPressed,1172,2,C_Principal,b_abrirMesa_Click,991,0,C_Principal,p_transparenteCambioMesa_Click,1868,0,C_Principal,b_cambioMesa_Click,996,6,C_Principal,p_mesasItem_Click,969,0,Visual Designer,principal.bal,-100,6,C_Principal,p_mesasItem_LongClick,983,6
NavigationStack=C_Principal,agregaFormaDePago,2198,6,Visual Designer,principal.bal,-100,6,C_Principal,b_mesaCerrar_Click,1103,0,C_Principal,Printer1_Connected,1318,0,C_Principal,Printer1_Error,1330,0,C_Principal,b_imp_Click,1390,6,C_Principal,b_imprimirTicket_Click,2057,0,C_Principal,cb_pago2_SelectedIndexChanged,2221,0,C_Principal,b_imp_LongClick,1561,6,C_Principal,B4XPage_Appear,206,6
SelectedBuild=0
VisibleModules=1,7,8,2,3,6
VisibleModules=1,7,8,2,3,6,4

View File

@@ -24,7 +24,9 @@ Sub Process_Globals
Dim Logger As Boolean
Dim rutav As String = ""
Dim tipov As String = "VENTA"
Dim ticketActual, mesaActual, meseroActual, comensalesActuales, mac_impresora As String
Dim ticketActual, mesaActual, meseroActual, comensalesActuales, totalActual, mac_impresora As String
Dim formasDePago As Int = 1
dim imprimirTicket as Boolean = False
End Sub
Sub Service_Create

View File

@@ -691,8 +691,8 @@ End Sub
Sub traeFecha As String 'ignore
DateTime.DateFormat = "MM/dd/yyyy"
Private sDate As String =DateTime.Date(DateTime.Now)
Private sTime As String =DateTime.Time(DateTime.Now)
Private sDate As String = DateTime.Date(DateTime.Now)
Private sTime As String = DateTime.Time(DateTime.Now)
Return sDate & sTime
End Sub
@@ -1252,7 +1252,7 @@ Sub actualizaProducto(costoU As String, cant As String, nombre As String, prodId
Private antCant As Int = 0
If IsNumber(c.GetInt("PE_CANT")) Then antCant=c.GetInt("PE_CANT")
Private difCant As Int = cant - antCant
Starter.skmt.ExecNonQuery($"update pedido set pe_cant = ${cant}, pe_costo_tot = ${(cant*c.GetString("PE_COSTOU"))} where pe_proid = '${prodId}' and PE_TICKET = '${ticketId}' and PE_MESA = '${mesa}' and PE_TIPO = '${tipoVenta}'"$)
Starter.skmt.ExecNonQuery($"update pedido set pe_pronombre = '${nombre}', pe_cant = ${cant}, pe_costou = ${costoU}, pe_costo_tot = ${(cant*costoU)} where pe_proid = '${prodId}' and PE_TICKET = '${ticketId}' and PE_MESA = '${mesa}' and PE_TIPO = '${tipoVenta}'"$)
Starter.skmt.ExecNonQuery($"update cat_gunaprod set cat_gp_almacen = cat_gp_almacen - (${difCant}) where cat_gp_id = '${prodId}' "$)
c=Starter.skmt.ExecQuery($"select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_TICKET = '${ticketId}' and PE_MESA = '${mesa}' and PE_TIPO = '${tipoVenta}'"$)
' Log($"select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_TICKET = '${ticketId}' and PE_MESA = '${mesa}' and PE_TIPO = '${tipoVenta}'"$)
@@ -1368,6 +1368,7 @@ Sub traeCategorias As List
For i = 0 To c.RowCount - 1
c.Position = i
l.Add(c.GetString("CAT_GP_CLASIF"))
Log(c.GetString("CAT_GP_CLASIF"))
Next
End If
Return l
@@ -1407,7 +1408,7 @@ Sub traeConsecutivoTicket(estatus As String, pago As String) As String
Private m As String = "00000"
Private sqlPago As String = $"M_PAGO = '${pago}'"$
If pago = "PENDIENTE" Then sqlPago = $"M_PAGO is NULL"$
If pago = "EFECTIVO" Or pago = "TARJETA" Then
If pago = "EFECTIVO" Or pago = "TARJETA" Or pago = "MULTI-TICKET" Then
Private c As Cursor = Starter.skmt.ExecQuery($"select max(PE_TICKET) as ultimo from PEDIDO where PE_TIPO = '${pago}'"$)
Else
Private c As Cursor = Starter.skmt.ExecQuery($"select max(M_TICKET) as ultimo from CAT_MESAS where ifnull(M_ESTATUS, 'CERRADA') = '${estatus}' and ${sqlPago}"$)