Version 4.09.22

Se agrego la Bitacora que tiene Kelloggs
This commit is contained in:
IsR0d
2024-09-23 10:34:09 -06:00
parent 36a638f265
commit 7fe1d3059d
14 changed files with 257 additions and 37 deletions

View File

@@ -5,7 +5,7 @@ Type=Class
Version=9.85
@EndOfDesignText@
#Region Shared Files
#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
'#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True
'###########################################################################################################
'###################### PULL #############################################################
@@ -25,6 +25,7 @@ Sub Class_Globals
Private Root As B4XView
Private xui As XUI
Public login As B4XMainPage
Dim reqManager As DBRequestManager
Public principal As C_Principal
Public clientes As C_Clientes
Public cliente As C_Cliente
@@ -163,6 +164,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_MARCAS_CUOTAS (HMC_MARCA TEXT, HMC_TOTAL TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CODIGO_BARRAS(CODIGOKMTS TEXT, CODIGOB TEXT, LAT TEXT, LON TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOS (a_usuario TEXT, a_ruta TEXT, a_cliente TEXT, a_abono TEXT, a_fecha TEXT, a_enviado TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT)")
' skmt.ExecNonQuery("drop table kmt_info")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS kmt_info (CAT_CL_FOTO BLOB, CAT_CL_NUM_SERIEFISICO TEXT, CAT_CL_MTOCOMPRA TEXT, CAT_CL_CEDIS TEXT, CAT_CL_LAT TEXT, CAT_CL_LONG TEXT, CAT_CL_FBAJA TEXT, CAT_CL_FALTA TEXT, CAT_CL_CP TEXT, CAT_CL_EDO TEXT, CAT_CL_MUNI TEXT, CAT_CL_COLONIA TEXT, CAT_CL_CALLE2 TEXT, CAT_CL_CALLE1 TEXT, CAT_CL_NOINT TEXT, CAT_CL_NOEXT TEXT, CAT_CL_CALLE TEXT, CAT_CL_EMAIL TEXT, CAT_CL_TELEFONO TEXT, CAT_CL_ATIENTE2 TEXT, CAT_CL_ATIENDE1 TEXT, CAT_CL_NOMBRE TEXT, CAT_CL_GIRO TEXT, CAT_CL_DIAS_VISITA TEXT, CAT_CL_TIPO_RUTA TEXT, CAT_CL_RUTA TEXT, CAT_CL_CODIGO TEXT, gestion NUMERIC, CAT_CL_DIASEMANA TEXT, CAT_CL_SECUENCIA INT)")
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "CAT_CL_DIASEMANA" en la tabla
@@ -395,9 +397,9 @@ End Sub
Sub JobDone(Job As HttpJob)
Log(Job.Success)
If Job.Success = False Then
ToastMessageShow("Error: " & Job.ErrorMessage, True)
ToastMessageShow("Error - MainPage: " & Job.ErrorMessage, True)
Else
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
LogColor("JobDone - MainPage: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "version" Then 'query tag
@@ -634,8 +636,8 @@ End Sub
Sub i_engrane_Click
lv_server.Clear
lv_server.AddSingleLine("http://keymon.lat:1783")
If user.Text = "KMTS1" Then lv_server.AddSingleLine("http://10.0.0.205:1783")
lv_server.AddSingleLine("http://keymon.lat:1781")
If user.Text = "KMTS1" Then lv_server.AddSingleLine("http://10.0.0.205:1781")
' l_server.Text = Starter.server
et_server.Text = Starter.server
Subs.panelVisible(p_appUpdate,0,0)

View File

@@ -141,6 +141,14 @@ Sub Class_Globals
Private Label20 As Label
Private l_calle1 As Label
Private l_ubicacion2 As Label
Dim dentroDeGeocerca As Boolean = False
Dim b_inicioFinVenta As Button
Dim precision As Int = 0
Dim motivoNoVenta, motivoNoVisita As String
Dim usuario As String = ""
Dim Id_Almacen As String
Dim ruta_tienda As String
End Sub
'You can add more parameters here.
@@ -192,10 +200,11 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
' Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
' Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
b_inicioFinVenta.Width = Root.Width
LA_GPS.TextColor = Colors.Red
LA_GPS.Text = "SIN UBICACION GPS"
cercavalor = 0
@@ -328,6 +337,19 @@ Sub B4XPage_Appear
gest.Visible = True
'Si el cliente es nuevo, no aparece el boton de venta
If la_cuenta.text.SubString2(0,1) = "N" Then gest.Visible = False
b_inicioFinVenta.Text = "INICIAR VENTA"
b_inicioFinVenta.BringToFront
' LogColor(">>>>>> EN VENTA: " & B4XPages.MainPage.enVenta, Colors.red)
If Not(Starter.enVenta) And la_cuenta.Text <> "0" Then
b_inicioFinVenta.Visible = True
' Log("EnVenta Visible")
Else
' Log("EnVenta NO Visible")
b_inicioFinVenta.Visible = False
End If
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
End Sub
Sub GPS_LocationChanged (Location1 As Location)
@@ -428,7 +450,13 @@ Sub DATOS_Click
B4XPages.ShowPage("telefonos")
End Sub
Sub Guardar_Click
Sub Guardar_Click
b_inicioFinVenta.Text = "FIN VENTA"
b_inicioFinVenta.Visible = True
End Sub
Sub Guardar2_Click
' Log("GuardarVentaOriginal")
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
@@ -484,6 +512,21 @@ Sub Guardar_Click
B4XPages.MainPage.productos.prodsMap.Initialize
B4XPages.MainPage.promos.promosMap.Initialize
B4XPages.ShowPage("Principal")
Guardar.SendToBack
b_inicioFinVenta.Text = "TERMINAR VENTA"
' Log("RESPALDO")
If la_cuenta.Text <> "0" Then 'Si es ABORDO, no mostramos el boton b_inicioFinVenta y regresamos a Principal.
b_inicioFinVenta.Visible = True
Else
' b_inicioFinVenta.Visible = False
Starter.enVenta = False
LogColor(">>>>>> ABORDO: " & Starter.enVenta, Colors.red)
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Id_Almacen, ruta_tienda, "Venta Abordo", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
Subs.iniciaActividad("principal")
B4XPages.ShowPageAndRemovePreviousPages("Principal")
End If
End Sub
Sub NUEVO_Click
@@ -769,15 +812,15 @@ End Sub
Sub mandaPendientes
'PEDIDO_CLIENTE (Pendientes)
c=B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE where pc_envio_ok <> 1")
Log($"Pedido_Cliente PENDIENTE: ${c.RowCount}"$)
' Log($"Pedido_Cliente PENDIENTE: ${c.RowCount}"$)
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "DELETE_PEDIDO_MARDS_PC"
cmd.Parameters = Array As Object(ALMACEN, B4XPages.MainPage.principal.l_ruta.text,c.GetString("PC_CLIENTE") )
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "DEL_PC")
' cmd.Initialize
' cmd.Name = "DELETE_PEDIDO_MARDS_PC"
' cmd.Parameters = Array As Object(ALMACEN, B4XPages.MainPage.principal.l_ruta.text,c.GetString("PC_CLIENTE") )
' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "DEL_PC")
Dim cmd As DBCommand
cmd.Initialize
@@ -789,16 +832,16 @@ Sub mandaPendientes
'PEDIDO (Pendientes)
c=B4XPages.MainPage.skmt.ExecQuery("SELECT PC_ENVIO_OK, PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM pedido_cliente left join PEDIDO where pc_cliente = pe_cliente and pc_envio_ok <> 1")
Log($"Pedido PENDIENTE: ${c.RowCount}"$)
' Log($"Pedido PENDIENTE: ${c.RowCount}"$)
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "DELETE_PEDIDO_MARDS_PE"
cmd.Parameters = Array As Object(ALMACEN, B4XPages.MainPage.principal.l_ruta.text,c.GetString("PE_CLIENTE") )
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "DEL_PE")
' cmd.Initialize
' cmd.Name = "DELETE_PEDIDO_MARDS_PE"
' cmd.Parameters = Array As Object(ALMACEN, B4XPages.MainPage.principal.l_ruta.text,c.GetString("PE_CLIENTE") )
' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "DEL_PE")
cmd.Initialize
cmd.Name = "insert_pedido_MEDI"
@@ -809,7 +852,7 @@ Sub mandaPendientes
'ABONOS
Dim ab As Cursor = B4XPages.MainPage.skmt.ExecQuery($"SELECT * from ABONOS where a_enviado is null"$)
Log(ab.RowCount)
' Log(ab.RowCount)
If ab.RowCount > 0 Then
For i=0 To ab.RowCount -1
ab.Position = i
@@ -889,6 +932,12 @@ Sub JobDone(Job As HttpJob)
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim resultado As DBResult = reqManager.HandleJob(Job)
If resultado.Tag= "mandaBitacora" Then
Log("mandaBitacora")
End If
End If
Job.Release
End If
@@ -920,4 +969,39 @@ End Sub
Private Sub b_abono1_Click
p_abono.Visible = True
End Sub
Private Sub b_inicioFinVenta_Click
usuario = Subs.traeUsuarioDeBD
Id_Almacen = Subs.traeAlmacen
c = B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
c.Position = 0
ruta_tienda = c.GetString("CAT_CL_RUTA")
If dentroDeGeocerca Then precision = 1
motivoNoVenta = ""
motivoNoVisita = ""
If Starter.enVenta Then
b_inicioFinVenta.Visible = True
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Id_Almacen, ruta_tienda, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, motivoNoVisita)
Starter.enVenta = False
LogColor($">>>>>> TERMINA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
Subs.iniciaActividad("principal")
B4XPages.ShowPageAndRemovePreviousPages("Principal")
Guardar2_Click
Else
b_inicioFinVenta.Width = Root.Width
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Id_Almacen, ruta_tienda, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, "")
Starter.enVenta = True
LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
b_inicioFinVenta.Visible = False
End If
c.Close
End Sub

View File

@@ -29,9 +29,12 @@ Sub Class_Globals
Dim CODIGO As String
Dim STIME As String
Dim ruta As String
Dim q_buscar As String
Private p_clientes As Panel
Dim la_cuenta As Label
End Sub
'You can add more parameters here.
@@ -73,6 +76,9 @@ Sub B4XPage_Appear
' Log("LIMPIAMOS LISTVIEW")
lfila.Text = "NOMBRE"
If c.RowCount>0 Then
c.Position= 0
la_cuenta.text = c.GetString("CAT_CL_CODIGO")
Log("La cuenta: --->"&la_cuenta)
Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 14
@@ -90,6 +96,7 @@ Sub B4XPage_Appear
' ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO") & " - " & c.GetString("CAT_CL_SECUENCIA"), c.GetString("CAT_CL_NOMBRE") & ", " & c.GetString("CAT_CL_CALLE") & ", " & c.GetString("CAT_CL_NOEXT"))
ListView1.AddTwoLines(c.GetString("CAT_CL_CODIGO") & " - " & c.GetString("CAT_CL_SECUENCIA"), c.GetString("CAT_CL_NOMBRE") & CRLF & c.GetString("CAT_CL_CALLE1"))
Next
End If
c.Close
p_clientes.Height = Root.Height
@@ -241,4 +248,5 @@ End Sub
Private Sub p_clientes_Click
'Nada aqui, solo esta para que los clics no se pasen hacia atras.
End Sub
End Sub

View File

@@ -83,6 +83,13 @@ Sub GUARDA_Click
Else
motivo = "Cerrado permanente."
End If
If B4XPages.MainPage.cliente.IsInitialized Then
B4XPages.MainPage.cliente.motivoNoVenta = motivo
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.cliente.precision, motivo, e_comm.text)
Starter.enVenta = False
End If
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)

View File

@@ -279,7 +279,6 @@ Sub mandaPendientesclientesnuevos
cmd.Initialize
cmd.Name = "insert_clientesnuevos2_MEDI"
cmd.Parameters = Array As Object(c.GetString("CN_ID"), c.GetString("CN_FECHA"), c.GetString("CN_USER"), c.GetString("CN_LAT"), c.GetString("CN_LON"), c.GetString("CN_NOMBRE"), c.GetString("CN_DIRECCION"),c.GetString("COLONIA"),c.GetString("CP"),c.GetString("CN_ALMACEN"), c.GetString("CN_RUTA"),c.GetString("CN_BANDERA"))
' TMP_ID_CLIENTEN, TMP_FECHA_CAPTURA_MOVIL, TMP_USUARIO, TMP_LATITUD, TMP_LONGITUD, TMP_NOMBRE, TMP_DOMICILIO, TMP_COLONIA, TMP_CP, TMP_ALMACENID, TMP_RUTA,
reqManager.ExecuteCommand(cmd , $"ins_CNUEVOSPendientes_head_${c.GetString("CN_ID")}"$)
Next
End If

View File

@@ -8,6 +8,7 @@ Sub Class_Globals
Public rp As RuntimePermissions
Private Root As B4XView 'ignore
Private xui As XUI 'ignore
Dim reqManager As DBRequestManager
Dim conectado As String
Dim t1 As Timer
Dim sb As StringBuilder
@@ -304,11 +305,11 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End Sub
Sub B4XPage_Appear
LogColor("Revisa permisos Phone_State", Colors.Green)
'' LogColor("Revisa permisos Phone_State", Colors.Green)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then
Log("Con permisos de ubicacion")
' Log("Con permisos de ubicacion")
Else
Log("SIN permisos de ubicacion")
End If
@@ -576,6 +577,32 @@ Sub Subir_Click
Next
End If
c.Close
'BITACORA (PROYECTO GPS)
Private h As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select * from bitacoraGPS"$)
Do While h.nextrow
cmd.Initialize
Private eventob As String = h.GetString("eventob")
cmd.Name = "mandaBitacora_MEDICOMED"
Log("BITACORA3")
Private clienteb As String = h.GetString("clienteb")
Private finb As String = h.GetString("finb")
Private nombreCliente As String =Subs. traeNombreCliente(h.GetString("clienteb"))
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
clienteb = ""
finb = h.GetString("iniciob")
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
' Log($"'${almacenb}', '${usuariob}', '${rutab}', '${eventob}', '${clienteb}', '${nombreCliente}','${ iniciob}', '${finb}','${ latitudb}','${ longitudb}', '${precision}', '${motivonoventa}', '${motivonovisita}', '${fechab}'"$)
' TMP_ALMACEN, TMP_USUARIO, TMP_RUTA, TMP_EVENTO, TMP_ID_CLIENTE, TMP_NOMBRE_CLIENTE, TMP_INICIO, TMP_FINAL, TMP_LATITUD, TMP_LONGITUD, TMP_PRESICION, TMP_MOTIVO_NO_VENTA, TMP_MOTIVO_NO_VISITA, TMP_FECHA_SINC, TMP_FECHA_MOVIL
cmd.Parameters = Array As Object(h.GetString("almacenb"), h.GetString("usuariob"), h.GetString("rutab"), eventob, clienteb, nombreCliente, h.GetString("iniciob"), finb, h.GetString("latitudb"), h.GetString("longitudb"), h.GetString("precision"), h.GetString("motivonoventa"), h.GetString("motivonovisita"), h.GetString("fechab"))
reqManager.ExecuteCommand(cmd , "mandaBitacora")
Loop
Log("MANDAMOS BITACORA")
' c=B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO IS NOT NULL")
@@ -1748,6 +1775,8 @@ Sub e_ruta_EnterPressed
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_CODIGO_BARRAS")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_FOTO_CLIENTE")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM CLIENTES_NUEVOS")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,ALMACEN,l_ruta.Text,"Fin Día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","")
B4XPage_Appear
End If
End If
@@ -1869,6 +1898,7 @@ Sub B_OK_PAS_Click
img2.Visible=False
Subs.panelVisible(p_principal, 0, 0)
B4XPage_Appear
Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,ALMACEN,l_ruta.Text,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","")
Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then
RES = Msgbox2("Seguro que desea abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
If RES = DialogResponse.POSITIVE Then

Binary file not shown.

Binary file not shown.

View File

@@ -16,12 +16,14 @@ Sub Process_Globals
Dim ph As Phone
Public rp As RuntimePermissions
Public FLP As FusedLocationProvider
Dim reqManager As DBRequestManager
Dim enVenta As Boolean = False
' Private flpStarted As Boolean
Dim reqManager As DBRequestManager
Dim server As String = "http://187.189.244.154:1783"
Dim server As String = "http://187.189.244.154:1781"
' Dim server As String = "http://187.189.244.154:1783"
' Dim server As String = "http://11.0.0.105:1782"
' Dim server As String = "http://11.0.0.231:1782"
' Dim server As String = "http://11.0.0.220:1782"
Dim Timer1 As Timer
Dim Interval As Int = 300
Dim ruta As String = File.DirInternal
@@ -77,7 +79,7 @@ End Sub
Sub ENVIA_ULTIMA_GPS
If IsConnectedToInternet Or 1 = 1 Then
Dim logger As Boolean = True
If logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.Magenta)
' If logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.Magenta)
Dim skmt As SQL
Dim cmd As DBCommand
skmt.Initialize(ruta,"kmt.db", False)
@@ -89,7 +91,7 @@ Sub ENVIA_ULTIMA_GPS
cmd.Name = "UPDATE_MEDI_ACTUAL2_GPS"
If B4XPages.MainPage.lat_gps.Length < 15 Then B4XPages.MainPage.lat_gps = B4XPages.MainPage.lat_gps&"0"
cmd.Parameters = Array As Object(B4XPages.MainPage.montoActual, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa,B4XPages.MainPage.clientesvisitados,B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,B4XPages.MainPage.batt,0, 0, 0,B4XPages.MainPage.ALMACEN,B4XPages.MainPage.rutapreventa)
If logger Then Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, 0, 0, 0, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$)
' If logger Then Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, 0, 0, 0, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$)
reqManager.ExecuteCommand(cmd, "inst_visitas")
skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso"))
'Reiniciamos el timer para cuando llamamos el Sub desde "seleccion"

View File

@@ -1279,4 +1279,95 @@ Sub hayPedido As Boolean
If thisC.GetInt("hayPedido") > 0 Then hay = True
' Log($"Cliente actual=${traeCliente}, hayPedido=${hay}"$)
Return hay
End Sub
'En geocerca si mete la contraseña poner 0 en precision gps y si esta dentro de los 50 mts poner 1 y 2 para eventos que no lo ocupen
'Mandar fecha de sync(sysdate)
Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precision As String, motivonoventa As String, motivonovisita As String )
Log(motivonovisita)
Log("bitacora")
Log(eventob)
Private cmd As DBCommand
cmd.Initialize
cmd.Name = "mandaBitacora_MEDICOMED"
Log("BITACORA3")
Private nombreCliente As String = traeNombreCliente(clienteb)
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
clienteb = ""
finb = iniciob
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
If eventob <> "Termina Venta" And eventob <> "No Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO BITACORAGPS (fechab, usuariob , almacenb , rutab , eventob , clienteb , iniciob , finb , latitudb, longitudb , precision , motivonoventa , motivonovisita) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precision}' , '${motivonoventa}' , '${motivonovisita}')"$)
Log($"'${almacenb}', '${usuariob}', '${rutab}', '${eventob}', '${clienteb}', '${nombreCliente}','${ iniciob}', '${finb}','${ latitudb}','${ longitudb}', '${precision}', '${motivonoventa}', '${motivonovisita}', '${fechab}'"$)
' TMP_ALMACEN, TMP_USUARIO, TMP_RUTA, TMP_EVENTO, TMP_ID_CLIENTE, TMP_NOMBRE_CLIENTE, TMP_INICIO, TMP_FINAL, TMP_LATITUD, TMP_LONGITUD, TMP_PRESICION, TMP_MOTIVO_NO_VENTA, TMP_MOTIVO_NO_VISITA, TMP_FECHA_SINC, TMP_FECHA_MOVIL
' cmd.Parameters = Array As Object(almacenb, usuariob, rutab, eventob, clienteb, nombreCliente, iniciob, finb, latitudb, longitudb, precision, motivonoventa, motivonovisita, fechab)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
Else
Private e As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select fechab from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' and eventob = 'Inicia Venta' order by fechab desc"$)
' TMP_RUTA = (?) And tmp_almacen = (?) And tmp_usuario = (?) And tmp_id_cliente = (?) And tmp_evento = (?) And tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss')
If e.RowCount > 0 Then
e.Position = 0
Log("ACTUALIZA BITACORA")
If eventob = "Termina Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"update BITACORAGPS set finb = '${finb}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
' cmd.Name = "actualizaSalidaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss') where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss');
cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
' Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
else if eventob = "No Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', motivonoventa = '${motivonoventa}', motivonovisita = '${motivonovisita}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
' cmd.Name = "actualizaNoVentaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss'), TMP_MOTIVO_NO_VENTA = (?), TMP_MOTIVO_NO_VISITA = (?) where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss')
cmd.Parameters = Array As Object(finb, motivonoventa, motivonovisita, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
' Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
End If
If eventob <> "Inicia Venta" Then
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select * from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' order by fechab desc"$)
If c.RowCount > 0 Then
Log(c.RowCount)
c.Position = 0
cmd.Parameters = Array As Object(c.GetString("almacenb"), c.GetString("usuariob"), c.GetString("rutab"), c.GetString("eventob"), c.GetString("clienteb"), nombreCliente, c.GetString("iniciob"), c.GetString("finb"), c.GetString("latitudb"), c.GetString("longitudb"), c.GetString("precision"), c.GetString("motivonoventa"), c.GetString("motivonovisita"), c.GetString("fechab"))
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
Log("Mandamos bitacora")
End Sub
'Regresa el nombre del cliente del id dado.
Sub traeNombreCliente(id As String) As String
Private c As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = '${id}'"$)
Private n As String = "N/A"
Do While c.NextRow
n = c.GetString("CAT_CL_NOMBRE")
Loop
Return n
End Sub
Sub fechanormal(fecha As String) As String 'ignore
' Log(fecha)
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format
DateTime.DateFormat = "YYYY/MM/dd HH:mm:ss"
Dim nuevaFecha As String=DateTime.Date(fecha)
DateTime.DateFormat = OrigFormat 'return to orig date format
' Log(nuevaFecha)
Return nuevaFecha
End Sub
'Guarda el nombre de la pagina en base de datos la muestra.
Sub iniciaActividad(ia As String)
If ia <> "" And ia <> Null Then
' If Starter.logger Then LogColor($"Guardamos en BD '${ia}'"$, Colors.Yellow)
B4XPages.MainPage.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO"))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", ia))
B4XPages.ShowPage(ia)
' If Starter.logger Then LogColor("Iniciamos --> " & ia, Colors.Blue)
End If
End Sub

View File

@@ -754,12 +754,12 @@ Module9=C_NoVenta
NumberOfFiles=349
NumberOfLibraries=30
NumberOfModules=22
Version=12.5
Version=12.8
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: Medicomed
#VersionCode: 1
#VersionName: 3.08.10
#VersionName: 4.09.22
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -57,7 +57,7 @@ ModuleClosedNodes17=
ModuleClosedNodes18=
ModuleClosedNodes19=
ModuleClosedNodes2=
ModuleClosedNodes20=
ModuleClosedNodes20=9
ModuleClosedNodes21=
ModuleClosedNodes22=
ModuleClosedNodes3=
@@ -67,6 +67,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
NavigationStack=C_Cliente,MODS,0,0,Diseñador Visual,promociones.bal,-100,1,Diseñador Visual,principal.bal,-100,6,C_Principal,B4XPage_Created,296,6,Main,Activity_ActionBarHomeClick,38,0,B4XMainPage,B4XPage_Appear,227,0,C_Principal,B_OK_PAS_Click,1848,2,C_Principal,B4XPage_Appear,315,0,Subs,borraArribaDe600RenglonesBitacora,503,0,B4XMainPage,B4XPage_Created,125,0
NavigationStack=C_Cliente,mandaPendientes,821,0,Starter,ENVIA_ULTIMA_GPS,72,0,Starter,Service_Start,52,0,B4XMainPage,Entrar_Click,379,0,C_Cliente,JobDone,916,0,B4XMainPage,JobDone,395,2,Subs,bitacora,1314,6,C_Cliente,b_inicioFinVenta_Click,979,0,C_Cliente,B4XPage_Appear,200,0,C_Principal,Class_Globals,0,0,C_Principal,Subir_Click,580,0
SelectedBuild=0
VisibleModules=1,2,12,3,4,5,6,7,8,9
VisibleModules=2,20,12,4,5,7,8,9,21,18