Se agregó´el envio de la información con boton de ciere total y el borrado de las ordenes con efectivo, el codigo para imprimir (incompleto) y logos e icono de la app

This commit is contained in:
2024-02-10 22:55:01 -06:00
parent 83d22bae4f
commit 3fea2efa9e
16 changed files with 1895 additions and 60 deletions

View File

@@ -31,7 +31,7 @@ Sub Class_Globals
Private b_regresar As Button Private b_regresar As Button
Private b_entrar As Button Private b_entrar As Button
Private b_envioBD As Button Private b_envioBD As Button
Private B_SERVER As Button Private b_server As Button
Private ImageView4 As ImageView Private ImageView4 As ImageView
Private ImageView2 As ImageView Private ImageView2 As ImageView
Private Panel3 As Panel Private Panel3 As Panel
@@ -77,6 +77,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.centraEtiqueta(Label3, p_configuracion.Width) Subs.centraEtiqueta(Label3, p_configuracion.Width)
Subs.centraPanel(p_server, p_configuracion.Width) Subs.centraPanel(p_server, p_configuracion.Width)
Subs.centraPanel(p_botones, p_configuracion.Width) Subs.centraPanel(p_botones, p_configuracion.Width)
i_logo.Left = (Root.Width / 2) - (i_logo.Width / 2)
Subs.centraPanel(Panel3, p_configuracion.Width)
' subs.panelVisible(p_configuracion, 0, 0) ' subs.panelVisible(p_configuracion, 0, 0)
End Sub End Sub
@@ -111,9 +113,18 @@ Private Sub b_entrar_Click
B4XPages.ShowPage("principal") B4XPages.ShowPage("principal")
End Sub End Sub
Private Sub B_SERVER_Click Private Sub b_server_Click
Starter.DBReqServer = E_SERVER.text If E_SERVER.Text <> "" Then
p_configuracion.Visible = False Starter.DBReqServer = E_SERVER.text
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER", Starter.DBReqServer))
p_configuracion.Visible = False
reqManager.Initialize(Me, Starter.DBReqServer)
Starter.reqManager.Initialize(Me, Starter.DBReqServer)
' Log(E_SERVER.text)
Else
ToastMessageShow("Por favor ingrese la direccion del servidor", True)
End If
End Sub End Sub
Private Sub b_envioBD_Click Private Sub b_envioBD_Click
@@ -158,7 +169,7 @@ End Sub
Private Sub ListView1_ItemClick (Position As Int, Value As Object) Private Sub ListView1_ItemClick (Position As Int, Value As Object)
Starter.DBReqServer = Value Starter.DBReqServer = Value
E_SERVER.Text = Value E_SERVER.Text = Value
Log(Starter.DBReqServer) ' Log(Starter.DBReqServer)
End Sub End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
@@ -227,5 +238,5 @@ Sub JobDone(Job As HttpJob)
End Sub End Sub
Private Sub b_entrar_LongClick Private Sub b_entrar_LongClick
Dim a As Int = "a" ' Dim a As Int = "a"
End Sub End Sub

View File

@@ -81,6 +81,11 @@ Sub Class_Globals
Private sv_resumen As ScrollView Private sv_resumen As ScrollView
Dim su As StringUtils Dim su As StringUtils
Dim cs As CSBuilder Dim cs As CSBuilder
Dim impresoraConectada As Boolean = False
Dim errorImpresora As Int = 0
Dim Printer1 As EscPosPrinter
dim b_imp as button
Private b_envioInfo As Button
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -148,6 +153,7 @@ End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
reqManager.Initialize(Me, Starter.DBReqServer) reqManager.Initialize(Me, Starter.DBReqServer)
' Log(Starter.DBReqServer)
clv = clv_prods_ll clv = clv_prods_ll
cuentaProds cuentaProds
LlenaMesas(Null, Null) LlenaMesas(Null, Null)
@@ -182,6 +188,23 @@ Sub B4XPage_Appear
PCLVM.B4XSeekBar1.Update PCLVM.B4XSeekBar1.Update
p_meseros.Height = Root.Height - WobbleMenu1.Height p_meseros.Height = Root.Height - WobbleMenu1.Height
If p_mesas.Visible And Subs.revisaCierreAdmin Then p_transparenteCierreAdmin.Visible = True Else p_transparenteCierreAdmin.Visible = False If p_mesas.Visible And Subs.revisaCierreAdmin Then p_transparenteCierreAdmin.Visible = True Else p_transparenteCierreAdmin.Visible = False
Private c As Cursor = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP"))
c.Position = 0
If c.RowCount > 0 Then
Starter.mac_impresora = c.GetString("CAT_VA_VALOR")
Else
Starter.mac_impresora = 0
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP","0"))
End If
Printer1.Initialize(Me, "Printer1")
Log("################# PERMISOS BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("Permisos BT: " & Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
Log("REVISAMOS PERMISOS DE BT")
Starter.rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then Log("Tenemos permisos de bluetooth.")
Log($"Resultado del CheckAndRequest: ${Result}"$)
End Sub End Sub
Sub B4XPage_CloseRequest As ResumableSub Sub B4XPage_CloseRequest As ResumableSub
@@ -196,6 +219,11 @@ Sub B4XPage_CloseRequest As ResumableSub
LlenaMesas(Null, Null) LlenaMesas(Null, Null)
Else if p_transparenteResumen.Visible Then Else if p_transparenteResumen.Visible Then
p_transparenteResumen.Visible = False p_transparenteResumen.Visible = False
else if WobbleMenu1.GetCurrentTab = 3 Or WobbleMenu1.GetCurrentTab = 2 Then
WobbleMenu1.SetCurrentTab(1)
WobbleMenu1_Tab1Click
else if WobbleMenu1.GetCurrentTab = 1 Then
B4XPages.ShowPage("Login")
End If End If
Return False Return False
End Sub End Sub
@@ -577,6 +605,7 @@ Private Sub WobbleMenu1_Tab1Click
' p_carrito.Visible = False ' p_carrito.Visible = False
p_historial.Visible = False p_historial.Visible = False
p_mesa.Visible = False p_mesa.Visible = False
p_transparenteResumen.Visible = False
End Sub End Sub
Private Sub WobbleMenu1_Tab2Click Private Sub WobbleMenu1_Tab2Click
@@ -590,6 +619,7 @@ Private Sub WobbleMenu1_Tab2Click
p_transparenteCierreAdmin.Visible = False p_transparenteCierreAdmin.Visible = False
p_historial.Visible = False p_historial.Visible = False
p_mesa.Visible = False p_mesa.Visible = False
p_transparenteResumen.Visible = False
End Sub End Sub
Private Sub WobbleMenu1_Tab3Click Private Sub WobbleMenu1_Tab3Click
@@ -657,7 +687,7 @@ Private Sub b_terminar_Click
End Sub End Sub
Sub llenaHistorial Sub llenaHistorial
Dim rs_hist As ResultSet = Starter.skmt.ExecQuery($"Select * from pedido_ticket where PT_PAGO <> 'VENTA' order by PT_PAGO, PT_TICKET"$) Dim rs_hist As ResultSet = Starter.skmt.ExecQuery($"Select * from pedido_ticket where PT_PAGO <> 'VENTA' order by PT_PAGO desc, PT_TICKET"$)
If rs_hist.RowCount > 0 Then If rs_hist.RowCount > 0 Then
l_historialVacio.Visible = False l_historialVacio.Visible = False
Private cs As CSBuilder Private cs As CSBuilder
@@ -668,8 +698,8 @@ Sub llenaHistorial
Dim Label1 As Label Dim Label1 As Label
Label1 = lv_historial.TwoLinesLayout.Label Label1 = lv_historial.TwoLinesLayout.Label
Label1.TextSize = 16 Label1.TextSize = 16
Private elColor As Int = Colors.Red Private elColor As Int = Colors.RGB(0,0,122)
If rs_hist.GetString("PT_PAGO") = "TARJETA" Then elColor = Colors.RGB(0,0,122) If rs_hist.GetString("PT_PAGO") = "TARJETA" Then elColor = Colors.Red
Label1.color = Colors.White Label1.color = Colors.White
Label1.Height = 30dip Label1.Height = 30dip
Dim label2 As Label Dim label2 As Label
@@ -948,7 +978,7 @@ End Sub
Private Sub b_cierraAdmin_Click Private Sub b_cierraAdmin_Click
Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$) Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$)
Log(c.RowCount) Log(c.RowCount)
If c.RowCount = 0 Then If c.RowCount = 0 Then 'Si no hay mesas abiertas entonces ...
cd1.Initialize(Colors.gray, 10dip) cd1.Initialize(Colors.gray, 10dip)
b_cierraAdmin.Background = cd1 b_cierraAdmin.Background = cd1
ToastMessageShow("¡Cierre administrativo habilitado!", False) ToastMessageShow("¡Cierre administrativo habilitado!", False)
@@ -967,29 +997,71 @@ Private Sub b_cierraAdmin_LongClick
ToastMessageShow("¡Cierre administrativo cancelado!", False) ToastMessageShow("¡Cierre administrativo cancelado!", False)
End Sub End Sub
Private Sub b_cierreTotal_Click Private Sub b_imp_DEMO_Click
Log("click") Log("click")
sv_resumen.Panel.Height = p_resumen.Height sv_resumen.Panel.Height = p_resumen.Height
cs.Initialize cs.Initialize
Log(l_resumen.text) Log(l_resumen.text)
Private c As Cursor = Starter.skmt.ExecQuery("select PE_MESA, PE_TIPO, sum(PE_COSTO_TOT) as SUBTOT from PEDIDO group by PE_MESA, pe_tipo order by PE_MESA, PE_TIPO desc") Private c As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$)
If c.RowCount > 0 Then Log(c.RowCount)
c.Position = 0 If c.RowCount = 0 Then 'Si no hay mesas abiertas entonces ...
Private mesaAnt As String = "" Private c As Cursor = Starter.skmt.ExecQuery("select PE_MESA, PE_TIPO, PE_TICKET, sum(PE_COSTO_TOT) as SUBTOT from PEDIDO group by PE_MESA, pe_tipo, PE_TICKET order by PE_MESA, PE_TIPO desc")
Private tipo As String If c.RowCount > 0 Then
' Private texoResumen As String c.Position = 0
For i = 0 To c.RowCount - 1 Private mesaAnt As String = ""
c.Position = i Private tipoAnt As String = ""
If c.GetString("PE_TIPO") = "TARJETA" Then tipo = "Tarjeta " Else tipo = "Efectivo " Private tipo As String
If mesaAnt <> c.GetString("PE_MESA") Then cs.Color(Colors.red).Append("Mesa " & c.GetString("PE_MESA") & CRLF).pop Private ticket As String
cs.Append($"* ${tipo} $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall DateTime.DateFormat = "dd/mm/yyyy HH:mm:ss"
mesaAnt = c.GetString("PE_MESA") cs.Append($"Fecha: ${DateTime.Date(DateTime.now)}${CRLF}${CRLF}"$)
Next For i = 0 To c.RowCount - 1
l_resumen.Text = cs c.Position = i
l_resumen.Height = su.MeasureMultilineTextHeight(l_resumen, l_resumen.Text) ticket = c.GetString("PE_TICKET")
sv_resumen.Panel.Height = l_resumen.Height If c.GetString("PE_TIPO") = "TARJETA" Then tipo = "Pago Tarjeta " Else tipo = "Pago Efectivo "
If mesaAnt <> c.GetString("PE_MESA") Then cs.Color(Colors.red).Append("Mesa " & c.GetString("PE_MESA") & CRLF).pop
If tipoAnt <> c.GetString("PE_TIPO") Then cs.Color(Colors.red).Append(" * " & tipo & CRLF).pop
cs.Append($" Ticket ${ticket}: $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall
mesaAnt = c.GetString("PE_MESA")
tipoAnt = c.GetString("PE_TIPO")
Next
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
End Sub
Private Sub b_cierreTotal_Click
Log("click")
sv_resumen.Panel.Height = p_resumen.Height
cs.Initialize
' Log(l_resumen.text)
Private m As Cursor = Starter.skmt.ExecQuery($"select M_ESTATUS from CAT_MESAS where M_ESTATUS = 'ABIERTA'"$)
' Log(m.RowCount)
If m.RowCount = 0 Then 'Si no hay mesas abiertas entonces ...
Private c As Cursor = Starter.skmt.ExecQuery("select PE_MESA, PE_TIPO, sum(PE_COSTO_TOT) as SUBTOT from PEDIDO group by PE_MESA, pe_tipo order by PE_MESA, PE_TIPO desc")
If c.RowCount > 0 Then
c.Position = 0
Private mesaAnt As String = ""
Private tipo As String
For i = 0 To c.RowCount - 1
c.Position = i
If c.GetString("PE_TIPO") = "TARJETA" Then tipo = "Tarjeta " Else tipo = "Efectivo "
If mesaAnt <> c.GetString("PE_MESA") Then cs.Color(Colors.red).Append("Mesa " & c.GetString("PE_MESA") & CRLF).pop
cs.Append($"* ${tipo} $${NumberFormat2(c.GetString("SUBTOT"), 0, 2, 2, True)}${CRLF}"$).Popall
mesaAnt = c.GetString("PE_MESA")
Next
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 End If
Subs.panelVisible(p_transparenteResumen, 0, 0)
End Sub End Sub
Private Sub et_inicioDia_EnterPressed Private Sub et_inicioDia_EnterPressed
@@ -1006,5 +1078,588 @@ Private Sub p_transparenteCierreAdmin_Click
End Sub End Sub
Private Sub p_transparenteResumen_Click Private Sub p_transparenteResumen_Click
'Para evitar que el clic en pantalla no se siga hacia atras
End Sub
Sub Printer1_Connected (Success As Boolean)
' If Logger Then Log("Printer1_Connected")
If Success Then
ToastMessageShow("Impresora conectada", False)
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("MACIMP"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MACIMP", Starter.mac_impresora))
If Starter.logger Then LogColor("Impresora conectada", Colors.Green)
' B_IMP2.Enabled = True
impresoraConectada = True
Else
' Msgbox(Printer1.ConnectedErrorMsg, "Error connecting.") 'ignore
' ToastMessageShow("Error conectando la impresora", False)
LogColor("Error conectando la impresora", Colors.Red)
errorImpresora = errorImpresora + 1
If errorImpresora > 1 Then
Starter.MAC_IMPRESORA = "0"
errorImpresora = 0
End If
End If
End Sub
Sub Printer1_Error
Log("error printer")
End Sub
Sub b_imp_Click
' Log("inicia B_IMP2_Click")
Private TAMANO As Int
Private ESPACIO As Int
Private BLANCO As String
Private c, s As Cursor
End Sub Private l_total, la_cuenta As Label
l_total.Initialize("l")
la_cuenta.Initialize("2")
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
End If
' If Logger Then Log($"Impresora Conectada: ${Printer1.IsConnected}"$)
' If la_cuenta.Text <> "0" And la_cuenta.Text <> "null" Then
' Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_TIPO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ", Array As Object("VENTA"))
' Starter.skmt.ExecNonQuery("UPDATE kmt_info set IMPRESION = 1 where CAT_CL_CODIGO In (select cuenta from cuentaa)")''
' End If
' Guardar.Visible = True
' Starter.skmt.ExecNonQuery("delete from pedido3")
' Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO3 (PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO) SELECT PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, SUM(PE_COSTO_TOT) AS PE_COSTO_TOT, PE_COSTOU, SUM(PE_CANT) As PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) GROUP BY PE_PRECIO2, PE_TIPO, PE_DESC, PE_COSTO_SIN, PE_RUTA, PE_CEDIS, PE_COSTOU, PE_PRONOMBRE, PE_PROID, PE_CLIENTE ")
' c=Starter.skmt.ExecQuery("select PE_PRECIO2,PE_TIPO,PE_FOLIO,PE_DESC,PE_COSTO_SIN,PE_RUTA,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE, PE_FECHA,PE_USUARIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
' If c.RowCount > 0 Then
' For i = 0 To c.RowCount -1
' c.Position = i
' Starter.skmt.ExecNonQuery2("UPDATE PEDIDO3 SET PE_FECHA= ? WHERE PE_CLIENTE = ? AND PE_PRONOMBRE = ? AND PE_PROID = ? AND PE_CEDIS = ? AND PE_FOLIO = ?", Array As Object(c.GetString("PE_FECHA"), c.GetString("PE_CLIENTE"),c.GetString("PE_PRONOMBRE"),c.GetString("PE_PROID"),c.GetString("PE_CEDIS"), c.GetString("PE_FOLIO")))
' Next
' End If
' Starter.skmt.ExecNonQuery("delete from pedido WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ")
' Starter.skmt.ExecNonQuery("INSERT INTO PEDIDO SELECT * FROM PEDIDO3")
' c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL"))
' c.Position =0
' perfil = c.GetString("CUANTOS")
' c.Close
' If perfil > 0 Then
' c=Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL"))
' c.Position =0
' perfil = c.GetString("CAT_VA_VALOR")
' c.Close
' End If
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
c.Position=0
Private usuario As String = c.GetString("USUARIO")
DateTime.DateFormat = "MM/dd/yyyy"
Private sDate,sTime As String
sDate = DateTime.Date(DateTime.Now)
sTime = DateTime.Time(DateTime.Now)
c.Close
c=Starter.skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION =?", Array As String ("SUCURSAL"))
c.Position = 0
Private sucursal As String = c.GetString("CAT_VA_VALOR")
c.Close
TAMANO = 0
ESPACIO = 14
BLANCO = " " 'esto para las impresoras nuevas
'printer.Initialize(cmp20.OutputStream)
Printer1.Reset
Dim bmp As Bitmap
bmp.InitializeResize(File.DirAssets, "kellanova_borde.png", 376, 129, True) 'ignore
Dim myimage As AnImage = Printer1.ImageToBWIMage(bmp)
myimage = Printer1.DitherImage2D(myimage, 128)
myimage= Printer1.PackImage(myimage)
Printer1.WriteString(CRLF) ' nudge the printer to show the user something is happening
Printer1.WriteString(Printer1.REVERSE)
Printer1.PrintImage(myimage)
Printer1.WriteString(Printer1.UNREVERSE)
'' Printer1.Justify = 1
If la_cuenta.Text = "0" Then
Try
Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF)
Printer1.WriteString(sDate &" " & sTime & CRLF)
Printer1.WriteString("Vendedor:" & usuario & CRLF)
' Printer1.WriteString("Ruta:" & ruta_tienda & CRLF)
' Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF)
Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
' Printer1.WriteString("Calle: " & la_Calle.Text & CRLF)
' Printer1.WriteString("Colonia: " & la_col.Text & CRLF)
' Printer1.WriteString("C.P.: " & la_cp.Text & CRLF)
' Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
' Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
Printer1.WriteString(" " & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("PEDIDO" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE", Array As String("ABORDO","CAMBIO"))
If S.RowCount>0 Then
For i=0 To S.RowCount -1
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Private strT As String = ""
strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT")
TAMANO = strT.Length
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$)
Private pecostou As String = 0
If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU")
Private pecostotot As String = 0
If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT")
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF)
TAMANO = 0
ESPACIO = 14
BLANCO = " "
End If
Next
End If
s.Close
Printer1.WriteString(CRLF)
Printer1.WriteString("------------RMI---------------" & CRLF)
s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE", Array As String("ABORDO","CAMBIO"))
If S.RowCount>0 Then
For i=0 To S.RowCount -1
TAMANO = 0
ESPACIO = 14
BLANCO = " "
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Private strT As String = ""
strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT")
TAMANO = strT.Length
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
Private pecostou As String = 0
If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU")
Private pecostotot As String = 0
If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT")
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF)
TAMANO = 0
ESPACIO = 14
BLANCO = " "
End If
If Starter.logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$)
Next
End If
s.Close
Printer1.WriteString(CRLF)
s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("ABORDO"))
s.Position =0
Private sTotal1 As Double
If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then
sTotal1 = s.GetString("TOTAL")
Else
sTotal1 = 0
End If
Printer1.WriteString( "Total entrega: $" & NumberFormat2(sTotal1, 1, 2, 2, False) & CRLF)
Printer1.WriteString("===============================" & CRLF)
''bold para las nuevas impresoras
Private total3 As String = 0
If s.GETSTRING("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then total3 = s.GETSTRING("TOTAL")
Printer1.WriteString( Printer1.BOLD & "Total pedido: $" & NumberFormat2(total3, 1, 2, 2, False) & CRLF)
s.Close
s=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("ABORDO"))
s.Position =0
Private total4 As String = "0"
If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then total4 = s.GetString("TOTAL")
Printer1.WriteString( Printer1.BOLD & "No. Productos: " & total4 & CRLF)
Printer1.WriteString("===============================" & CRLF)
s.Close
Printer1.WriteString(Printer1.DEFAULTS)
' printer.WriteLine("------------VENTA-------------")
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString( "Nombre y Firma del cliente" & CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString("__________" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
Printer1.WriteString("--------INFORMATIVO-----------" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
'printer.Close
Sleep(1000)
Printer1.DisConnect
Catch
ToastMessageShow("Error en la impresion 1.", True)
Printer1.Disconnect
B4XPages.ShowPage("Principal")
End Try
Else
Try
DateTime.DateFormat = "yyyymmdd"
sDate=DateTime.Date(DateTime.Now)
Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF)
Printer1.WriteString("No. Ticket: " & sDate & la_cuenta.Text & CRLF)
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
Printer1.WriteString(sDate &" " & sTime & CRLF)
Printer1.WriteString("Vendedor:" & usuario & CRLF)
' Printer1.WriteString("Ruta:" & ruta_tienda & CRLF)
' Printer1.WriteString("Tienda: " & La_nombre.Text & CRLF)
Printer1.WriteString("ID.Cliente: " & la_cuenta.Text & CRLF)
' Printer1.WriteString("Calle: " & la_Calle.Text & CRLF)
' Printer1.WriteString("Colonia: " & la_col.Text & CRLF)
' Printer1.WriteString("C.P.: " & la_cp.Text & CRLF)
' Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
' Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
Printer1.WriteString(" " & CRLF)
''''''' PEDIDOS DOE
s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("DOE"))
' s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and pe_codpromo = ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA", "DOE", "CAMBIO"))
If S.RowCount>0 Then
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("PEDIDO DON TOÑO" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
For i=0 To S.RowCount -1
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
Private strT As String = ""
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Private strT As String = ""
strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT")
TAMANO = strT.Length
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
Private pecostou As String = 0
If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU")
Private pecostotot As String = 0
If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT")
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF)
' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$)
TAMANO = 0
ESPACIO = 14
BLANCO = " "
End If
Next
End If
s.Close
s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_CEDIS = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("DOE"))
s.Position = 0
Private sTotal2 As Double
Log(sTotal2)
LogColor(s.GetString("TOTAL"),Colors.Magenta)
If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then
sTotal2 = s.GetString("TOTAL")
' sTotal2 = Subs.sumaPedido(Subs.traeCliente)
Printer1.WriteString( $"Sub Total : $${NumberFormat2(sTotal2, 1, 2, 2, False)}"$ & CRLF)
Else
sTotal2 = 0
End If
Log(sTotal2)
Private cantidad1 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then
cantidad1 = s.GetString("CANTIDAD")
Printer1.WriteString( "No. Productos: " & cantidad1 & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("FIN PEDIDO DON TOÑO" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
End If
' Printer1.WriteString(CRLF)
s.Close
''''SE MODIFCA EL QUERY POR LOS PEDIDOS DOE
S=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA","CAMBIO","DOE"))
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("VENTA" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
''s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and pe_codpromo <> ? and substr(pe_pronombre,1,6) <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_CEDIS,PE_PRONOMBRE", Array As String("VENTA", "DOE", "CAMBIO"))
If S.RowCount>0 Then
For i=0 To S.RowCount -1
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
Private strT As String = ""
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Private strT As String = ""
strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT")
TAMANO = strT.Length
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
Private pecostou As String = 0
If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU")
Private pecostotot As String = 0
If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT")
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF)
' If Logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$)
TAMANO = 0
ESPACIO = 14
BLANCO = " "
End If
Next
End If
s.Close
s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) <> ? AND PE_CEDIS <> ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO","DOE"))
s.Position = 0
Private sTotal2 As Double
' If s.GetString("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then
' sTotal2 = s.GetString("TOTAL")
' Else
' sTotal2 = 0
' End If
' sTotal2 = kh.traeTotalCliente
s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO"))
s.Position = 0
Private cant5 As String = s.GetString("CANTIDAD")
Private sTotal3 As Double
If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then
sTotal3 = s.GetString("TOTAL")
Else
sTotal3 = 0
End If
Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF)
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & $"Sub Total Venta: $${NumberFormat2((sTotal2+(sTotal3 * -1)), 1, 2, 2, False)}"$ & CRLF)
Private cantidad1 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad1 = s.GetString("CANTIDAD")
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad1 & CRLF)
Printer1.WriteString(CRLF)
s.Close
Printer1.WriteString("------------RMI---------------" & CRLF)
s=Starter.skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU, PE_COSTO_TOT, length(PE_COSTO_TOT) as L_COSTO_TOT, PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO"))
If S.RowCount>0 Then
For i=0 To S.RowCount -1
S.Position=i
If s.GetString("PE_CEDIS") = s.GetString("PE_PROID") Then
Printer1.WriteString(s.GetString("PE_PRONOMBRE") & CRLF)
Else
Printer1.WriteString(s.GetString("PE_CANT") & " " & s.GetString("PE_PRONOMBRE") & CRLF)
Private strT As String = ""
strT = s.GetString("L_CANT")&s.GetString("L_COSTOU")&s.GetString("L_COSTO_TOT")
TAMANO = strT.Length
ESPACIO = ESPACIO - TAMANO
For E=0 To ESPACIO -1
BLANCO = " " & BLANCO
Next
Private pecostou As String = 0
If s.GETSTRING("PE_COSTOU") <> Null And IsNumber(s.GETSTRING("PE_COSTOU")) Then pecostou = s.GETSTRING("PE_COSTOU")
Private pecostotot As String = 0
If s.GETSTRING("PE_COSTO_TOT") <> Null And IsNumber(s.GETSTRING("PE_COSTO_TOT")) Then pecostotot = s.GETSTRING("PE_COSTO_TOT")
Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & NumberFormat2(pecostou, 1, 2, 2, False) & " $" & NumberFormat2(pecostotot, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(BLANCO & s.GETSTRING("PE_CANT") & " X $" & s.GETSTRING("PE_COSTOU") & " $" & s.GETSTRING("PE_COSTO_TOT") & CRLF)
If Starter.logger Then Log($"|${ESPACIO}|, |${TAMANO}|, |${BLANCO}|"$)
TAMANO = 0
ESPACIO = 14
BLANCO = " "
End If
Next
End If
s.Close
s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO"))
s.Position = 0
Private sTotal3 As Double
If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then
sTotal3 = s.GetString("TOTAL")
Else
sTotal3 = 0
End If
Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF)
Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Sub Total CAMBIOS: $" & NumberFormat2(sTotal3, 1, 2, 2, False) & CRLF)
Private cantidad2 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad2 = s.GetString("CANTIDAD")
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad2 & CRLF)
Printer1.WriteString(CRLF)
s.Close
Printer1.WriteString(CRLF)
s=Starter.skmt.ExecQuery2("select SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA"))
s.Position =0
Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF)
Private total2 As String = 0
' If s.GETSTRING("TOTAL") <> Null And IsNumber(s.GETSTRING("TOTAL")) Then total2 = s.GETSTRING("TOTAL")
' total2 = kh.traeTotalCliente
Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Total venta: $" & NumberFormat2(total2, 1, 2, 2, False) & CRLF)
' Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Total venta: $" & s.GetString("TOTAL") & CRLF)
' Printer1.WriteString("===============================" & CRLF)
'
' Printer1.WriteString( "Total venta: $" & s.GetString("TOTAL") & CRLF)
s.Close
s=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA"))
s.Position =0
Private total5 As String = "0"
If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then total5 = s.GetString("TOTAL")
Printer1.WriteString(Printer1.BOLD & "No. Productos vendidos: " & (total5 - cantidad2) & CRLF)
Printer1.WriteString(Printer1.BOLD & "Productos devueltos : " & cantidad2 & CRLF)
Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF)
' Printer1.WriteString( "No. Productos: " & s.GetString("TOTAL") & CRLF)
' Printer1.WriteString( "===============================" & CRLF)
s.Close
Printer1.WriteString(Printer1.UNREVERSE)
Printer1.WriteString(Printer1.NOBOLD)
' printer.WriteLine("------------VENTA-------------")
' printer.WriteLine("TOTAL COMPRA: $:" & total_cliente)
' Printer1.WriteString(Printer1.DEFAULTS & CRLF)
Printer1.WriteString(CRLF)
' Printer1.WriteString(Printer1.SINGLE)
'Printer1.WriteString("------------------------------")
' Printer1.WriteString(Printer1.HIGH)
' Printer1.Justify = 1
Printer1.WriteString( "Nombre y Firma del cliente" & CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
Printer1.WriteString(CRLF)
' Printer1.WriteString(Printer1.DEFAULTS)
' Printer1.WriteString(Printer1.SINGLE)
Printer1.WriteString("__________" & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("----ESTE TICKET NO ES UN -----" & CRLF)
Printer1.WriteString("--COMPROBANTE FISCAL, SOLO ES-" & CRLF)
Printer1.WriteString("--------INFORMATIVO-----------" & 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
End If
Sleep(1000)
b_imp.Enabled = True
ProgressDialogHide
' If Logger Then Log("Habilitamos boton")
End Sub
Private Sub b_envioInfo_Click
Private cmd As DBCommand
Log(Starter.DBReqServer)
' sql.insertPedido_Lanter=insert into Lanter.pedido (PE_CODPROMO, PE_FECHA_SINC, PE_IDALMACEN, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_RUTA, PE_COSTO_SIN, PE_DESCUENTO, PE_CANT_TOTAL, PE_VENTA_TOTAL, PE_FOLIO, PE_TIPO, PE_PERFIL)
' VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?))
' sql.insertPedidos_Lanter=insert into LANTER.pedido_cliente(PC_FECHA_SINC, PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO, PC_LON, PC_LAT, PC_IDALMACEN, PC_RUTA, PC_COSTO_SIN, PC_DESCUENTO, PC_FACTURA)
' VALUES (SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?))
Private cantTotal As Int
Private ventaTotal As Double
Private pt As Cursor = Starter.skmt.ExecQuery("select * from pedido_ticket")
If pt.RowCount > 0 Then
ProgressDialogShow("Enviando la información del día")
reqManager.trackInit
For j = 0 To pt.RowCount - 1
pt.Position = j
cmd.Initialize
cmd.Name = "insertPedidos_Lanter" 'Inserta en tabla PEDIDO_CLIENTE
cmd.Parameters = Array As Object(pt.GetString("PT_TICKET"), pt.GetString("PT_FECHA"), 0, pt.GetString("PT_NOART"), pt.GetString("PT_MONTO"), 0, 0, pt.GetString("PT_MESA"), pt.GetString("PT_MESERO"), pt.GetString("PT_COSTO_SIN"), 0, pt.GetString("PT_FACTURA"))
' Log($"${pt.GetString("PT_TICKET")}, ${pt.GetString("PT_FECHA")}, 0, ${pt.GetString("PT_NOART")}, ${pt.GetString("PT_MONTO")}, 0, 0, ${pt.GetString("PT_MESA")}, ${pt.GetString("PT_MESERO")}, ${pt.GetString("PT_COSTO_SIN")}, 0, ${pt.GetString("PT_FACTURA")}"$)
reqManager.ExecuteCommand(cmd , $"insertPedidos_${pt.GetString("PT_TICKET")}"$)
' LogColor($"insertPedidos_${pt.GetString("PT_TICKET")}"$, Colors.Red)
cantTotal = pt.GetString("PT_NOART")
ventaTotal = pt.GetString("PT_MONTO")
'De cada ticket, mandamos los productos
Private c As Cursor = Starter.skmt.ExecQuery($"select * from pedido where PE_MESA = '${pt.GetString("PT_MESA")}' and PE_TIPO = '${pt.GetString("PT_PAGO")}' and PE_TICKET = '${pt.GetString("PT_TICKET")}'"$)
If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1
c.position = i
cmd.Initialize
cmd.Name = "insertPedido_Lanter" 'Inserta en tabla PEDIDO
cmd.Parameters = Array As Object("", c.getstring("PE_MESA"), c.getstring("PE_COSTO_TOT"), c.getstring("PE_COSTOU"), c.getstring("PE_CANT"), c.getstring("PE_PRONOMBRE"), c.getstring("PE_PROID"), c.getstring("PE_TICKET"), c.getstring("PE_FECHA"), "", c.getstring("PE_MESERO"), c.getstring("PE_COSTO_SIN"), 0, cantTotal, ventaTotal, c.getstring("PE_FOLIO"), c.getstring("PE_TIPO"), "") '
reqManager.ExecuteCommand(cmd , $"insertPedido_${c.GetString("PE_MESA")}_${c.GetString("PE_TIPO")}_${c.GetString("PE_TICKET")}_${c.GetString("PE_PROID")}"$)
' LogColor($"insertPedido_${c.GetString("PE_MESA")}_${c.GetString("PE_TIPO")}_${c.GetString("PE_TICKET")}_${c.GetString("PE_PROID")}"$, Colors.Blue)
Next
End If
' Log("##########################################")
Next
End If
End Sub
Sub JobDone(Job As HttpJob)
' Log("JOBDONE PRINCIPAL")
reqManager.trackNext(Job)
If Not(Job.Success) Then
LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red)
reqManager.errorList.Add(Job.Tag)
Else
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
' If result.Tag = "traeGeoPass" Then 'query tag
' If result.Rows.Size = 0 Then MsgboxAsync("Contraseña equivocada, por favor intente de nuevo.", "ATENCION")
For Each records() As Object In result.Rows
For Each k As String In result.Columns.Keys
Log(k & ": " & records(result.Columns.Get(k)))
Next
Next
' End If
End If
End If
If reqManager.reqsList.Size = 0 Then
ProgressDialogHide
p_transparenteResumen.Visible = False
Starter.skmt.ExecNonQuery($"delete from PEDIDO where PE_TIPO = 'EFECTIVO'"$)
Starter.skmt.ExecNonQuery($"delete from PEDIDO_TICKET where PT_PAGO = 'EFECTIVO'"$)
llenaHistorial
ToastMessageShow("¡Envío terminado!", False)
End If
If reqManager.errorList.Size > 0 Then Log(">>>>> ERRORES - " & reqManager.errorList)
Job.Release
End Sub

View File

@@ -16,7 +16,7 @@ Sub Class_Globals
Private VERSION As Float = 0.9 Private VERSION As Float = 0.9
Private tempArray(1) As Object Private tempArray(1) As Object
Dim jobTagAnterior As String = "" 'Mod por CHV - 211109 Dim jobTagAnterior As String = "" 'Mod por CHV - 211109
Dim reqsList, timesList As List Dim reqsList, timesList, errorList As List
Dim inicioRequest As Long 'ignore Dim inicioRequest As Long 'ignore
Dim inicioJobDone As Long 'ignore Dim inicioJobDone As Long 'ignore
Dim inicioRequestMap, inicioJobDoneMap As Map Dim inicioRequestMap, inicioJobDoneMap As Map
@@ -321,6 +321,7 @@ Sub trackInit 'ignore
Log(">>>>>>>>> TRACKINIT ") Log(">>>>>>>>> TRACKINIT ")
reqsList.Initialize reqsList.Initialize
timesList.Initialize timesList.Initialize
errorList.Initialize
inicioRequestMap.Initialize inicioRequestMap.Initialize
inicioJobDoneMap.Initialize inicioJobDoneMap.Initialize
End Sub End Sub

1148
B4A/EscPosPrinter.bas Normal file

File diff suppressed because it is too large Load Diff

Binary file not shown.

BIN
B4A/Files/logoLanter.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

BIN
B4A/Files/logolanter.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 62 KiB

BIN
B4A/Files/logolanter2.bmp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 149 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

View File

@@ -1,20 +1,27 @@
Build1=Default,mp.keymon.lat,HU2_PUBLIC Build1=Default,mp.keymon.lat,HU2_PUBLIC
File1=candado.png File1=candado.png
File10=mesasItem.bal File10=logoLanter.png
File11=principal.bal File11=logoLanter_192x192.png
File12=proditem.bal File12=logoLanter2.bmp
File13=proditemCarrito.bal File13=logoLanterNegro.bmp
File14=resumenCont.bal File14=logoLanterNegro.png
File15=usuario.png File15=logoLanterNegro2.bmp
File16=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.png File16=MainPage.bal
File17=mesasItem.bal
File18=principal.bal
File19=proditem.bal
File2=durakelo.png File2=durakelo.png
File20=proditemCarrito.bal
File21=resumenCont.bal
File22=usuario.png
File23=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.png
File3=engrane.png File3=engrane.png
File4=engranes.png File4=engranes.png
File5=errormanager.bal File5=errormanager.bal
File6=kmt.db File6=fondoblanco.png
File7=login.bal File7=kmt.db
File8=logo.png File8=login.bal
File9=MainPage.bal File9=logo.png
FileGroup1=Default Group FileGroup1=Default Group
FileGroup10=Default Group FileGroup10=Default Group
FileGroup11=Default Group FileGroup11=Default Group
@@ -23,7 +30,14 @@ FileGroup13=Default Group
FileGroup14=Default Group FileGroup14=Default Group
FileGroup15=Default Group FileGroup15=Default Group
FileGroup16=Default Group FileGroup16=Default Group
FileGroup17=Default Group
FileGroup18=Default Group
FileGroup19=Default Group
FileGroup2=Default Group FileGroup2=Default Group
FileGroup20=Default Group
FileGroup21=Default Group
FileGroup22=Default Group
FileGroup23=Default Group
FileGroup3=Default Group FileGroup3=Default Group
FileGroup4=Default Group FileGroup4=Default Group
FileGroup5=Default Group FileGroup5=Default Group
@@ -54,17 +68,18 @@ Module1=B4XMainPage
Module2=C_Principal Module2=C_Principal
Module3=DBRequestManager Module3=DBRequestManager
Module4=errorManager Module4=errorManager
Module5=Starter Module5=EscPosPrinter
Module6=Subs Module6=Starter
NumberOfFiles=16 Module7=Subs
NumberOfFiles=23
NumberOfLibraries=17 NumberOfLibraries=17
NumberOfModules=6 NumberOfModules=7
Version=12.8 Version=12.8
@EndOfDesignText@ @EndOfDesignText@
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: MarketPlace #ApplicationLabel: MarketPlace
#VersionCode: 1 #VersionCode: 1
#VersionName: 4.07.20 #VersionName: 4.02.10
'SupportedOrientations possible values: unspecified, landscape or portrait. 'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False

View File

@@ -5,6 +5,7 @@ ModuleBookmarks3=
ModuleBookmarks4= ModuleBookmarks4=
ModuleBookmarks5= ModuleBookmarks5=
ModuleBookmarks6= ModuleBookmarks6=
ModuleBookmarks7=
ModuleBreakpoints0= ModuleBreakpoints0=
ModuleBreakpoints1= ModuleBreakpoints1=
ModuleBreakpoints2= ModuleBreakpoints2=
@@ -12,13 +13,15 @@ ModuleBreakpoints3=
ModuleBreakpoints4= ModuleBreakpoints4=
ModuleBreakpoints5= ModuleBreakpoints5=
ModuleBreakpoints6= ModuleBreakpoints6=
ModuleBreakpoints7=
ModuleClosedNodes0= ModuleClosedNodes0=
ModuleClosedNodes1= ModuleClosedNodes1=12,14
ModuleClosedNodes2=11,12,13,14,24,25,27,28,29,30,31,32,33,34,35 ModuleClosedNodes2=11,12,13,14,24,25,27,28,29,30,31,32,33,34,35,46,47,50
ModuleClosedNodes3= ModuleClosedNodes3=
ModuleClosedNodes4= ModuleClosedNodes4=
ModuleClosedNodes5= ModuleClosedNodes5=
ModuleClosedNodes6=68 ModuleClosedNodes6=
NavigationStack=C_Principal,Class_Globals,76,4,B4XMainPage,B4XPage_Created,63,0,Visual Designer,login.bal,-100,2,C_Principal,llenaHistorial,654,2,C_Principal,p_transparenteResumen_Click,975,0,C_Principal,et_inicioDia_EnterPressed,977,0,C_Principal,b_pagoCerrar_Click,922,0,Visual Designer,resumenCont.bal,-100,6,Visual Designer,principal.bal,-100,6,C_Principal,b_cierreTotal_Click,983,6 ModuleClosedNodes7=68
NavigationStack=C_Principal,b_envioInfo_Click,1589,3,Starter,Service_Destroy,85,0,B4XMainPage,ListView1_ItemClick,165,0,Visual Designer,login.bal,-100,1,Starter,Service_Start,54,6,Starter,Process_Globals,11,0,Starter,Service_Create,28,0,C_Principal,B4XPage_Appear,147,0,C_Principal,b_cierreTotal_Click,1036,3,B4XMainPage,b_server_Click,117,1
SelectedBuild=0 SelectedBuild=0
VisibleModules=1,5,6,2,4,3 VisibleModules=1,6,7,2,4,3,5

View File

@@ -24,7 +24,7 @@ Sub Process_Globals
Dim Logger As Boolean Dim Logger As Boolean
Dim rutav As String = "" Dim rutav As String = ""
Dim tipov As String = "VENTA" Dim tipov As String = "VENTA"
Dim ticketActual, mesaActual, meseroActual, comensalesActuales As String Dim ticketActual, mesaActual, meseroActual, comensalesActuales, mac_impresora As String
End Sub End Sub
Sub Service_Create Sub Service_Create
@@ -43,20 +43,27 @@ Sub Service_Create
logcat.LogCatStart(Array As String("-v","raw","*:F","B4A:v"), "logcat") logcat.LogCatStart(Array As String("-v","raw","*:F","B4A:v"), "logcat")
#end if #end if
logs.Initialize logs.Initialize
server = "http://keymon.lat:1781" DBReqServer = "http://keymon.lat:1782"
If Logger Then Log($"Starter reqManager server: ${server}"$) If Logger Then Log($"Starter reqManager server: ${DBReqServer}"$)
Logger = False Logger = False
End Sub End Sub
Sub Service_Start (StartingIntent As Intent) Sub Service_Start (StartingIntent As Intent)
Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases. Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases.
reqManager.Initialize(Me, server)
Subs.revisaBD Subs.revisaBD
#if DEBUG #if DEBUG
Logger = True Logger = True
#else #else
Logger = False Logger = False
#End If #End If
Private c As Cursor = skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER"))
Log(c.RowCount)
If c.RowCount > 0 Then
c.Position = 0
DBReqServer = c.GetString("CAT_VA_VALOR")
Log("De base de datos -> " & DBReqServer)
End If
reqManager.Initialize(Me, DBReqServer)
End Sub End Sub
Sub Service_TaskRemoved Sub Service_TaskRemoved
@@ -84,11 +91,6 @@ Sub Service_Destroy
If Logger Then LogColor("starter destroyed", Colors.red) If Logger Then LogColor("starter destroyed", Colors.red)
End Sub End Sub
Sub reinicializaReqManager 'ignore
reqManager.Initialize(Me, server)
If Logger Then Log(server)
End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
LogColor("Starter - JobDone", Colors.Magenta) LogColor("Starter - JobDone", Colors.Magenta)
If Job.Success = False Then If Job.Success = False Then