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_entrar As Button
Private b_envioBD As Button
Private B_SERVER As Button
Private b_server As Button
Private ImageView4 As ImageView
Private ImageView2 As ImageView
Private Panel3 As Panel
@@ -77,6 +77,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.centraEtiqueta(Label3, p_configuracion.Width)
Subs.centraPanel(p_server, 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)
End Sub
@@ -111,9 +113,18 @@ Private Sub b_entrar_Click
B4XPages.ShowPage("principal")
End Sub
Private Sub B_SERVER_Click
Starter.DBReqServer = E_SERVER.text
p_configuracion.Visible = False
Private Sub b_server_Click
If E_SERVER.Text <> "" Then
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
Private Sub b_envioBD_Click
@@ -158,7 +169,7 @@ End Sub
Private Sub ListView1_ItemClick (Position As Int, Value As Object)
Starter.DBReqServer = Value
E_SERVER.Text = Value
Log(Starter.DBReqServer)
' Log(Starter.DBReqServer)
End Sub
Sub JobDone(Job As HttpJob)
@@ -227,5 +238,5 @@ Sub JobDone(Job As HttpJob)
End Sub
Private Sub b_entrar_LongClick
Dim a As Int = "a"
' Dim a As Int = "a"
End Sub

View File

@@ -81,6 +81,11 @@ Sub Class_Globals
Private sv_resumen As ScrollView
Dim su As StringUtils
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
'You can add more parameters here.
@@ -148,6 +153,7 @@ End Sub
Sub B4XPage_Appear
reqManager.Initialize(Me, Starter.DBReqServer)
' Log(Starter.DBReqServer)
clv = clv_prods_ll
cuentaProds
LlenaMesas(Null, Null)
@@ -182,6 +188,23 @@ Sub B4XPage_Appear
PCLVM.B4XSeekBar1.Update
p_meseros.Height = Root.Height - WobbleMenu1.Height
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
Sub B4XPage_CloseRequest As ResumableSub
@@ -196,6 +219,11 @@ Sub B4XPage_CloseRequest As ResumableSub
LlenaMesas(Null, Null)
Else if p_transparenteResumen.Visible Then
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
Return False
End Sub
@@ -577,6 +605,7 @@ Private Sub WobbleMenu1_Tab1Click
' p_carrito.Visible = False
p_historial.Visible = False
p_mesa.Visible = False
p_transparenteResumen.Visible = False
End Sub
Private Sub WobbleMenu1_Tab2Click
@@ -590,6 +619,7 @@ Private Sub WobbleMenu1_Tab2Click
p_transparenteCierreAdmin.Visible = False
p_historial.Visible = False
p_mesa.Visible = False
p_transparenteResumen.Visible = False
End Sub
Private Sub WobbleMenu1_Tab3Click
@@ -657,7 +687,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, 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
l_historialVacio.Visible = False
Private cs As CSBuilder
@@ -668,8 +698,8 @@ Sub llenaHistorial
Dim Label1 As Label
Label1 = lv_historial.TwoLinesLayout.Label
Label1.TextSize = 16
Private elColor As Int = Colors.Red
If rs_hist.GetString("PT_PAGO") = "TARJETA" Then elColor = Colors.RGB(0,0,122)
Private elColor As Int = Colors.RGB(0,0,122)
If rs_hist.GetString("PT_PAGO") = "TARJETA" Then elColor = Colors.Red
Label1.color = Colors.White
Label1.Height = 30dip
Dim label2 As Label
@@ -948,7 +978,7 @@ End Sub
Private Sub b_cierraAdmin_Click
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
If c.RowCount = 0 Then 'Si no hay mesas abiertas entonces ...
cd1.Initialize(Colors.gray, 10dip)
b_cierraAdmin.Background = cd1
ToastMessageShow("¡Cierre administrativo habilitado!", False)
@@ -967,29 +997,71 @@ Private Sub b_cierraAdmin_LongClick
ToastMessageShow("¡Cierre administrativo cancelado!", False)
End Sub
Private Sub b_cierreTotal_Click
Private Sub b_imp_DEMO_Click
Log("click")
sv_resumen.Panel.Height = p_resumen.Height
cs.Initialize
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")
If c.RowCount > 0 Then
c.Position = 0
Private mesaAnt As String = ""
Private tipo As String
' Private texoResumen 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
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 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")
If c.RowCount > 0 Then
c.Position = 0
Private mesaAnt As String = ""
Private tipoAnt As String = ""
Private tipo As String
Private ticket As String
DateTime.DateFormat = "dd/mm/yyyy HH:mm:ss"
cs.Append($"Fecha: ${DateTime.Date(DateTime.now)}${CRLF}${CRLF}"$)
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 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
Subs.panelVisible(p_transparenteResumen, 0, 0)
End Sub
Private Sub et_inicioDia_EnterPressed
@@ -1006,5 +1078,588 @@ Private Sub p_transparenteCierreAdmin_Click
End Sub
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 tempArray(1) As Object
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 inicioJobDone As Long 'ignore
Dim inicioRequestMap, inicioJobDoneMap As Map
@@ -321,6 +321,7 @@ Sub trackInit 'ignore
Log(">>>>>>>>> TRACKINIT ")
reqsList.Initialize
timesList.Initialize
errorList.Initialize
inicioRequestMap.Initialize
inicioJobDoneMap.Initialize
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
File1=candado.png
File10=mesasItem.bal
File11=principal.bal
File12=proditem.bal
File13=proditemCarrito.bal
File14=resumenCont.bal
File15=usuario.png
File16=vecteezy_white-diagonal-stripes-with-red-line-isolated-on-white.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
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
File4=engranes.png
File5=errormanager.bal
File6=kmt.db
File7=login.bal
File8=logo.png
File9=MainPage.bal
File6=fondoblanco.png
File7=kmt.db
File8=login.bal
File9=logo.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup11=Default Group
@@ -23,7 +30,14 @@ FileGroup13=Default Group
FileGroup14=Default Group
FileGroup15=Default Group
FileGroup16=Default Group
FileGroup17=Default Group
FileGroup18=Default Group
FileGroup19=Default Group
FileGroup2=Default Group
FileGroup20=Default Group
FileGroup21=Default Group
FileGroup22=Default Group
FileGroup23=Default Group
FileGroup3=Default Group
FileGroup4=Default Group
FileGroup5=Default Group
@@ -54,17 +68,18 @@ Module1=B4XMainPage
Module2=C_Principal
Module3=DBRequestManager
Module4=errorManager
Module5=Starter
Module6=Subs
NumberOfFiles=16
Module5=EscPosPrinter
Module6=Starter
Module7=Subs
NumberOfFiles=23
NumberOfLibraries=17
NumberOfModules=6
NumberOfModules=7
Version=12.8
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: MarketPlace
#VersionCode: 1
#VersionName: 4.07.20
#VersionName: 4.02.10
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -5,6 +5,7 @@ ModuleBookmarks3=
ModuleBookmarks4=
ModuleBookmarks5=
ModuleBookmarks6=
ModuleBookmarks7=
ModuleBreakpoints0=
ModuleBreakpoints1=
ModuleBreakpoints2=
@@ -12,13 +13,15 @@ ModuleBreakpoints3=
ModuleBreakpoints4=
ModuleBreakpoints5=
ModuleBreakpoints6=
ModuleBreakpoints7=
ModuleClosedNodes0=
ModuleClosedNodes1=
ModuleClosedNodes2=11,12,13,14,24,25,27,28,29,30,31,32,33,34,35
ModuleClosedNodes1=12,14
ModuleClosedNodes2=11,12,13,14,24,25,27,28,29,30,31,32,33,34,35,46,47,50
ModuleClosedNodes3=
ModuleClosedNodes4=
ModuleClosedNodes5=
ModuleClosedNodes6=68
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
ModuleClosedNodes6=
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
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 rutav As String = ""
Dim tipov As String = "VENTA"
Dim ticketActual, mesaActual, meseroActual, comensalesActuales As String
Dim ticketActual, mesaActual, meseroActual, comensalesActuales, mac_impresora As String
End Sub
Sub Service_Create
@@ -43,20 +43,27 @@ Sub Service_Create
logcat.LogCatStart(Array As String("-v","raw","*:F","B4A:v"), "logcat")
#end if
logs.Initialize
server = "http://keymon.lat:1781"
If Logger Then Log($"Starter reqManager server: ${server}"$)
DBReqServer = "http://keymon.lat:1782"
If Logger Then Log($"Starter reqManager server: ${DBReqServer}"$)
Logger = False
End Sub
Sub Service_Start (StartingIntent As Intent)
Service.StopAutomaticForeground 'Starter service can start in the foreground state in some edge cases.
reqManager.Initialize(Me, server)
Subs.revisaBD
#if DEBUG
Logger = True
#else
Logger = False
#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
Sub Service_TaskRemoved
@@ -84,11 +91,6 @@ Sub Service_Destroy
If Logger Then LogColor("starter destroyed", Colors.red)
End Sub
Sub reinicializaReqManager 'ignore
reqManager.Initialize(Me, server)
If Logger Then Log(server)
End Sub
Sub JobDone(Job As HttpJob)
LogColor("Starter - JobDone", Colors.Magenta)
If Job.Success = False Then