diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas
index b891b90..94cc872 100644
--- a/B4A/C_Cliente.bas
+++ b/B4A/C_Cliente.bas
@@ -402,6 +402,12 @@ Sub Class_Globals
Private l_titEncuesta As Label
Private ImageView11 As ImageView
Dim distance As Long
+ Private p_pideGeoPass As Panel
+ Private b_geopass As Button
+ Private et_geopass As EditText
+ Private l_geopass As Label
+ Dim reqManager As DBRequestManager
+
End Sub
'You can add more parameters here.
@@ -451,6 +457,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
SV_ENCUESTA.Width = Root.Height
p_pregunta1.Height = Root.Height
p_pregunta1.Width = Root.Height
+ Tels.Visible = False
+ gest.Visible = False
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -476,7 +484,7 @@ Sub B4XPage_Appear
StartActivity(Starter.gps.LocationSettingsIntent)
End If
skmt.Initialize(ruta,"kmt.db", True)
-
+ reqManager.Initialize(Me, Starter.server)
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
s=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
@@ -507,7 +515,7 @@ Sub B4XPage_Appear
If c.GetString("CAT_CL_NUM_SERIEFISICO") = "0" Then
L_QR.TEXT = "SIN CODIGO"
L_QR.TextColor = Colors.Red
- If ALMACEN <> "32" And ALMACEN <> "33" Then gest.VISIBLE = True And Tels.Visible = True
+ If ALMACEN <> "32" And ALMACEN <> "33" And ALMACEN <> 6 Then gest.VISIBLE = True And Tels.Visible = True
BT_QR.Visible = True
Else
L_QR.TEXT = c.GetString("CAT_CL_NUM_SERIEFISICO")
@@ -576,6 +584,37 @@ Sub B4XPage_Appear
Tels.Visible = True
gest.Visible = True
End If
+
+ c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
+ If c.RowCount > 0 Then
+ Tels.Visible = True
+ gest.Visible = True
+
+ Else If c.RowCount = 0 Then
+ Tels.Visible = False
+ gest.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
+ Else If c.RowCount = 0 Then
+ Tels.Visible = False
+ gest.Visible = False
+ LA_GEO.TextColor = Colors.Red
+ If ALMACEN = "1" Then
+ Tels.Visible = False
+ gest.Visible = True
+ End If
+ End If
+
+
+ LA_GEO.TextColor = Colors.Red
+ If ALMACEN = "1" Then
+ Tels.Visible = False
+ gest.Visible = True
+ End If
+
+ End If
CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
If Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
@@ -641,45 +680,18 @@ Sub B4XPage_Appear
B_IMP.Visible = False
End If
' Log(distance)
- If (ALMACEN = "32" Or ALMACEN = "33") And distance > 100 Then
+ If (ALMACEN = "32" Or ALMACEN = "33" Or ALMACEN = "6") And distance > 100 Then
gest.Visible = False
+ Tels.Visible = False
' ToastMessageShow("aaa", False)
End If
- c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
- If c.RowCount > 0 Then
- Tels.Visible = True
- gest.Visible = True
-
- Else If c.RowCount = 0 Then
- Tels.Visible = False
- gest.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
- Else If c.RowCount = 0 Then
- Tels.Visible = False
- gest.Visible = False
- LA_GEO.TextColor = Colors.Red
- If ALMACEN = "1" Then
- Tels.Visible = False
- gest.Visible = True
- End If
- End If
-
-
- LA_GEO.TextColor = Colors.Red
- If ALMACEN = "1" Then
- Tels.Visible = False
- gest.Visible = True
- End If
-
- End If
+
End Sub
Sub GPS_LocationChanged (Location1 As Location)
+
LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
@@ -706,9 +718,18 @@ Sub GPS_LocationChanged (Location1 As Location)
Dim habi = c.GetString("HABILITADO")
End If
c.Close
- If ALMACEN <> "32" And ALMACEN <> "33" Then gest.Visible = True
- If ALMACEN <> "32" And ALMACEN <> "33" Then Tels.Visible = True
- If ALMACEN = "32" Or ALMACEN = "33" Then
+ If gest.IsInitialized And Tels.IsInitialized Then
+
+ If ALMACEN <> "32" And ALMACEN <> "33" And ALMACEN <> 6 Then
+ gest.Visible = True
+ Tels.Visible = True
+ Else If ALMACEN = "32" And ALMACEN = "33" And ALMACEN = 6 Then
+ gest.Visible = False
+ Tels.Visible = False
+ End If
+ End If
+
+ If ALMACEN = "32" Or ALMACEN = "33" Or ALMACEN = "6" Then
If distance < 100 Then
LA_GEO.TextColor = Colors.Blue
Tels.Visible = True
@@ -721,7 +742,7 @@ Sub GPS_LocationChanged (Location1 As Location)
c.Position = 0
Dim al_latitud As String = c.GetString("CAT_VA_VALOR")
End If
- c.Close
+ c.Close
c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD"))
If c.RowCount > 0 Then
@@ -830,7 +851,76 @@ Sub GPS_LocationChanged (Location1 As Location)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
CallSubDelayed(Tracker, "CreateLocationRequest")
-
+End Sub
+
+Private Sub p_pideGeoPass_Click
+End Sub
+
+Private Sub b_geopass_Click
+ If et_geopass.Text.trim = "KMTS1" Then
+ m_lat = B4XPages.MainPage.lat_gps
+ m_lon = B4XPages.MainPage.lon_gps
+ GPS_LocationChanged(Starter.ubicacionActual)
+ skmt.ExecNonQuery($"update kmt_info set CAT_CL_LAT = '${B4XPages.MainPage.lat_gps}', CAT_CL_LONG = '${B4XPages.MainPage.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$)
+ et_geopass.Text = ""
+ Else
+ Dim cmd As DBCommand
+ cmd.Initialize
+ cmd.Name = "select_geoPass_GUNA"
+ cmd.Parameters = Array As Object(et_geopass.Text.Trim, Subs.traeAlmacen, Subs.traeRuta)
+ reqManager.ExecuteQuery(cmd , 0, "traeGeoPass")
+ Log($"${Starter.server}, ${et_geopass.Text}, ${Subs.traeAlmacen}, ${Subs.traeRuta}"$)
+ et_geopass.Text = ""
+ End If
+ p_pideGeoPass.Visible = False
+' ime.HideKeyboard
+' Log("Guardamos coords")
+' LATITUD = Starter.lat_gps
+' LONGITUD = Starter.lon_gps
+' GPS_LocationChanged(Starter.ubicacionActual)
+' Starter.skmt.ExecNonQuery($b_geopass"update kmt_info set CAT_CL_LAT = '${Starter.lat_gps}', CAT_CL_LONG = '${Starter.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$)
+End Sub
+
+Private Sub LA_GEO_LongClick
+ If distance > 99 Then
+ p_pideGeoPass.BringToFront
+ p_pideGeoPass.Visible = True
+ End If
+End Sub
+
+Sub JobDone(Job As HttpJob)
+ If Job.Success = False Then
+' ToastMessageShow("Error: " & Job.ErrorMessage, True)
+ LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red)
+' LogColor("Error: " & Job.ErrorMessage, Colors.red)
+ Else
+ LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110
+ If Job.JobName = "DBRequest" Then
+ Dim result1 As DBResult = reqManager.HandleJob(Job)
+ If result1.Tag = "traeGeoPass" Then 'query tag
+ Log("SIN REGISTROS " & result1.Rows.Size)
+ If result1.Rows.Size = 0 Then MsgboxAsync("Contraseña equivocada, por favor intente de nuevo.", "ATENCION")
+ For Each records() As Object In result1.Rows
+' For Each k As String In result.Columns.Keys
+' Log(k & ": " & records(result.Columns.Get(k)))
+' Next
+ Private permiso_geoPass As String = records(result1.Columns.Get("'OK'"))
+ If permiso_geoPass = "OK" Then
+ m_lat = B4XPages.MainPage.lat_gps
+ m_lon = B4XPages.MainPage.lon_gps
+ GPS_LocationChanged(Starter.ubicacionActual)
+ skmt.ExecNonQuery($"update kmt_info set CAT_CL_LAT = '${B4XPages.MainPage.lat_gps}', CAT_CL_LONG = '${B4XPages.MainPage.lon_gps}' where CAT_CL_CODIGO = '${Subs.traeCliente}'"$)
+ Dim cmd As DBCommand
+ cmd.Initialize
+ cmd.Name = "delete_geoPass_GUNA"
+ cmd.Parameters = Array As Object( Subs.traeAlmacen, Subs.traeRuta)
+ reqManager.ExecuteQuery(cmd , 0, "traeGeoPass")
+ End If
+ Next
+ End If
+ End If
+ End If
+ Job.Release
End Sub
Sub ListView1_ItemLongClick (Position As Int, Value As Object)
@@ -910,7 +1000,7 @@ Sub gest_Click
' Panel5.Width = Root.Width * 0.94
' SV_ENCUESTA.Panel.Height = Panel5.Height + 60
' Panel7.Visible = False
-'
+ '
' ' para la m2
' p_cliente.Visible = False
' SV_ENCUESTA.Visible = True
@@ -955,7 +1045,7 @@ Sub gest_Click
' Loop
' result = Msgbox2("Entiendo, acepto y consciento que GUNA usará mis datos Personales y serán tratados acorde con lo establecido en la Ley Federal de Protección de Datos Personales en Posesión de los Particulares (en lo sucesivo la “Ley”), y su respectivo Reglamento; bajo lo manifestado en el Aviso de Privacidad – Texto Completo – que se encuentra en la página www.guna.com.mx", "AVISO DE PRIVACIDAD","ACEPTO","", "NO ACEPTO",LoadBitmap(File.DirAssets,"alert2.png"))
' If result = DialogResponse.Positive Then
-'
+ '
' p_pregunta1.Visible = True
'
' Else
@@ -3626,18 +3716,16 @@ End Sub
'Esta subrutina muestra las encuestas.
Sub Cuestionario
Log("Entramos a Cuestionario")
+ Private logger As Boolean = True
b_encuesta_continuar.Visible = False
et_encuesta.Visible = False
-
-
- Private logger As Boolean = True
DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
Private fecha As String = $"${DateTime.Date(DateTime.Now)} ${DateTime.Time(DateTime.Now)}"$
CUANTOS = 0
' indicePregunta = 0
- Log($"Tomar_Foto = ${TOMAR_FOTO}"$)
+ If logger Then Log($"Tomar_Foto = ${TOMAR_FOTO}"$)
If TOMAR_FOTO = 0 Then
s = B4XPages.MainPage.skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_ENCUESTA where HE_CLIE In (Select cuenta from cuentaa)")
s.Position= 0
@@ -3648,32 +3736,33 @@ Sub Cuestionario
CUANTOS2 = s.GetString("CUANTOS2")
If logger Then LogColor($"Hist:encuesta=${CUANTOS}, hist_encuesta2 = ${CUANTOS2}"$, Colors.Magenta)
End If
- Log(CUANTOS & "|" & CUANTOS2)
+ If logger Then Log(CUANTOS & "|" & CUANTOS2)
If CUANTOS = 0 And CUANTOS2 = 0 Then
Private enc As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_EP_ID, CAT_EP_IDTIPOPREGUNTA, CAT_CE_DESCRIPCION, CAT_EP_PREGUNTA, CAT_EP_RES1_PRED, CAT_EP_RES2_PRED, CAT_EP_RES3_PRED, CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)")
If enc.RowCount > 0 Then
enc.position = 0
- Log($"CAT_EP_ID=${enc.GetString("CAT_EP_ID")}"$)
+ If logger Then Log($"CAT_EP_ID=${enc.GetString("CAT_EP_ID")}"$)
Private listaPreguntas As List
listaPreguntas.Initialize
For j = 0 To enc.RowCount - 1 'Ponemos en una lista los ID de las preguntas.
enc.Position = j
listaPreguntas.Add(enc.GetString("CAT_EP_ID"))
Next
- Log(listaPreguntas)
+ If logger Then Log(listaPreguntas)
enc.position = 0
For i = 0 To enc.RowCount - 1
-' Log($"ROWCOUNT: ${enc.RowCount}"$)
-' Log($"tipo: ${enc.GetString("CAT_EP_IDTIPOPREGUNTA")}"$)
-' Log($"CAT_EP_ID=${enc.GetString("CAT_EP_ID")}, CAT_EP_PREGUNTA=${enc.GetString("CAT_EP_PREGUNTA")}"$)
+' If logger Then Log($"ROWCOUNT: ${enc.RowCount}"$)
+' If logger Then Log($"tipo: ${enc.GetString("CAT_EP_IDTIPOPREGUNTA")}"$)
+ If logger Then Log($"CAT_EP_ID=${enc.GetString("CAT_EP_ID")}, CAT_EP_PREGUNTA=${enc.GetString("CAT_EP_PREGUNTA")}"$)
If indicePregunta <> 0 Then
+ indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_ID")) + 1 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
i = indicePregunta
-' Log($"i = ${i}"$)
+ Log($"i = ${i}"$)
End If
-' Log("indicePregunta: " & indicePregunta)
+ If logger Then Log("indicePregunta: " & indicePregunta & ", TIPO: " & enc.GetString("CAT_EP_IDTIPOPREGUNTA"))
' Log($"Tomar_Foto = ${TOMAR_FOTO}"$)
-' Log($"EncuestaRes = ${encuestaRes}"$)
- Log(listaPreguntas)
+ If logger Then Log($"EncuestaRes = ${encuestaRes}"$)
+ If logger Then Log(listaPreguntas)
If TOMAR_FOTO = 1 Then
If CURSOR_FOTO + 1 > enc.RowCount -1 Then
TOMAR_FOTO = 0
@@ -3681,20 +3770,24 @@ Sub Cuestionario
Else
i = CURSOR_FOTO + 1
End If
-' Log(i)
+ If logger Then Log($"i = ${i}"$)
TOMAR_FOTO = 0
End If
If i > (enc.RowCount - 1) Then Exit ' Si se contestó la ultima pregunta, entonces salimos.
+
+' indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_ID")) 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
+ i = indicePregunta
+
enc.Position = i
' Log($"POSICION = ${enc.Position}"$)
If enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 5 Then
- Log("Pregunta tipo 5")
+ If logger Then Log("Pregunta tipo 5")
id_encuesta = enc.GetString("CAT_EP_ID")
TOMAR_FOTO = 1
CURSOR_FOTO = i
Exit
ELSE IF enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 3 Then ' Tipo SI/NO
- Log("Pregunta tipo 3")
+ If logger Then Log("Pregunta tipo 3")
botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta
l_titEncuesta.Text = enc.GetString("CAT_CE_DESCRIPCION")
l_txtEncuesta.Text = enc.GetString("CAT_EP_PREGUNTA")
@@ -3706,15 +3799,16 @@ Sub Cuestionario
Do Until botonPresionado = 1 'Esperamos que respondan la pregunta
Sleep(0)
Loop
- Log("encuestaRes: " & encuestaRes)
+ If logger Then Log("encuestaRes: " & encuestaRes)
+ If logger Then LogColor($"Guardamos tipo 3 : ${encuestaRes}"$, Colors.Green)
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
ocultaPanelEncuesta
ELSE IF enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 4 Then
- Log("Pregunta tipo 4")
+ If logger Then Log("Pregunta tipo 4")
botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta
l_titEncuesta.Text = enc.GetString("CAT_CE_DESCRIPCION")
l_txtEncuesta.Text = enc.GetString("CAT_EP_PREGUNTA")
- Log(enc.GetString("CAT_EP_PREGUNTA"))
+ If logger Then Log(enc.GetString("CAT_EP_PREGUNTA"))
Subs.centraEtiqueta(l_txtEncuesta, Root.Width)
muestraBoton(b_encuesta_1,"SI", enc.GetString("CAT_EP_ID"), centroPantalla-350, 580, 300, 160)
muestraBoton(b_encuesta_2, "NO", enc.GetString("CAT_EP_ID"), centroPantalla+50, 580, 300, 160)
@@ -3723,7 +3817,8 @@ Sub Cuestionario
Do Until botonPresionado = 1 'Esperamos que respondan la pregunta
Sleep(0)
Loop
- Log("encuestaRes: " & encuestaRes)
+ If logger Then Log("encuestaRes: " & encuestaRes)
+ If logger Then LogColor($"Guardamos tipo 4 : ${encuestaRes}"$, Colors.Green)
If encuestaRes = "SI" Then
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, "SI", fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_RES1_PRED")) 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
@@ -3744,7 +3839,7 @@ Sub Cuestionario
botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta.
l_titEncuesta.Text = enc.GetString("CAT_CE_DESCRIPCION")
l_txtEncuesta.Text = enc.GetString("CAT_EP_PREGUNTA")
- Log(enc.GetString("CAT_EP_PREGUNTA"))
+ If logger Then Log(enc.GetString("CAT_EP_PREGUNTA"))
muestraBoton(b_encuesta_1, enc.GetString("CAT_EP_RES1_PRED"), enc.GetString("CAT_EP_ID"), centroPantalla-250, 580, 500, 160)
muestraBoton(b_encuesta_2, enc.GetString("CAT_EP_RES2_PRED"), enc.GetString("CAT_EP_ID"), centroPantalla-250, 740, 500, 160)
muestraBoton(b_encuesta_3, enc.GetString("CAT_EP_RES3_PRED"), enc.GetString("CAT_EP_ID"), centroPantalla-250, 900, 500, 160)
@@ -3754,11 +3849,15 @@ Sub Cuestionario
Sleep(0)
Loop
Log("encuestaRes: " & encuestaRes)
- Log($"Guardamos tipo 2 : ${encuestaRes}"$)
+ If logger Then LogColor($"Guardamos tipo 2 : ${encuestaRes}"$, Colors.Green)
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
+
+ indicePregunta = listaPreguntas.IndexOf(enc.GetString("CAT_EP_ID")) 'Nos movemos a la posicion especificada por la respuesta, en las preguntas de tipo desicion, la respuesta nos indica a que pregunta movernos.
+ i = indicePregunta + 1
+ Log($"i = ${i}"$)
ocultaPanelEncuesta
ELSE If enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 6 Then
- Log("Pregunta tipo 6")
+ If logger Then Log("Pregunta tipo 6")
Panel10.Visible = True
l_chk_e.Text = enc.GetString("CAT_EP_PREGUNTA")
Chk_1.Checked = False
@@ -3781,7 +3880,7 @@ Sub Cuestionario
botonPresionado = 0 ' Bandera para que espere a que se conteste la pregunta
l_titEncuesta.Text = enc.GetString("CAT_CE_DESCRIPCION")
l_txtEncuesta.Text = enc.GetString("CAT_EP_PREGUNTA")
- Log(enc.GetString("CAT_EP_PREGUNTA") &"|"&enc.GetString("CAT_EP_ORDEN_PREGUNTA"))
+ If logger Then Log(enc.GetString("CAT_EP_PREGUNTA") &"|"&enc.GetString("CAT_EP_ORDEN_PREGUNTA"))
Subs.centraEditText(et_encuesta, Root.Width)
et_encuesta.Visible = True
b_encuesta_continuar.Enabled = False
@@ -3793,6 +3892,7 @@ Sub Cuestionario
Sleep(0)
Loop
Log($"Respuesta: ${encuestaRes}"$)
+ If logger Then LogColor($"Guardamos tipo 1 : ${encuestaRes}"$, Colors.Green)
B4XPages.MainPage.skmt.ExecNonQuery2("insert into HIST_ENCUESTA(HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON) VALUES (?,?,?,?,?,?)", Array As Object(la_cuenta.Text, encuestaRes, fecha, enc.GetString("CAT_EP_ID"), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
ocultaPanelEncuesta
Else
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index e88fe14..ae016da 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -996,7 +996,7 @@ Sub JobDone(Job As HttpJob)
If n = "OKActivo" Then
Dim cmd As DBCommand
cmd.Initialize
- cmd.Name = "select_ruta_GV2_70_3"
+ cmd.Name = "select_ruta_GV2_70_2"
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text)
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta")
'Log("Usuario guardado en BD es 'Valido'")
diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal
index 7f04d73..ba5738e 100644
Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ
diff --git a/B4A/Guna Vistas V3.1.b4a b/B4A/Guna Vistas V3.1.b4a
index 31d51cc..b57f839 100644
--- a/B4A/Guna Vistas V3.1.b4a
+++ b/B4A/Guna Vistas V3.1.b4a
@@ -6,57 +6,58 @@ File12=ENCUESTA_PED.bal
File13=engrane.jpg
File14=engrane.png
File15=engrane18.png
-File16=ESNCUESTA_M2.bal
-File17=fondo_kmt.jpg
-File18=gps20.png
-File19=guna.png
+File16=engraneactual.png
+File17=ESNCUESTA_M2.bal
+File18=fondo_kmt.jpg
+File19=gps20.png
File2=bus-ar.png
-File20=guna18.png
-File21=guna-fondo.png
-File22=Hacer pedido.jpg
-File23=hacerpedido30.png
-File24=ic_cloud_download_white_24dp.png
-File25=itembuttonblue.png
-File26=login.bal
-File27=Logo Guna_192x192.png
-File28=logo-guna-18.png
-File29=MainPage.bal
+File20=guna.png
+File21=guna18.png
+File22=guna-fondo.png
+File23=Hacer pedido.jpg
+File24=hacerpedido30.png
+File25=ic_cloud_download_white_24dp.png
+File26=itembuttonblue.png
+File27=login.bal
+File28=Logo Guna_192x192.png
+File29=logo-guna-18.png
File3=carrito.png
-File30=Malo.jpg
-File31=mapa_rutas.bal
-File32=mas-azul.png
-File33=mas-azul-red.png
-File34=mas-azul-red1.png
-File35=menos.png
-File36=menosred.png
-File37=menos-red.png
-File38=nota.bal
-File39=noventa.bal
+File30=MainPage.bal
+File31=Malo.jpg
+File32=mapa_rutas.bal
+File33=mas-azul.png
+File34=mas-azul-red.png
+File35=mas-azul-red1.png
+File36=menos.png
+File37=menosred.png
+File38=menos-red.png
+File39=nota.bal
File4=celltitle.bal
-File40=nuevocliente.bal
-File41=nuevo-cliente20.png
-File42=Nvo Cliente.jpg
-File43=palomita_verde.png
-File44=pedido.bal
-File45=planfia_logo.png
-File46=principal.bal
-File47=proditem.bal
-File48=productos.bal
-File49=promociones.bal
+File40=noventa.bal
+File41=nuevocliente.bal
+File42=nuevo-cliente20.png
+File43=Nvo Cliente.jpg
+File44=palomita_verde.png
+File45=pedido.bal
+File46=planfia_logo.png
+File47=principal.bal
+File48=proditem.bal
+File49=productos.bal
File5=cliente.bal
-File50=qr_gallina.jpg
-File51=resdia.bal
-File52=ResDia.jpg
-File53=resdia20.png
-File54=salma.jpg
-File55=salma.png
-File56=senial.jpg
-File57=sync.png
-File58=Ticket dia.jpg
-File59=ticketdia20.png
+File50=promociones.bal
+File51=qr_gallina.jpg
+File52=resdia.bal
+File53=ResDia.jpg
+File54=resdia20.png
+File55=salma.jpg
+File56=salma.png
+File57=senial.jpg
+File58=sync.png
+File59=Ticket dia.jpg
File6=clientes.bal
-File60=ticketsdia.bal
-File61=Tiendita.jpg
+File60=ticketdia20.png
+File61=ticketsdia.bal
+File62=Tiendita.jpg
File7=durakelo.png
File8=ENCUESSTA_M3.bal
File9=ENCUESTA.bal
@@ -118,6 +119,7 @@ FileGroup59=Default Group
FileGroup6=Default Group
FileGroup60=Default Group
FileGroup61=Default Group
+FileGroup62=Default Group
FileGroup7=Default Group
FileGroup8=Default Group
FileGroup9=Default Group
@@ -155,7 +157,7 @@ Library6=byteconverter
Library7=camera
Library8=compressstrings
Library9=core
-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()
+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()
Module1=appUpdater
Module10=C_NuevoCliente
Module11=C_Pedidos
@@ -179,15 +181,15 @@ Module6=C_Historico
Module7=C_Mapas
Module8=C_Nota
Module9=C_NoVenta
-NumberOfFiles=61
+NumberOfFiles=62
NumberOfLibraries=33
NumberOfModules=23
-Version=12.8
+Version=12.5
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: Guna V3.1
#VersionCode: 1
- #VersionName: 4.04.24.ENC.Geo
+ #VersionName: 4.04.22 ENC Geo
'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 d9f3d7e..cd091c8 100644
--- a/B4A/Guna Vistas V3.1.b4a.meta
+++ b/B4A/Guna Vistas V3.1.b4a.meta
@@ -50,7 +50,7 @@ ModuleClosedNodes0=
ModuleClosedNodes1=5,7,8,9,10,11,12,13,14
ModuleClosedNodes10=
ModuleClosedNodes11=6
-ModuleClosedNodes12=
+ModuleClosedNodes12=2,3,8,10,14
ModuleClosedNodes13=6,10,11,13,14,16,17,20,21,22,23
ModuleClosedNodes14=
ModuleClosedNodes15=
@@ -70,6 +70,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
-NavigationStack=C_Cliente,CB4_P8_M3_CheckedChange,3805,0,C_Cliente,Cuestionario,3805,6,C_Cliente,centroPantalla,3838,0,C_Cliente,b_encuesta_1_Click,3839,0,C_Cliente,b_encuesta_continuar_Click,3879,0,C_Cliente,B4XPage_Appear,637,0,C_Cliente,GPS_LocationChanged,701,0,Tracker,CreateLocationRequestSmallD,128,0,Tracker,StartFLPSmall,109,0,Tracker,CreateLocationRequest,115,0,Main,Globals,22,0
+NavigationStack=Main,Activity_Pause,51,0,Main,Activity_KeyPress,40,0,C_Cliente,b_encuesta_1_Click,3929,0,C_Cliente,b_encuesta_continuar_Click,3969,0,C_Principal,JobDone,960,0,C_Cliente,Class_Globals,0,0,C_Cliente,CB2_P8_M3_CheckedChange,3681,0,C_Cliente,CB3_P8_M3_CheckedChange,3693,0,C_Cliente,CB4_P8_M3_CheckedChange,3709,0,C_Cliente,Cuestionario,3905,0
SelectedBuild=0
-VisibleModules=21,2,22,12,13,4,8,11,5,10,23
+VisibleModules=21,2,22,12,13,4,8,11,5,10
diff --git a/B4A/Starter.bas b/B4A/Starter.bas
index e0ed5f9..0bc2d98 100644
--- a/B4A/Starter.bas
+++ b/B4A/Starter.bas
@@ -32,6 +32,7 @@ Sub Process_Globals
Private BTAdmin As BluetoothAdmin
Dim MAC_IMPRESORA As String
Public BluetoothState As Boolean
+ Dim ubicacionActual As Location
End Sub
Sub Service_Create
@@ -48,6 +49,7 @@ Sub Service_Create
#end if
logs.Initialize
CallSubDelayed(FirebaseMessaging, "SubscribeToTopics") 'Para Push FirebaseMessaging
+ ubicacionActual.Initialize
End Sub
Private Sub BTAdmin_StateChanged (NewState As Int, OldState As Int)
diff --git a/B4A/Subs.bas b/B4A/Subs.bas
index 74c023a..b1cb94e 100644
--- a/B4A/Subs.bas
+++ b/B4A/Subs.bas
@@ -43,6 +43,8 @@ Sub getPhnId As String 'ignore
Return devModel
End Sub
+
+
'Comprime y regresa un texto (str) en base64
Sub compress(str As String) As String 'ignore
'Requiere la libreria "CompressStrings"
diff --git a/B4A/Tracker.bas b/B4A/Tracker.bas
index 46849a2..51aa993 100644
--- a/B4A/Tracker.bas
+++ b/B4A/Tracker.bas
@@ -130,10 +130,10 @@ Private Sub CreateLocationRequestSmallD As LocationRequest
' Log("Iniciamos CreateLocationRequestSmallD")
Dim lr As LocationRequest
lr.Initialize
- lr.SetInterval(1000) 'Intervalo deseado para actualizaciones de ubicacion
+ lr.SetInterval(2000) 'Intervalo deseado para actualizaciones de ubicacion
lr.SetFastestInterval(lr.GetInterval / 2) 'Intervalo minimo para actualizaciones de ubicacion
- lr.setNumUpdates(3) 'Solicitamos solo 2 actualizaciones con estos parametros
- lr.SetSmallestDisplacement(0) 'Solo registra cambio de ubicacion si es mayor a XX mts
+ lr.setNumUpdates(2) 'Solicitamos solo 2 actualizaciones con estos parametros
+ lr.SetSmallestDisplacement(1) 'Solo registra cambio de ubicacion si es mayor a XX mts
lr.SetPriority(lr.Priority.PRIORITY_HIGH_ACCURACY)
actualLR=lr
Return lr
@@ -163,12 +163,19 @@ Sub flp_LocationChanged (Location1 As Location)
B4XPages.MainPage.lat_gps = Location1.Latitude
B4XPages.MainPage.lon_gps = Location1.Longitude
UUGCoords = Location1
+' Starter.ubicacionActual = Location1
' Log("SmallestDisplacement="&actualLR.GetSmallestDisplacement)
' If DateTime.Now > LastUpdateTime + 10 * DateTime.TicksPerSecond Then
' Dim n As Notification = CreateNotification($"$2.5{Location1.Latitude} / $2.5{Location1.Longitude}"$)
' n.Notify(nid)
' LastUpdateTime = DateTime.Now
' End If
+ If B4XPages.MainPage.lat_gps = 0 Or B4XPages.MainPage.lat_gps = Null And FLP.GetLastKnownLocation.IsInitialized Then
+ B4XPages.MainPage.lat_gps = FLP.GetLastKnownLocation.Latitude
+ B4XPages.MainPage.lon_gps = FLP.GetLastKnownLocation.Longitude
+ Starter.ubicacionActual = FLP.GetLastKnownLocation
+ LogColor("Coords en CERO - Guardamos ultima ubicacion conocida", Colors.red)
+ End If
'/////// para la ultima localización FL
Dim sDate,sTime As String
DateTime.DateFormat = "MM/dd/yyyy"