diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas
index df076bc..50ad9b4 100644
--- a/B4A/B4XMainPage.bas
+++ b/B4A/B4XMainPage.bas
@@ -172,7 +172,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_CLIENTE (HEC_CLIENTE TEXT, HEC_MODULO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_AVISO_GIRO (HEAV_CLIENTE TEXT, HEAV_MODULO TEXT, HEAV_AVISO TEXT, HEAV_GIRO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT, HE_LAT TEXT, HE_LON 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("CREATE TABLE IF NOT EXISTS kmt_info2(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)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_PRO2265(H_IDCLIENTE TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_PRO3054(H_IDCLIENTE TEXT)")
@@ -185,7 +184,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.agregaColumna("PEDIDO", "PE_RECALCULO", "TEXT")
Subs.agregaColumna("PEDIDO", "PE_RECALCULOTOT", "TEXT")
Subs.agregaColumna("HIST_ENCUESTA", "HE_LON", "TEXT")
- Subs.agregaColumna("BITACORAGPS", "BAN_GEOB", "TEXT")
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "P10" en la tabla
c=skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('ENCUESTA_MODULO3') WHERE name='P10'")
c.Position = 0
diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas
index e83f777..8fdef6f 100644
--- a/B4A/C_Cliente.bas
+++ b/B4A/C_Cliente.bas
@@ -417,7 +417,7 @@ Sub Class_Globals
Dim fototomada As String
Private b_foto As Button
Dim precision As String
- Private b_Inicio_Fin_venta As Button
+ Dim b_Inicio_Fin_venta As Button
Dim dentroDeGeocerca As Boolean = False
Dim motivoNoVenta, motivoNoVisita As String
@@ -425,10 +425,12 @@ Sub Class_Globals
Dim IniVenNO As Boolean = False
Private geoCont As Int = 0
Private l_version As Label
- Private p_transparenteInicioFin As Panel
- Dim b_geo As String
+' Dim p_transparenteInicioFin As Panel
+' Dim b_geo As String
+
Private b_preventa As Button
+ Dim bitacora As C_Bitacora
End Sub
'You can add more parameters here.
@@ -482,12 +484,15 @@ Private Sub B4XPage_Created (Root1 As B4XView)
gest.Visible = False
l_version.Left = Root.Width - (l_version.Width + 10)
cuest.Initialize(Me, "cuest", Root, B4XPages.MainPage.skmt)
+ bitacora.Initialize("bitacora", "bitacora", Root, B4XPages.MainPage.skmt, reqManager)
+' bitacora.cargamosPanel
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
- iniciofin
+ bitacora.inicioFin
+' iniciofin
que_modulo = 1
dentroDeGeocerca = False
indicePregunta = 0
@@ -502,12 +507,12 @@ Sub B4XPage_Appear
LA_GPS.Text = "SIN UBICACION GPS"
cercavalor = 0
l_version.Text = Application.VersionName
- p_transparenteInicioFin.Width = Root.Width : p_transparenteInicioFin.Height = Root.Height
b_preventa.left = (Root.Width / 2) - (b_preventa.width / 2)
- b_Inicio_Fin_venta.Left = 5
- b_Inicio_Fin_venta.Width = Root.Width - 10
- b_Inicio_Fin_venta.Text = "INICIAR VENTA"
- b_Inicio_Fin_venta.BringToFront
+' p_transparenteInicioFin.Width = Root.Width : p_transparenteInicioFin.Height = Root.Height
+' b_Inicio_Fin_venta.Left = 5
+' b_Inicio_Fin_venta.Width = Root.Width - 10
+' b_Inicio_Fin_venta.Text = "INICIAR VENTA"
+' b_Inicio_Fin_venta.BringToFront
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
' If Not(Starter.enVenta) Then
' b_Inicio_Fin_venta.Visible = True
@@ -914,7 +919,7 @@ Sub B4XPage_Appear
End If
gest.Text = "PreVenta"
If Subs.traeTipoVentaDeBD = "VENTA" Then gest.Text = "Venta"
- Log($">>>>>>>>>> |${la_cuenta.Text.trim}|"$)
+' Log($">>>>>>>>>> |${la_cuenta.Text.trim}|"$)
If la_cuenta.Text.trim = "0" Then gest.Text = "Carga Abordo"
' Log($"ALMACEN: ${ALMACEN}${CRLF}RUTA:${LA_RUTA}"$)
End Sub
@@ -955,11 +960,12 @@ Sub GPS_LocationChanged (Location1 As Location)
gest.Visible = True
Tels.Visible = True
iniciofin
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
Else If geo = "1" Then
gest.Visible = False
Tels.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(999)
' b_Inicio_Fin_venta.Visible = False
End If
@@ -969,9 +975,10 @@ Sub GPS_LocationChanged (Location1 As Location)
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
gest.Visible = True
- iniciofin
+ bitacora.inicioFin
precision = "1"
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
ToastMessageShow("DENTRO de rango GPS", False)
Else If habi = "1" Then
c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD"))
@@ -996,13 +1003,14 @@ Sub GPS_LocationChanged (Location1 As Location)
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
gest.Visible = True
- b_geo = "1"
+' b_geo = "1"
+ bitacora.banderaGeoCerca = "1"
iniciofin
ToastMessageShow("DENTRO de rango GPS", False)
Else If distancealm > 50 Then
Tels.Visible = False
gest.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(998)
' b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
@@ -1010,7 +1018,8 @@ Sub GPS_LocationChanged (Location1 As Location)
precision = "0"
Tels.Visible = True
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
Else If c.RowCount = 0 Then
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
@@ -1018,19 +1027,20 @@ Sub GPS_LocationChanged (Location1 As Location)
Tels.Visible = True
gest.Visible = True
precision = "0"
- b_geo = "0"
+' b_geo = "0"
iniciofin
Else If c.RowCount = 0 Then
Tels.Visible = False
gest.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(997)
' b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
End If
End If
@@ -1039,7 +1049,8 @@ Sub GPS_LocationChanged (Location1 As Location)
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
End If
End If
@@ -1048,31 +1059,34 @@ Sub GPS_LocationChanged (Location1 As Location)
If c.RowCount > 0 Then
Tels.Visible = True
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
Else If c.RowCount = 0 Then
Tels.Visible = False
gest.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(996)
' b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then
Tels.Visible = True
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
Else If c.RowCount = 0 Then
Tels.Visible = False
gest.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(995)
' b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
End If
End If
@@ -1080,21 +1094,23 @@ Sub GPS_LocationChanged (Location1 As Location)
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
End If
End If
Else
Tels.Visible = False
gest.Visible = False
- p_transparenteInicioFin.Visible = False
+' p_transparenteInicioFin.Visible = False
Log(994)
' b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then
Tels.Visible = False
gest.Visible = True
- b_geo = "0"
+' b_geo = "0"
+ bitacora.banderaGeoCerca = "0"
iniciofin
End If
End If
@@ -1119,17 +1135,17 @@ End Sub
'Muestra u oculta el boton de inicio y fin de venta
Private Sub iniciofin
- If Starter.enVenta = False Then
- p_transparenteInicioFin.BringToFront
- p_transparenteInicioFin.Visible = True
- b_Inicio_Fin_venta.Visible = True
-' Log("Hacemos visible el boton de Inicio Venta")
- Else
- If b_Inicio_Fin_venta.Text <> "TERMINAR VENTA" Then
- p_transparenteInicioFin.Visible = False
- b_Inicio_Fin_venta.Visible = False
- End If
- End If
+' If Starter.enVenta = False Then
+' p_transparenteInicioFin.BringToFront
+' p_transparenteInicioFin.Visible = True
+' b_Inicio_Fin_venta.Visible = True
+'' Log("Hacemos visible el boton de Inicio Venta")
+' Else
+' If b_Inicio_Fin_venta.Text <> "TERMINAR VENTA" Then
+' p_transparenteInicioFin.Visible = False
+' b_Inicio_Fin_venta.Visible = False
+' End If
+' End If
End Sub
Private Sub b_geopass_Click
@@ -1207,7 +1223,7 @@ Sub JobDone(Job As HttpJob)
End Sub
Sub ListView1_ItemLongClick (Position As Int, Value As Object)
-
+
End Sub
Sub gest_Click
@@ -1922,7 +1938,7 @@ Private Sub B4XPage_CloseRequest As ResumableSub
' Return True To close, False To cancel
cuest.encuestaIniciada = False
cuest.ocultPanelPregunta
- If p_transparenteInicioFin.Visible And b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then
+ If bitacora.p_transparenteInicioFin2.Visible And bitacora.b_Inicio_Fin_venta2.Text = "TERMINAR VENTA" Then
ToastMessageShow("Por favor presione el botón de TERMINAR VENTA", True)
Return False
Else if Subs.hayPedido Then
@@ -1958,14 +1974,9 @@ End Sub
Sub Guardar_Click
Guardar.SendToBack
- p_transparenteInicioFin.Visible = True
- b_Inicio_Fin_venta.Visible = True
- b_Inicio_Fin_venta.Text = "TERMINAR VENTA"
-' Starter.idCliente = ""
- Log("Hacemos visible el boton de Terminar Venta")
-End Sub
-
-Sub guardadoventa
+ bitacora.b_Inicio_Fin_venta2.Text = "TERMINAR VENTA"
+ bitacora.enVenta = False
+ bitacora.inicioFin
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
@@ -1984,26 +1995,19 @@ Sub guardadoventa
Private s3 As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select * FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO <> ? AND PE_RECALCULO <> ? AND PE_RECALCULO <> ?",Array As String("","null",Null))
LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then
-
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO = ? AND PE_RECALCULO = ? AND PE_RECALCULO = ?",Array As String("","null",Null))
s.Position = 0
Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO <> ? AND PE_RECALCULO <> ? AND PE_RECALCULO <> ?",Array As String("","null",Null))
s5.Position = 0
-
Private suma As Float = s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE")
-
s.Close
-
Else If s3.RowCount = 0 Then
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
s.Position=0
-
Private suma As Float = s.GetString("TOTAL_CLIE")
-
s.Close
End If
'AQUI TERMINA
-
If c.GetString("CUANTOS") > 0 Then
B4XPages.MainPage.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
@@ -2033,7 +2037,16 @@ Sub guardadoventa
ToastMessageShow(".",True)
End Try
DateTime.TimeFormat = "HH:mm:ss"
- B4XPages.ShowPage("Principal")
+' B4XPages.ShowPage("Principal")
+End Sub
+
+Sub Guardar_LongClick
+' bitacora.p_transparenteInicioFin2.Visible = True
+' bitacora.b_Inicio_Fin_venta2.text = "TERMINAR VENTA"
+End Sub
+
+Sub guardadoventa
+
End Sub
Sub NUEVO_Click
@@ -4733,41 +4746,40 @@ Private Sub StopCamera2
End Sub
Private Sub b_Inicio_Fin_venta_Click
+'' b_Inicio_Fin_venta.Visible = False
+'' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
+' contadorIniciarVenta = 0
+' IniVenNO = False
+' If dentroDeGeocerca Then precision = 1
+'' LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red)
+' motivoNoVenta = ""
+' motivoNoVisita = ""
+' p_transparenteInicioFin.Visible = False
+' If b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then
+' Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, motivoNoVisita,b_geo)
+' bitacora.enVenta = False
+'' LogColor($">>>>>> TERMINA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
+' B4XPages.ShowPageAndRemovePreviousPages("Principal")
+'' guardadoventa
+' Else if b_Inicio_Fin_venta.Text = "INICIAR VENTA" Then
+' contadorIniciarVenta = 0
+' IniVenNO = False
+' contadorIniciarVenta = contadorIniciarVenta + 1
+' If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta <> "NO VENTA" Then
+' IniVenNO = True
+' Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "",b_geo)
+' bitacora.enVenta = True
+'' LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
+' Else If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta = "NO VENTA" Then
+' IniVenNO = True
+' Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, "",b_geo)
+' bitacora.enVenta = True
+' Else If contadorIniciarVenta > 1 Then
+' b_Inicio_Fin_venta.Visible = False
+' End If
+' End If
+'
' b_Inicio_Fin_venta.Visible = False
-' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
- contadorIniciarVenta = 0
- IniVenNO = False
- If dentroDeGeocerca Then precision = 1
-' LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red)
- motivoNoVenta = ""
- motivoNoVisita = ""
- p_transparenteInicioFin.Visible = False
- If b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, motivoNoVisita,b_geo)
- Starter.enVenta = False
-' LogColor($">>>>>> TERMINA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
- B4XPages.ShowPageAndRemovePreviousPages("Principal")
- guardadoventa
- Else if b_Inicio_Fin_venta.Text = "INICIAR VENTA" Then
- contadorIniciarVenta = 0
- IniVenNO = False
- contadorIniciarVenta = contadorIniciarVenta + 1
- If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta <> "NO VENTA" Then
- IniVenNO = True
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "",b_geo)
- Starter.enVenta = True
-' LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
- Else If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta = "NO VENTA" Then
- IniVenNO = True
- Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, "",b_geo)
- Starter.enVenta = True
- Else If contadorIniciarVenta > 1 Then
- b_Inicio_Fin_venta.Visible = False
- End If
- End If
-
- b_Inicio_Fin_venta.Visible = False
-
End Sub
Private Sub LA_GEO_Click
diff --git a/B4A/C_Clientes.bas b/B4A/C_Clientes.bas
index d021d99..b6de754 100644
--- a/B4A/C_Clientes.bas
+++ b/B4A/C_Clientes.bas
@@ -113,13 +113,12 @@ Sub ListView1_ItemClick (Position As Int, Value As Object)
lfila.text = "Nombre"
If c2.RowCount>0 Then
For i=0 To c2.RowCount -1
- c2.Position=i
+ c2.Position = i
ListView1.AddTwoLines(c2.GetString("CAT_CL_CODIGO"), c2.GetString("CAT_CL_NOMBRE"))
Next
End If
entro = "4"
Else If entro = "4" Then
- Starter.enVenta = False
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value))
DateTime.TimeFormat = "HHmmss"
@@ -135,8 +134,15 @@ Sub ListView1_ItemClick (Position As Int, Value As Object)
End If
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_INI = ? where HSO_INI = 0 ", Array As Object(STIME))
DateTime.TimeFormat = "HH:mm:ss"
+' Log(entro)
+ If B4XPages.MainPage.cliente.bitacora.IsInitialized Then
+ Log("VAMOS A CLIENTE CON ENVENTA = FALSO")
+ B4XPages.MainPage.cliente.bitacora.iniciamosVenta
+ Log(B4XPages.MainPage.cliente.bitacora.enVenta)
+ End If
B4XPages.ShowPage("Cliente")
End If
+ Log(entro)
End Sub
Private Sub B4XPage_CloseRequest As ResumableSub
diff --git a/B4A/C_Cuestionario.bas b/B4A/C_Cuestionario.bas
index d6f91c4..001dac1 100644
--- a/B4A/C_Cuestionario.bas
+++ b/B4A/C_Cuestionario.bas
@@ -216,7 +216,7 @@ Sub agregaPreguntaAbierta(id As String, pregunta As String, ids As List, respues
' Private labelXHeight As String =
Log(labelX(p).Height)
sv_cuest.panel.AddView(labelX(p), 0, (70 * p), (panelX.Width * 0.72), 60) 'Agregamos la etiqueta al panel.
- sv_cuest.panel.AddView(et(p), (labelX(p).Width + 5), (70 * p), (panelX.Width * 0.2), 85) 'Agregamos el edittext al panel.
+ sv_cuest.panel.AddView(et(p), (labelX(p).Width + 5), (70 * p), (panelX.Width * 0.2), 115) 'Agregamos el edittext al panel.
Private newTop As Int = 0 'lbl.top + lbl.Height + 20 'Si es el primer radio, lo ponemos en top = alto de la "pregunta" + 10.
If p <> 0 Then newTop = et(p - 1).Top + et(p - 1).Height + 5 'Calculamos el Top del radio de acuerdo al top y alto del radio anterior.
et(p).Top = newTop
diff --git a/B4A/C_NoVenta.bas b/B4A/C_NoVenta.bas
index 1299195..ea23783 100644
--- a/B4A/C_NoVenta.bas
+++ b/B4A/C_NoVenta.bas
@@ -31,7 +31,8 @@ Sub Class_Globals
Private stay_mi As String
Private stay_ss As String
Private p_NoVenta As Panel
- dim tipo_venta = Subs.traeTipoVentaDeBD
+ Dim tipo_venta = Subs.traeTipoVentaDeBD
+ Dim bitacora As C_Bitacora
End Sub
'You can add more parameters here.
@@ -51,6 +52,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If
' skmt.Initialize(ruta,"kmt.db", True)
+ bitacora.Initialize("bitacora", "bitacora", Root, B4XPages.MainPage.skmt, Starter.reqManager)
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -127,10 +129,9 @@ Sub GUARDA_Click
stay_hh = c.GetString("HORAS_TOTALES") * 60 * 60
stay_mi = c.GetString("MINUTOS_TOTALES") * 60
stay_ss = c.GetString("SEGUNDOS_TOTALES")
-
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
DateTime.TimeFormat = "HH:mm:ss"
- Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRutaBitacora, "NO VENTA", Subs.traeCliente,Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, r_1.Checked, B4XPages.MainPage.cliente.b_geo)
+ bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRutaBitacora, "NO VENTA", Subs.traeCliente,Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, r_1.Checked, B4XPages.MainPage.cliente.bitacora.banderaGeoCerca)
B4XPages.ShowPage("Principal")
End Sub
\ No newline at end of file
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index 081dcb5..c97692b 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -238,6 +238,7 @@ Sub Class_Globals
Dim l_forzarActualizacion As Label
Dim tipo_venta As String = Subs.traeTipoVentaDeBD
Private b_abordo As Button
+ Dim bitacora As C_Bitacora
End Sub
'You can add more parameters here.
@@ -248,6 +249,7 @@ End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
+ bitacora.Initialize("bitacora", "bitacora", Root, B4XPages.MainPage.skmt, Starter.reqManager)
'load the layout to Root
Root.LoadLayout("principal")
SCROLL_RESDIA.Width = Root.Width
@@ -285,7 +287,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
' If l_ru_pri.Text = 0 Then
' l_ru_pri.Text = 0
' End If
-
If l_ruta.Text = 0 Then
l_ruta.Text = 0
Else If l_ruta.Text > 0 Then
@@ -294,6 +295,20 @@ Private Sub B4XPage_Created (Root1 As B4XView)
l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close
End If
+ ' Log($"|${Subs.traeTipoVentaDeBD}|"$)
+ If Subs.traeTipoVentaDeBD = "VENTA" Or Subs.traeTipoVentaDeBD = "ABORDO" Then
+ If l_ruta.Text <> "0" Then
+ Log(999 & "|" & l_ruta.Text & "|")
+ b_abordo.Visible = True
+ End If
+ Else
+ b_abordo.Visible = False
+ End If
+' If l_ruta.Text <> "0" Then
+' b_abordo.Visible = True
+' Else
+' b_abordo.Visible = False
+' End If
If Cuantos = 0 Then
L_MONTOD.Text =0
l_cuantosc.Text = 0
@@ -346,9 +361,6 @@ End Sub
Sub B4XPage_Appear
' LogColor($"########## ${Subs.traeRuta} ##########"$, Colors.red)
p_principal.Visible = True
-' Log($"|${Subs.traeTipoVentaDeBD}|"$)
-
- If Subs.traeTipoVentaDeBD = "VENTA" Or Subs.traeTipoVentaDeBD = "ABORDO" Then b_abordo.Visible = True Else b_abordo.Visible = False
E_RUTA2.Text = ""
p_ruta2.Visible = False
Subs.validaPromoProcterPRO3009
@@ -934,7 +946,7 @@ Sub cargar_Click
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
-
+
Dim P As PhoneId
imei = ""
cmd.Initialize
@@ -2151,61 +2163,63 @@ Sub b_mapa_Click
End Sub
Sub t2_tick
- e_ruta.Text = ""
- B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from noventa")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod2")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VENTAS")
- B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VERIFICACION")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA2")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_STAY_OUT")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_FACE")
- B4XPages.MainPage.skmt.ExecNonQuery("INSERT INTO HIST_STAY_OUT(HSO_INI, HSO_FIN) VALUES (0,0)")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_CODIGO_BARRAS")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO1")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO2")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO3")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO4")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO5")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
- B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM RUTA_SUPLENCIA")
- B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("CARGA_DIA"))
- B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("pasword"))
- B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD"))
- B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD"))
+ e_ruta.Text = ""
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from noventa")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod2")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VENTAS")
+ B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VERIFICACION")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA2")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_STAY_OUT")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_FACE")
+ B4XPages.MainPage.skmt.ExecNonQuery("INSERT INTO HIST_STAY_OUT(HSO_INI, HSO_FIN) VALUES (0,0)")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_CODIGO_BARRAS")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO1")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO2")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO3")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO4")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO5")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
+ B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM RUTA_SUPLENCIA")
+ B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("CARGA_DIA"))
+ B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("pasword"))
+ B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD"))
+ B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD"))
' B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("FORZAR_ACTUALIZACION"))
' B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("VERSION_NUEVA"))
- B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(0))
+ B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(0))
' B4XPage_Appear
- E_RUTA2.Visible = False
- E_RUTA2.Text = ""
- cargar.Visible = False
- Subir.Visible = False
- connecta.Visible = True
+ E_RUTA2.Visible = False
+ E_RUTA2.Text = ""
+ b_abordo.Visible = False
+ cargar.Visible = False
+ Subir.Visible = False
+ connecta.Visible = True
' B4XPages.ShowPage("Login")
' If PB2.Progress = 0 Then
' S_CP.Text = "ENVIAR DATOS (K-1)"
' End If
' img2.Visible=False
- t2.Enabled = False
- B4XPage_Appear
+ t2.Enabled = False
+ B4XPage_Appear
End Sub
Sub e_ruta_EnterPressed
If e_ruta.Text = "FIN DIA" Then
RES = Msgbox2("Seguro que desea hacer el cierre? Todos los datos se borrarán.", "Cierre", "Si", "", "No", LoadBitmap(File.DirAssets, "alert2.png")) 'ignore
If RES = DialogResponse.POSITIVE Then
- Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Fin Día", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
+ bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Fin Día", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
Label22.Visible = False
l_rutasuplencia.Visible = False
- l_rutasuplencia.Text = ""
+ l_rutasuplencia.Text = ""
+ b_abordo.Visible = False
t2.Initialize("t2", 1000) ' 1000 ms = 1 segundo
t2.Enabled = True
End If
@@ -2335,9 +2349,9 @@ Sub B_OK_PAS_Click
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CARGA_DIA",1))
If E_RUTA2.Visible = True Then
- Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día suplencia", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
+ bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día suplencia", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
Else
- Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
+ bitacora.mandaBitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","", "")
End If
Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then
@@ -2365,6 +2379,14 @@ Sub B_OK_PAS_Click
ExitApplication
End If
End If
+ If Subs.traeTipoVentaDeBD = "VENTA" Or Subs.traeTipoVentaDeBD = "ABORDO" Then
+ If l_ruta.Text <> "0" Then
+ Log(888 & "|" & l_ruta.Text & "|")
+ b_abordo.Visible = True
+ End If
+ Else
+ b_abordo.Visible = False
+ End If
End Sub
Sub NUEVO_Click
@@ -2842,6 +2864,7 @@ Private Sub p_transparenteActualizacion_Click
End Sub
Private Sub b_abordo_Click
- Starter.skmt.ExecNonQuery($"update cuentaa set cuenta = '0'"$)
+ Starter.skmt.ExecNonQuery($"delete from cuentaa"$)
+ Starter.skmt.ExecNonQuery($"insert into cuentaa (cuenta) values ('0')"$)
B4XPages.ShowPage("Cliente")
End Sub
\ No newline at end of file
diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas
index 6b787cb..c82f796 100644
--- a/B4A/C_Productos.bas
+++ b/B4A/C_Productos.bas
@@ -540,7 +540,7 @@ Sub b_prodMas_Click
End Sub
Private Sub et_pCant_TextChanged (Old As String, New As String)
- LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta)
+' LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta)
' Try
Dim index As Int = clv_productos.GetItemFromView(Sender)
Dim pnl0 As B4XView = clv_productos.GetPanel(index)
diff --git a/B4A/Files/iniciofinventa.bal b/B4A/Files/iniciofinventa.bal
new file mode 100644
index 0000000..555eaa2
Binary files /dev/null and b/B4A/Files/iniciofinventa.bal differ
diff --git a/B4A/Files/login.bal b/B4A/Files/login.bal
index 863a17f..1afc5ef 100644
Binary files a/B4A/Files/login.bal and b/B4A/Files/login.bal differ
diff --git a/B4A/Guna Vistas V3.1.b4a b/B4A/Guna Vistas V3.1.b4a
index 5e65c4e..c310c15 100644
--- a/B4A/Guna Vistas V3.1.b4a
+++ b/B4A/Guna Vistas V3.1.b4a
@@ -31,67 +31,68 @@ File35=Hacer pedido.jpg
File36=hacerpedido30.png
File37=ic_cloud_download_white_24dp.png
File38=infonavit1.jpg
-File39=itembuttonblue.png
+File39=inicioFinVenta.bal
File4=amarillo.png
-File40=keymon_logo.png
-File41=kmt.db
-File42=login.bal
-File43=Logo Guna_192x192.png
-File44=Logo Guna-01.png
-File45=logo sanfer.jpg
-File46=logo_exitus1.jpg
-File47=logo-guna-18.png
-File48=MainPage.bal
-File49=Malo.jpg
+File40=itembuttonblue.png
+File41=keymon_logo.png
+File42=kmt.db
+File43=login.bal
+File44=Logo Guna_192x192.png
+File45=Logo Guna-01.png
+File46=logo sanfer.jpg
+File47=logo_exitus1.jpg
+File48=logo-guna-18.png
+File49=MainPage.bal
File5=anterior.jpg
-File50=mapa.bal
-File51=mapa_rutas.bal
-File52=maparutas.bal
-File53=mas-azul.png
-File54=mas-azul-red.png
-File55=mas-azul-red1.png
-File56=menos.png
-File57=menosred.png
-File58=menos-red.png
-File59=nota (conflict 2022-07-08-00-16-40).bal
+File50=Malo.jpg
+File51=mapa.bal
+File52=mapa_rutas.bal
+File53=maparutas.bal
+File54=mas-azul.png
+File55=mas-azul-red.png
+File56=mas-azul-red1.png
+File57=menos.png
+File58=menosred.png
+File59=menos-red.png
File6=bus-ar.png
-File60=nota.bal
-File61=noventa.bal
-File62=nuevocliente.bal
-File63=nuevo-cliente20.png
-File64=Nvo Cliente.jpg
-File65=p&g.png
-File66=palomita_verde.png
-File67=pedido.bal
-File68=planfia_logo.png
-File69=planfia_logo_old.png
+File60=nota (conflict 2022-07-08-00-16-40).bal
+File61=nota.bal
+File62=noventa.bal
+File63=nuevocliente.bal
+File64=nuevo-cliente20.png
+File65=Nvo Cliente.jpg
+File66=p&g.png
+File67=palomita_verde.png
+File68=pedido.bal
+File69=planfia_logo.png
File7=carrito.png
-File70=planfia_logo_old2.png
-File71=principal.bal
-File72=proditem.bal
-File73=proditem2.bal
-File74=productos.bal
-File75=promociones.bal
-File76=qr.bal
-File77=qr_gallina.jpg
-File78=resdia.bal
-File79=ResDia.jpg
+File70=planfia_logo_old.png
+File71=planfia_logo_old2.png
+File72=principal.bal
+File73=proditem.bal
+File74=proditem2.bal
+File75=productos.bal
+File76=promociones.bal
+File77=qr.bal
+File78=qr_gallina.jpg
+File79=resdia.bal
File8=celltitle.bal
-File80=resdia20.png
-File81=rojo.png
-File82=salma.jpg
-File83=salma.png
-File84=seleccion.bal
-File85=senial.jpg
-File86=sync.png
-File87=tache_rojo.png
-File88=telefonos.bal
-File89=Ticket dia.jpg
+File80=ResDia.jpg
+File81=resdia20.png
+File82=rojo.png
+File83=salma.jpg
+File84=salma.png
+File85=seleccion.bal
+File86=senial.jpg
+File87=sync.png
+File88=tache_rojo.png
+File89=telefonos.bal
File9=cliente.bal
-File90=ticketdia20.png
-File91=ticketsdia.bal
-File92=Tiendita.jpg
-File93=verde.png
+File90=Ticket dia.jpg
+File91=ticketdia20.png
+File92=ticketsdia.bal
+File93=Tiendita.jpg
+File94=verde.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup11=Default Group
@@ -185,6 +186,7 @@ FileGroup90=Default Group
FileGroup91=Default Group
FileGroup92=Default Group
FileGroup93=Default Group
+FileGroup94=Default Group
Group=Default Group
Library1=appupdating
Library10=firebaseadmob
@@ -219,41 +221,42 @@ Library6=byteconverter
Library7=camera
Library8=core
Library9=fileprovider
-ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~AddApplicationText(~\n~)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~ ''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddApplicationText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~ CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(~\n~ )~\n~ AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~CreateResourceFromFile(Macro, JhsIceZxing1.CaturePortrait)~\n~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~AddManifestText(~\n~ ~\n~ )~\n~AddManifestText()~\n~~\n~AddManifestText(~\n~ ~\n~ )~\n~ AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)~\n~ SetApplicationAttribute(android:allowBackup, "false")~\n~ ~\n~ ~\n~ AddManifestText(~\n~ )~\n~ AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~' AddActivityText(main,~\n~'~\n~'~\n~'~\n~'~\n~')~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~ AddActivityText(main,~\n~~\n~~\n~~\n~~\n~~\n~)
+ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~AddApplicationText(~\n~)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~ ''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddApplicationText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~ CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~ CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~ SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'//////////////////////////////////////////////////////~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(~\n~ )~\n~ AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~CreateResourceFromFile(Macro, JhsIceZxing1.CaturePortrait)~\n~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~AddManifestText(~\n~ ~\n~ )~\n~AddManifestText()~\n~~\n~AddManifestText(~\n~ ~\n~ )~\n~ AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)~\n~ SetApplicationAttribute(android:allowBackup, "false")~\n~ ~\n~ ~\n~ AddManifestText(~\n~ )~\n~ AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~' AddActivityText(main,~\n~'~\n~'~\n~'~\n~'~\n~')~\n~~\n~ 'Para que se registre para abrir bases de datos~\n~ AddActivityText(main,~\n~~\n~~\n~~\n~~\n~~\n~)~\n~~\n~
Module1=appUpdater
-Module10=C_NoVenta
-Module11=C_NuevoCliente
-Module12=C_Pedidos
-Module13=C_Principal
-Module14=C_Productos
-Module15=C_Promos
-Module16=C_TicketsDia
-Module17=C_UpdateAvailable
-Module18=CameraExClass
-Module19=DBRequestManager
+Module10=C_Nota
+Module11=C_NoVenta
+Module12=C_NuevoCliente
+Module13=C_Pedidos
+Module14=C_Principal
+Module15=C_Productos
+Module16=C_Promos
+Module17=C_TicketsDia
+Module18=C_UpdateAvailable
+Module19=CameraExClass
Module2=B4XMainPage
-Module20=EscPosPrinter
-Module21=FirebaseMessaging
-Module22=MAPA_RUTAS
-Module23=Starter
-Module24=Subs
-Module25=Tracker
+Module20=DBRequestManager
+Module21=EscPosPrinter
+Module22=FirebaseMessaging
+Module23=MAPA_RUTAS
+Module24=Starter
+Module25=Subs
+Module26=Tracker
Module3=BatteryUtilities
-Module4=C_Cliente
-Module5=C_Clientes
-Module6=C_Cuestionario
-Module7=C_Historico
-Module8=C_Mapas
-Module9=C_Nota
-NumberOfFiles=93
+Module4=|relative|..\C_Bitacora
+Module5=C_Cliente
+Module6=C_Clientes
+Module7=C_Cuestionario
+Module8=C_Historico
+Module9=C_Mapas
+NumberOfFiles=94
NumberOfLibraries=33
-NumberOfModules=25
+NumberOfModules=26
Version=12.8
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: Guna Preventa
#VersionCode: 1
- #VersionName: 4.11.02
+ #VersionName: 4.11.14
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False
diff --git a/B4A/Guna Vistas V3.1.b4a.meta b/B4A/Guna Vistas V3.1.b4a.meta
index 1a6dbc1..947dad0 100644
--- a/B4A/Guna Vistas V3.1.b4a.meta
+++ b/B4A/Guna Vistas V3.1.b4a.meta
@@ -17,6 +17,7 @@ ModuleBookmarks22=
ModuleBookmarks23=
ModuleBookmarks24=
ModuleBookmarks25=
+ModuleBookmarks26=
ModuleBookmarks3=
ModuleBookmarks4=
ModuleBookmarks5=
@@ -43,6 +44,7 @@ ModuleBreakpoints22=
ModuleBreakpoints23=
ModuleBreakpoints24=
ModuleBreakpoints25=
+ModuleBreakpoints26=
ModuleBreakpoints3=
ModuleBreakpoints4=
ModuleBreakpoints5=
@@ -54,28 +56,29 @@ ModuleClosedNodes0=
ModuleClosedNodes1=11,13,14
ModuleClosedNodes10=
ModuleClosedNodes11=
-ModuleClosedNodes12=6
-ModuleClosedNodes13=1,3
-ModuleClosedNodes14=3,17
-ModuleClosedNodes15=
+ModuleClosedNodes12=
+ModuleClosedNodes13=6
+ModuleClosedNodes14=
+ModuleClosedNodes15=3,17
ModuleClosedNodes16=
-ModuleClosedNodes17=4
-ModuleClosedNodes18=
+ModuleClosedNodes17=
+ModuleClosedNodes18=4
ModuleClosedNodes19=
ModuleClosedNodes2=
ModuleClosedNodes20=
ModuleClosedNodes21=
-ModuleClosedNodes22=3,4
-ModuleClosedNodes23=3,4,5,6,7,8,9
-ModuleClosedNodes24=
+ModuleClosedNodes22=
+ModuleClosedNodes23=3,4
+ModuleClosedNodes24=4,6,7,8,9,10
ModuleClosedNodes25=
+ModuleClosedNodes26=
ModuleClosedNodes3=
-ModuleClosedNodes4=3
+ModuleClosedNodes4=4,5,6,7,8,9,10,11,12,13
ModuleClosedNodes5=
-ModuleClosedNodes6=8,9,10,11
-ModuleClosedNodes7=
+ModuleClosedNodes6=
+ModuleClosedNodes7=5,6,8,9,10,11
ModuleClosedNodes8=
ModuleClosedNodes9=
-NavigationStack=C_Productos,et_pCant_TextChanged,537,6,Visual Designer,cliente.bal,-100,2,Subs,traeTablaProds,1683,0,Subs,agregaColumna,1182,0,Starter,JobDone,139,0,Starter,Application_Error,135,0,C_Principal,e_ruta_Click,2811,0,C_Principal,B_OK_PANEL5_Click,2804,0,C_Principal,JobDone,1177,0,C_Cliente,gest_Click,1226,6,Main,Globals,23,0
+NavigationStack=C_Bitacora,p_transparenteInicioFin2_click,188,0,C_Bitacora,Class_Globals,7,0,C_Bitacora,Initialize,25,6,C_Bitacora,B4XPage_Created,33,0,C_Cuestionario,Class_Globals,5,0,Visual Designer,inicioFinVenta.bal,-100,1,Visual Designer,proditem.bal,-100,6,Visual Designer,clientes.bal,-100,1,C_Cuestionario,agregaPreguntaAbierta,217,0,B4XMainPage,B4XPage_Created,179,0,Starter,JobDone,137,0
SelectedBuild=0
-VisibleModules=23,2,13,24,4,5,14,9,25
+VisibleModules=24,2,14,25,4,5,7,6,15,11
diff --git a/B4A/Subs.bas b/B4A/Subs.bas
index 4f3e306..8e57f83 100644
--- a/B4A/Subs.bas
+++ b/B4A/Subs.bas
@@ -721,8 +721,6 @@ Sub traeRutasSup As String
Return rutas
End Sub
-
-
Sub traeCliente As String 'ignore
Private c As Cursor
Private cl As String
@@ -1277,46 +1275,46 @@ 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, BAN_GEOB As String)
- Log(motivonovisita)
-' Log("bitacora")
- Private cmd As DBCommand
- cmd.Initialize
- cmd.Name = "mandaBitacora3_GUNA"
-' 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 = "Carga día suplencia" Then nombreCliente = traeRutasSup
- 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, BAN_GEOB) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precision}' , '${motivonoventa}' , '${motivonovisita}', '${BAN_GEOB}')"$)
- 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"$)
- 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.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
- 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.Parameters = Array As Object(finb, motivonoventa, motivonovisita, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
- 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
- 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"), c.GetString("BAN_GEOB"))
- Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
- End If
- End If
+' Log(motivonovisita)
+'' Log("bitacora")
+' Private cmd As DBCommand
+' cmd.Initialize
+' cmd.Name = "mandaBitacora3_GUNA"
+'' 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 = "Carga día suplencia" Then nombreCliente = traeRutasSup
+' 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, BAN_GEOB) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precision}' , '${motivonoventa}' , '${motivonovisita}', '${BAN_GEOB}')"$)
+' 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"$)
+' 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.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
+' 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.Parameters = Array As Object(finb, motivonoventa, motivonovisita, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
+' 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
+' 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"), c.GetString("BAN_GEOB"))
+' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
+' End If
+' End If
' Log("Mandamos bitacora")
End Sub
@@ -1620,7 +1618,7 @@ Sub traeUsarIntentBDWA As Boolean 'ignore
x.Position = 0
If x.GetString("CAT_VA_VALOR") = "true" Then BDWA = True
End If
- Log($"cb_importarBDWA = ${BDWA}"$)
+' Log($"cb_importarBDWA = ${BDWA}"$)
Return BDWA
End Sub
@@ -1704,17 +1702,17 @@ Sub revisaProdFueraDePromo(prodId As String) As Boolean
End If
Return fueraDePromo
End Sub
-
+
'Trae el tipo de venta (VENTA o PREVENTA) desde CAT_VARIABLES, o "PREVENTA" por default.
Sub traeTipoVentaDeBD As String
Private tipoVenta As String = "PREVENTA"
Private r As ResultSet = Starter.skmt.ExecQuery("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'TIPO_VENTA' ")
Do While r.NextRow
- tipoVenta = r.GetString("CAT_VA_VALOR")
+ tipoVenta = r.GetString("CAT_VA_VALOR").As(String).ToUpperCase
Loop
If Starter.idCliente = "0" Then
tipoVenta = "ABORDO"
End If
- Log(">>>>>>> " & tipoVenta)
+' Log(">>>>>>> " & tipoVenta)
Return tipoVenta
End Sub
\ No newline at end of file
diff --git a/B4A/Tracker.bas b/B4A/Tracker.bas
index 023ac9f..d84255d 100644
--- a/B4A/Tracker.bas
+++ b/B4A/Tracker.bas
@@ -96,7 +96,7 @@ Public Sub StartFLP
' If flpStarted = False Then
' Log("RequestLocationUpdates")
FLP.RequestLocationUpdates(CreateLocationRequest) 'Buscamos ubicacion
- Log("Buscamos ubicacion")
+' Log("Buscamos ubicacion")
' Log(actualLR.GetSmallestDisplacement)
flpStarted = True
' End If
diff --git a/B4A/appUpdater.bas b/B4A/appUpdater.bas
index 184ccf1..7c2a0d4 100644
--- a/B4A/appUpdater.bas
+++ b/B4A/appUpdater.bas
@@ -121,41 +121,41 @@ Sub Service_Start (StartingIntent As Intent)
B4XPages.MainPage.muestraProgreso("Buscando actualizaciones, un momento por favor.")
Log("Buscando actualización")
fileProvider_init
-' Wait For (Download(Me, lnk)) JobDone (j As HttpJob)
-' If j.Success Then
-' Try
-' Dim app() As String = Regex.Split(Chr(9),j.GetString)
-' ' // Set the data
-' newApp.appLink = app(3) 'Liga a nueva app
-' newApp.newMsg = app(1) 'Texto de que hay actualizacion
-' newApp.okMsg = app(2) 'Texto de app al corriente
-' newApp.version = app(0) 'Version actual
-'
-' Log($"Application.VersionName=${Application.VersionName}, newApp=${newApp}"$)
-'
-' ' // App version check
-' If newApp.version = Application.VersionName Then
-' newApp.update = False
-' Log("No new app")
-' B4XPages.ShowPage("updateAvailable")
-' 'Se puede mandar tambien una notificacion avisando que NO hay actualizaciones
-'' CreateNotification2("Aplicacion al corriente","No hay actualizaciones disponibles","ic_file_download_white_24dp",Main,True,True,nNewApp,nNewAppnID)
-' End If
-' If newApp.version <> Application.VersionName Then
-' newApp.update = True
-' Log("New app true")
-' B4XPages.ShowPage("updateAvailable")
-' 'Se puede mandar tambien una notificacion avisando que hay actualizacion disponible
-'' CreateNotification2("Nueva aplicación disponible","Haga clic para descargar.","ic_file_download_white_24dp",C_UpdateAvailable,True,True,nNewApp,nNewAppnID)
-' End If
-' Catch
-' Log("appUpdater(), Job Failed, error " & LastException.Message)
-' End Try
-' Else
-' Log("appUpdater(), Job Failed " & lnk)
-' End If
-' j.Release
-' StopService(Me)
+ Wait For (Download(Me, lnk)) JobDone (j As HttpJob)
+ If j.Success Then
+ Try
+ Dim app() As String = Regex.Split(Chr(9),j.GetString)
+ ' // Set the data
+ newApp.appLink = app(3) 'Liga a nueva app
+ newApp.newMsg = app(1) 'Texto de que hay actualizacion
+ newApp.okMsg = app(2) 'Texto de app al corriente
+ newApp.version = app(0) 'Version actual
+
+ Log($"Application.VersionName=${Application.VersionName}, newApp=${newApp}"$)
+
+ ' // App version check
+ If newApp.version = Application.VersionName Then
+ newApp.update = False
+ Log("No new app")
+ B4XPages.ShowPage("updateAvailable")
+ 'Se puede mandar tambien una notificacion avisando que NO hay actualizaciones
+' CreateNotification2("Aplicacion al corriente","No hay actualizaciones disponibles","ic_file_download_white_24dp",Main,True,True,nNewApp,nNewAppnID)
+ End If
+ If newApp.version <> Application.VersionName Then
+ newApp.update = True
+ Log("New app true")
+ B4XPages.ShowPage("updateAvailable")
+ 'Se puede mandar tambien una notificacion avisando que hay actualizacion disponible
+' CreateNotification2("Nueva aplicación disponible","Haga clic para descargar.","ic_file_download_white_24dp",C_UpdateAvailable,True,True,nNewApp,nNewAppnID)
+ End If
+ Catch
+ Log("appUpdater(), Job Failed, error " & LastException.Message)
+ End Try
+ Else
+ Log("appUpdater(), Job Failed " & lnk)
+ End If
+ j.Release
+ StopService(Me)
End Sub
Sub download_Start (StartingIntent As Intent)
diff --git a/C_Bitacora.bas b/C_Bitacora.bas
new file mode 100644
index 0000000..c67c73f
--- /dev/null
+++ b/C_Bitacora.bas
@@ -0,0 +1,240 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Class
+Version=12.8
+@EndOfDesignText@
+Sub Class_Globals
+ Private Root As B4XView 'ignore
+ Private xui As XUI 'ignore
+ Dim db As SQL
+ Private Root2 As B4XView
+ Dim p_transparenteInicioFin2 As Panel
+ Dim b_Inicio_Fin_venta2 As Button
+ Dim contadorIniciarVenta, precision As Int
+ Dim IniVenNO, dentroDeGeocerca, enVenta As Boolean
+ Dim motivoNoVenta, motivoNoVisita As String
+ Dim banderaGeoCerca As String
+ Private reqManager As DBRequestManager
+End Sub
+
+'You can add more parameters here.
+Public Sub Initialize (vCallback As Object, vEventName As String, vRoot As B4XView, db1 As SQL, DBReq As DBRequestManager) As Object
+ db = db1
+ Root2 = vRoot
+ reqManager = DBReq
+ db.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, BAN_GEOB TEXT)")
+' agregaColumna("BITACORAGPS", "BAN_GEOB", "TEXT")
+ contadorIniciarVenta = 0
+ cargamosPanel
+ Return Me
+End Sub
+
+'This event will be called once, before the page becomes visible.
+Private Sub B4XPage_Created (Root1 As B4XView)
+ Root = Root1
+ 'load the layout to Root
+End Sub
+
+'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
+
+'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 mandaBitacora(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, precisionb As String, motivoNoVentab As String, motivoNoVisitab As String, BAN_GEOB As String)
+ Log(motivoNoVisitab)
+' Log("bitacora")
+ Private cmd As DBCommand
+ cmd.Initialize
+ cmd.Name = "mandaBitacora3_GUNA"
+' 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 = "Carga día suplencia" Then nombreCliente = traeRutasSup
+ If eventob <> "Termina Venta" And eventob <> "No Venta" Then
+ db.ExecNonQuery($"INSERT INTO BITACORAGPS (fechab, usuariob , almacenb , rutab , eventob , clienteb , iniciob , finb , latitudb, longitudb , precision , motivonoventa , motivonovisita, BAN_GEOB) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precisionb}' , '${motivoNoVentab}' , '${motivoNoVisitab}', '${BAN_GEOB}')"$)
+ Else
+ Private e As Cursor = db.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"$)
+ If e.RowCount > 0 Then
+ e.Position = 0
+ Log("ACTUALIZA BITACORA")
+ If eventob = "Termina Venta" Then
+ db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
+ cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
+ else if eventob = "No Venta" Then
+ db.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', motivonoventa = '${motivoNoVentab}', motivonovisita = '${motivoNoVisitab}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
+ cmd.Parameters = Array As Object(finb, motivoNoVentab, motivoNoVisitab, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
+ End If
+ End If
+ End If
+ If eventob <> "Inicia Venta" Then
+ Private c As Cursor = db.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
+ 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"), c.GetString("BAN_GEOB"))
+ 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_info2 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
+
+'Regresa la ruta actual de la base de datos.
+Sub traeRutasSup As String
+ Dim c As Cursor
+ Dim rutas As String
+ rutas = ""
+
+ c = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info2")
+
+ If c.RowCount > 0 Then
+ For i = 0 To c.RowCount - 1
+ c.Position = i
+ rutas = rutas & c.GetString("CAT_CL_RUTA") & ", "
+ Next
+ If rutas.Length > 0 Then rutas = rutas.SubString2(0, rutas.Length - 2)
+ End If
+
+ c.Close
+ Return rutas
+End Sub
+
+'Muestra u oculta el boton de inicio y fin de venta
+Sub inicioFin
+ LogColor($">>>>>>>>>>>> XX EN VENTA : ${enVenta} <<<<<<<<<<<<"$, Colors.Blue)
+ Log(b_Inicio_Fin_venta2.Text)
+ If enVenta = False Then
+ p_transparenteInicioFin2.BringToFront
+ p_transparenteInicioFin2.Visible = True
+' b_Inicio_Fin_venta2.Text = "INICIAR VENTA"
+' Log("Hacemos visible el boton de Inicio Venta")
+ Else
+ If b_Inicio_Fin_venta2.Text <> "TERMINAR VENTA" Then
+ p_transparenteInicioFin2.Visible = False
+' b_Inicio_Fin_venta2.Visible = False
+ End If
+ End If
+End Sub
+
+Private Sub b_Inicio_Fin_venta2_Click
+' b_Inicio_Fin_venta.Visible = False
+' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
+ contadorIniciarVenta = 0
+ IniVenNO = False
+ If dentroDeGeocerca Then precision = 1
+' LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red)
+ LogColor($">>>>>>>>>>>> EN VENTA : ${enVenta} <<<<<<<<<<<<"$, Colors.Blue)
+ motivoNoVenta = ""
+ motivoNoVisita = ""
+ p_transparenteInicioFin2.Visible = False
+ If b_Inicio_Fin_venta2.Text = "TERMINAR VENTA" Then
+ mandaBitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, motivoNoVisita, banderaGeoCerca)
+ enVenta = False
+ LogColor($">>>>>> EN VENTA: ${enVenta}"$, Colors.red)
+ iniciamosVenta
+ B4XPages.ShowPageAndRemovePreviousPages("Principal")
+' guardadoventa
+ Else if b_Inicio_Fin_venta2.Text = "INICIAR VENTA" Then
+ contadorIniciarVenta = 0
+ IniVenNO = False
+ contadorIniciarVenta = contadorIniciarVenta + 1
+ If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta <> "NO VENTA" Then
+ IniVenNO = True
+ mandaBitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "", banderaGeoCerca)
+ enVenta = True
+ LogColor($">>>>>> EN VENTA: ${enVenta}"$, Colors.red)
+' LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
+ Else If contadorIniciarVenta = 1 And IniVenNO = False And motivoNoVenta = "NO VENTA" Then
+ IniVenNO = True
+ mandaBitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRutaBitacora, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, motivoNoVenta, "", banderaGeoCerca)
+ enVenta = True
+ LogColor($">>>>>> EN VENTA: ${enVenta}"$, Colors.red)
+ Else If contadorIniciarVenta > 1 Then
+ p_transparenteInicioFin2.Visible = False
+ End If
+ End If
+ p_transparenteInicioFin2.Visible = False
+ LogColor($">>>>>>>>>>>> EN VENTA : ${enVenta} <<<<<<<<<<<<"$, Colors.Blue)
+End Sub
+
+'Cargamos el layout del panel.
+private Sub cargamosPanel
+ Log(p_transparenteInicioFin2.IsInitialized)
+' Log(p_transparenteInicioFin2.)
+ If Not(p_transparenteInicioFin2.IsInitialized) Then
+ LogColor(">>>>>>> CARGAMOS PANEL BITACORA", Colors.red)
+ Root2.LoadLayout("inicioFinVenta")
+ p_transparenteInicioFin2.Width = Root2.Width
+ p_transparenteInicioFin2.Height = Root2.Height
+ b_Inicio_Fin_venta2.top = 700
+ b_Inicio_Fin_venta2.Left = 5
+ b_Inicio_Fin_venta2.Width = Root2.Width - 20
+ b_Inicio_Fin_venta2.Text = "INICIAR VENTA"
+ p_transparenteInicioFin2.BringToFront
+ End If
+End Sub
+
+Sub p_transparenteInicioFin2_click
+
+End Sub
+
+' Ponemos el texto del boton en "INICIAR VENTA" y enVenta en Falso .
+Sub iniciamosVenta
+ enVenta = False
+ b_Inicio_Fin_venta2.Text = "INICIAR VENTA"
+End Sub
+
+Sub agregaColumna(tabla As String, columna As String, tipo As String) 'ignore
+ Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna en la tabla
+ Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery($"SELECT COUNT(*) AS fCol FROM pragma_table_info('${tabla}') WHERE name='${columna}'"$)
+ c.Position = 0
+ If c.GetString("fCol") = 0 Then 'Si no esta la columna la agregamos
+ B4XPages.MainPage.skmt.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
+ Log($"Columna "${columna} ${tipo}", agregada a "${tabla}"."$)
+ End If
+' Log(1)
+ Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch
+ Try
+ B4XPages.MainPage.skmt.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
+ Log($"Columna "${columna} ${tipo}", agregada a "${tabla}".."$)
+ Catch
+ Log(LastException)
+ End Try
+ Log(2)
+ End Try
+End Sub
+
+'Borra los datos de la tabla BITACORAGPS
+Sub borraDatosBitacora
+ db.ExecNonQuery("DELETE FROM BITACORAGPS")
+End Sub
+
+Sub JobDone(Job As HttpJob)
+ Log("JOBDONE BITACORA")
+ If Job.JobName = "DBRequest" Then
+ Dim RESULT As DBResult = reqManager.HandleJob(Job)
+ Log($"Tag: ${RESULT.tag}, success=${Job.Success}"$)
+ End If
+ 'Log(Job.Tag)
+ If Job.Success = False Then
+' Log("JOBDONE ERROR")
+ LogColor("Error: " & Job.ErrorMessage, Colors.red)
+ Else 'If Job Success then ...
+' Log("JOBDONE SUCCESS")
+ End If
+End Sub