diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas
index 7533ac2..e64d076 100644
--- a/B4A/B4XMainPage.bas
+++ b/B4A/B4XMainPage.bas
@@ -25,12 +25,12 @@ Sub Class_Globals
Public login As B4XMainPage
Dim rp As RuntimePermissions
Public Provider As FileProvider
-
+ Dim batt As Int
Public principal As C_Principal 'Antes seleccion
Public clientes As C_Clientes 'Antes Colonia
Public cliente As C_Cliente 'Antes fila
Public productos As C_Productos 'Antes colonia2
- Public updateAvailable As C_updateAvailable
+ Public updateAvailable As C_UpdateAvailable
'' Public mapas As C_Mapas
'' Public nuevoCliente As C_NuevoCliente
Public ticketsDia As C_TicketsDia 'Antes buscar
@@ -38,7 +38,7 @@ Sub Class_Globals
Public nota As C_Nota 'Antes tarjeta
Public promos As C_Promos
Public historico As C_Historico 'Antes historico
-
+ Dim montoActual, clientesTotal, clientesVenta, clientesVisitados,almacen, rutaPreventa As String
Dim reqManager As DBRequestManager
Dim ultimaActualizacionGPS As String = 235959
Dim almacen, ruta As String
@@ -53,7 +53,9 @@ Sub Class_Globals
Private b_menu As Button
' Dim PopupMenu As RSPopupMenu
Dim cmd As DBCommand
-
+ Private bpv1 As BatteryProgressView
+ Dim batterystatus(11) As Int
+ Private bu As BatteryUtilities
Private IMEN As EditText
Private Entrar As Button
Private Panel1 As Panel
@@ -194,6 +196,8 @@ Sub B4XPage_Appear
End If
l_version.Text = Application.VersionName
' server = "http://10.0.0.205:1782"
+ bu.Initialize
+ batterystatus = bu.BatteryInformation
reqManager.Initialize(Me, Starter.DBReqServer)
Log(Starter.DBReqServer)
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index 7453ef8..1c09876 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -129,7 +129,9 @@ Sub Class_Globals
Dim cuantos_ped As String
Dim conteo As String
Private PASO_info As String
-
+ Private bpv1 As BatteryProgressView
+ Dim batterystatus(11) As Int
+ Private bu As BatteryUtilities
Private bpv1 As BatteryProgressView
Dim batterystatus(11) As Int
Private bu As BatteryUtilities
@@ -263,6 +265,7 @@ Sub IsConnectedToInternet As Boolean
End Sub
Sub B4XPage_Appear
+ Log(Starter.lat_gps& " "& Starter.lon_gps)
SERVER = Starter.DBReqServer
HORAINGRESO ="000000"
NUEVO.Visible = True
@@ -276,6 +279,9 @@ Sub B4XPage_Appear
SERVER = c.GetString("CAT_VA_VALOR")
End If
+ bu.Initialize
+ batterystatus = bu.BatteryInformation
+
reqManager.Initialize(Me, SERVER)
Log(SERVER)
@@ -386,12 +392,17 @@ Sub B4XPage_Appear
End If
-' Main.montoActual = L_MONTOD.Text
-' Main.clientestotal = L_CUANTOST.Text
-' Main.clientesventa = l_cuantosc.Text
-' Main.clientesvisitados = l_porvisitar.TEXT
-' Main.ALMACEN = ALMACEN
-' Main.rutapreventa = l_ruta.text
+ c=Starter.skmt.ExecQuery("select usuario from usuarioa")
+ c.Position = 0
+ usuario = c.GetString("USUARIO")
+ c.Close
+ B4XPages.MainPage.batt = batterystatus(0)
+ B4XPages.MainPage.montoActual = L_MONTOD.Text
+ B4XPages.MainPage.clientestotal = L_CUANTOST.Text
+ B4XPages.MainPage.clientesventa = l_cuantosc.Text
+ B4XPages.MainPage.clientesvisitados = l_porvisitar.TEXT
+ B4XPages.MainPage.ALMACEN = ALMACEN
+ B4XPages.MainPage.rutapreventa = l_ruta.text
DateTime.TimeFormat = "HH:mm:ss"
diff --git a/B4A/Durakelo.b4a b/B4A/Durakelo.b4a
index 3764ee7..4f4922e 100644
--- a/B4A/Durakelo.b4a
+++ b/B4A/Durakelo.b4a
@@ -1,370 +1,371 @@
Build1=Default,durakelo.keymon.com.mx,HU2_PUBLIC
File1=alcancia.png
File10=Clientes.bal
-File100=marker-azul-65.png
-File101=marker-azul-66.png
-File102=marker-azul-67.png
-File103=marker-azul-68.png
-File104=marker-azul-69.png
-File105=marker-azul-7.png
-File106=marker-azul-70.png
-File107=marker-azul-71.png
-File108=marker-azul-72.png
-File109=marker-azul-73.png
+File100=marker-azul-64.png
+File101=marker-azul-65.png
+File102=marker-azul-66.png
+File103=marker-azul-67.png
+File104=marker-azul-68.png
+File105=marker-azul-69.png
+File106=marker-azul-7.png
+File107=marker-azul-70.png
+File108=marker-azul-71.png
+File109=marker-azul-72.png
File11=detalle_promo.bal
-File110=marker-azul-74.png
-File111=marker-azul-75.png
-File112=marker-azul-76.png
-File113=marker-azul-77.png
-File114=marker-azul-78.png
-File115=marker-azul-79.png
-File116=marker-azul-8.png
-File117=marker-azul-80.png
-File118=marker-azul-81.png
-File119=marker-azul-82.png
+File110=marker-azul-73.png
+File111=marker-azul-74.png
+File112=marker-azul-75.png
+File113=marker-azul-76.png
+File114=marker-azul-77.png
+File115=marker-azul-78.png
+File116=marker-azul-79.png
+File117=marker-azul-8.png
+File118=marker-azul-80.png
+File119=marker-azul-81.png
File12=durakelo.png
-File120=marker-azul-83.png
-File121=marker-azul-84.png
-File122=marker-azul-85.png
-File123=marker-azul-86.png
-File124=marker-azul-87.png
-File125=marker-azul-88.png
-File126=marker-azul-89.png
-File127=marker-azul-9.png
-File128=marker-azul-90.png
-File129=marker-azul-91.png
+File120=marker-azul-82.png
+File121=marker-azul-83.png
+File122=marker-azul-84.png
+File123=marker-azul-85.png
+File124=marker-azul-86.png
+File125=marker-azul-87.png
+File126=marker-azul-88.png
+File127=marker-azul-89.png
+File128=marker-azul-9.png
+File129=marker-azul-90.png
File13=durakelo_192x192.png
-File130=marker-azul-92.png
-File131=marker-azul-93.png
-File132=marker-azul-94.png
-File133=marker-azul-95.png
-File134=marker-azul-96.png
-File135=marker-azul-97.png
-File136=marker-azul-98.png
-File137=marker-azul-99.png
-File138=marker-rojo-0.png
-File139=marker-rojo-1.png
+File130=marker-azul-91.png
+File131=marker-azul-92.png
+File132=marker-azul-93.png
+File133=marker-azul-94.png
+File134=marker-azul-95.png
+File135=marker-azul-96.png
+File136=marker-azul-97.png
+File137=marker-azul-98.png
+File138=marker-azul-99.png
+File139=marker-rojo-0.png
File14=durakelo1.png
-File140=marker-rojo-10.png
-File141=marker-rojo-100.png
-File142=marker-rojo-11.png
-File143=marker-rojo-12.png
-File144=marker-rojo-13.png
-File145=marker-rojo-14.png
-File146=marker-rojo-15.png
-File147=marker-rojo-16.png
-File148=marker-rojo-17.png
-File149=marker-rojo-18.png
-File15=engrane.jpg
-File150=marker-rojo-19.png
-File151=marker-rojo-2.png
-File152=marker-rojo-20.png
-File153=marker-rojo-21.png
-File154=marker-rojo-22.png
-File155=marker-rojo-23.png
-File156=marker-rojo-24.png
-File157=marker-rojo-25.png
-File158=marker-rojo-26.png
-File159=marker-rojo-27.png
-File16=engrane3.png
-File160=marker-rojo-28.png
-File161=marker-rojo-29.png
-File162=marker-rojo-3.png
-File163=marker-rojo-30.png
-File164=marker-rojo-31.png
-File165=marker-rojo-32.png
-File166=marker-rojo-33.png
-File167=marker-rojo-34.png
-File168=marker-rojo-35.png
-File169=marker-rojo-36.png
-File17=espera.gif
-File170=marker-rojo-37.png
-File171=marker-rojo-38.png
-File172=marker-rojo-39.png
-File173=marker-rojo-4.png
-File174=marker-rojo-40.png
-File175=marker-rojo-41.png
-File176=marker-rojo-42.png
-File177=marker-rojo-43.png
-File178=marker-rojo-44.png
-File179=marker-rojo-45.png
-File18=fondo_kmt.jpg
-File180=marker-rojo-46.png
-File181=marker-rojo-47.png
-File182=marker-rojo-48.png
-File183=marker-rojo-49.png
-File184=marker-rojo-5.png
-File185=marker-rojo-50.png
-File186=marker-rojo-51.png
-File187=marker-rojo-52.png
-File188=marker-rojo-53.png
-File189=marker-rojo-54.png
-File19=foto.bal
-File190=marker-rojo-55.png
-File191=marker-rojo-56.png
-File192=marker-rojo-57.png
-File193=marker-rojo-58.png
-File194=marker-rojo-59.png
-File195=marker-rojo-6.png
-File196=marker-rojo-60.png
-File197=marker-rojo-61.png
-File198=marker-rojo-62.png
-File199=marker-rojo-63.png
+File140=marker-rojo-1.png
+File141=marker-rojo-10.png
+File142=marker-rojo-100.png
+File143=marker-rojo-11.png
+File144=marker-rojo-12.png
+File145=marker-rojo-13.png
+File146=marker-rojo-14.png
+File147=marker-rojo-15.png
+File148=marker-rojo-16.png
+File149=marker-rojo-17.png
+File15=encuesta.bal
+File150=marker-rojo-18.png
+File151=marker-rojo-19.png
+File152=marker-rojo-2.png
+File153=marker-rojo-20.png
+File154=marker-rojo-21.png
+File155=marker-rojo-22.png
+File156=marker-rojo-23.png
+File157=marker-rojo-24.png
+File158=marker-rojo-25.png
+File159=marker-rojo-26.png
+File16=engrane.jpg
+File160=marker-rojo-27.png
+File161=marker-rojo-28.png
+File162=marker-rojo-29.png
+File163=marker-rojo-3.png
+File164=marker-rojo-30.png
+File165=marker-rojo-31.png
+File166=marker-rojo-32.png
+File167=marker-rojo-33.png
+File168=marker-rojo-34.png
+File169=marker-rojo-35.png
+File17=engrane3.png
+File170=marker-rojo-36.png
+File171=marker-rojo-37.png
+File172=marker-rojo-38.png
+File173=marker-rojo-39.png
+File174=marker-rojo-4.png
+File175=marker-rojo-40.png
+File176=marker-rojo-41.png
+File177=marker-rojo-42.png
+File178=marker-rojo-43.png
+File179=marker-rojo-44.png
+File18=espera.gif
+File180=marker-rojo-45.png
+File181=marker-rojo-46.png
+File182=marker-rojo-47.png
+File183=marker-rojo-48.png
+File184=marker-rojo-49.png
+File185=marker-rojo-5.png
+File186=marker-rojo-50.png
+File187=marker-rojo-51.png
+File188=marker-rojo-52.png
+File189=marker-rojo-53.png
+File19=fondo_kmt.jpg
+File190=marker-rojo-54.png
+File191=marker-rojo-55.png
+File192=marker-rojo-56.png
+File193=marker-rojo-57.png
+File194=marker-rojo-58.png
+File195=marker-rojo-59.png
+File196=marker-rojo-6.png
+File197=marker-rojo-60.png
+File198=marker-rojo-61.png
+File199=marker-rojo-62.png
File2=alert2.png
-File20=guardagestion.bal
-File200=marker-rojo-64.png
-File201=marker-rojo-65.png
-File202=marker-rojo-66.png
-File203=marker-rojo-67.png
-File204=marker-rojo-68.png
-File205=marker-rojo-69.png
-File206=marker-rojo-7.png
-File207=marker-rojo-70.png
-File208=marker-rojo-71.png
-File209=marker-rojo-72.png
-File21=guna_viejo.png
-File210=marker-rojo-73.png
-File211=marker-rojo-74.png
-File212=marker-rojo-75.png
-File213=marker-rojo-76.png
-File214=marker-rojo-77.png
-File215=marker-rojo-78.png
-File216=marker-rojo-79.png
-File217=marker-rojo-8.png
-File218=marker-rojo-80.png
-File219=marker-rojo-81.png
-File22=infonavit1.jpg
-File220=marker-rojo-82.png
-File221=marker-rojo-83.png
-File222=marker-rojo-84.png
-File223=marker-rojo-85.png
-File224=marker-rojo-86.png
-File225=marker-rojo-87.png
-File226=marker-rojo-88.png
-File227=marker-rojo-89.png
-File228=marker-rojo-9.png
-File229=marker-rojo-90.png
-File23=itembuttonblue.png
-File230=marker-rojo-91.png
-File231=marker-rojo-92.png
-File232=marker-rojo-93.png
-File233=marker-rojo-94.png
-File234=marker-rojo-95.png
-File235=marker-rojo-96.png
-File236=marker-rojo-97.png
-File237=marker-rojo-98.png
-File238=marker-rojo-99.png
-File239=marker-verde-0.png
-File24=k.png
-File240=marker-verde-1.png
-File241=marker-verde-10.png
-File242=marker-verde-100.png
-File243=marker-verde-11.png
-File244=marker-verde-12.png
-File245=marker-verde-13.png
-File246=marker-verde-14.png
-File247=marker-verde-15.png
-File248=marker-verde-16.png
-File249=marker-verde-17.png
-File25=K-b27c0809.png
-File250=marker-verde-18.png
-File251=marker-verde-19.png
-File252=marker-verde-2.png
-File253=marker-verde-20.png
-File254=marker-verde-21.png
-File255=marker-verde-22.png
-File256=marker-verde-23.png
-File257=marker-verde-24.png
-File258=marker-verde-25.png
-File259=marker-verde-26.png
-File26=kelloggs.png
-File260=marker-verde-27.png
-File261=marker-verde-28.png
-File262=marker-verde-29.png
-File263=marker-verde-3.png
-File264=marker-verde-30.png
-File265=marker-verde-31.png
-File266=marker-verde-32.png
-File267=marker-verde-33.png
-File268=marker-verde-34.png
-File269=marker-verde-35.png
-File27=keymon_logo.png
-File270=marker-verde-36.png
-File271=marker-verde-37.png
-File272=marker-verde-38.png
-File273=marker-verde-39.png
-File274=marker-verde-4.png
-File275=marker-verde-40.png
-File276=marker-verde-41.png
-File277=marker-verde-42.png
-File278=marker-verde-43.png
-File279=marker-verde-44.png
-File28=kmt.db
-File280=marker-verde-45.png
-File281=marker-verde-46.png
-File282=marker-verde-47.png
-File283=marker-verde-48.png
-File284=marker-verde-49.png
-File285=marker-verde-5.png
-File286=marker-verde-50.png
-File287=marker-verde-51.png
-File288=marker-verde-52.png
-File289=marker-verde-53.png
-File29=login.bal
-File290=marker-verde-54.png
-File291=marker-verde-55.png
-File292=marker-verde-56.png
-File293=marker-verde-57.png
-File294=marker-verde-58.png
-File295=marker-verde-59.png
-File296=marker-verde-6.png
-File297=marker-verde-60.png
-File298=marker-verde-61.png
-File299=marker-verde-62.png
+File20=foto.bal
+File200=marker-rojo-63.png
+File201=marker-rojo-64.png
+File202=marker-rojo-65.png
+File203=marker-rojo-66.png
+File204=marker-rojo-67.png
+File205=marker-rojo-68.png
+File206=marker-rojo-69.png
+File207=marker-rojo-7.png
+File208=marker-rojo-70.png
+File209=marker-rojo-71.png
+File21=guardagestion.bal
+File210=marker-rojo-72.png
+File211=marker-rojo-73.png
+File212=marker-rojo-74.png
+File213=marker-rojo-75.png
+File214=marker-rojo-76.png
+File215=marker-rojo-77.png
+File216=marker-rojo-78.png
+File217=marker-rojo-79.png
+File218=marker-rojo-8.png
+File219=marker-rojo-80.png
+File22=guna_viejo.png
+File220=marker-rojo-81.png
+File221=marker-rojo-82.png
+File222=marker-rojo-83.png
+File223=marker-rojo-84.png
+File224=marker-rojo-85.png
+File225=marker-rojo-86.png
+File226=marker-rojo-87.png
+File227=marker-rojo-88.png
+File228=marker-rojo-89.png
+File229=marker-rojo-9.png
+File23=infonavit1.jpg
+File230=marker-rojo-90.png
+File231=marker-rojo-91.png
+File232=marker-rojo-92.png
+File233=marker-rojo-93.png
+File234=marker-rojo-94.png
+File235=marker-rojo-95.png
+File236=marker-rojo-96.png
+File237=marker-rojo-97.png
+File238=marker-rojo-98.png
+File239=marker-rojo-99.png
+File24=itembuttonblue.png
+File240=marker-verde-0.png
+File241=marker-verde-1.png
+File242=marker-verde-10.png
+File243=marker-verde-100.png
+File244=marker-verde-11.png
+File245=marker-verde-12.png
+File246=marker-verde-13.png
+File247=marker-verde-14.png
+File248=marker-verde-15.png
+File249=marker-verde-16.png
+File25=k.png
+File250=marker-verde-17.png
+File251=marker-verde-18.png
+File252=marker-verde-19.png
+File253=marker-verde-2.png
+File254=marker-verde-20.png
+File255=marker-verde-21.png
+File256=marker-verde-22.png
+File257=marker-verde-23.png
+File258=marker-verde-24.png
+File259=marker-verde-25.png
+File26=K-b27c0809.png
+File260=marker-verde-26.png
+File261=marker-verde-27.png
+File262=marker-verde-28.png
+File263=marker-verde-29.png
+File264=marker-verde-3.png
+File265=marker-verde-30.png
+File266=marker-verde-31.png
+File267=marker-verde-32.png
+File268=marker-verde-33.png
+File269=marker-verde-34.png
+File27=kelloggs.png
+File270=marker-verde-35.png
+File271=marker-verde-36.png
+File272=marker-verde-37.png
+File273=marker-verde-38.png
+File274=marker-verde-39.png
+File275=marker-verde-4.png
+File276=marker-verde-40.png
+File277=marker-verde-41.png
+File278=marker-verde-42.png
+File279=marker-verde-43.png
+File28=keymon_logo.png
+File280=marker-verde-44.png
+File281=marker-verde-45.png
+File282=marker-verde-46.png
+File283=marker-verde-47.png
+File284=marker-verde-48.png
+File285=marker-verde-49.png
+File286=marker-verde-5.png
+File287=marker-verde-50.png
+File288=marker-verde-51.png
+File289=marker-verde-52.png
+File29=kmt.db
+File290=marker-verde-53.png
+File291=marker-verde-54.png
+File292=marker-verde-55.png
+File293=marker-verde-56.png
+File294=marker-verde-57.png
+File295=marker-verde-58.png
+File296=marker-verde-59.png
+File297=marker-verde-6.png
+File298=marker-verde-60.png
+File299=marker-verde-61.png
File3=alerta.jpg
-File30=logo sanfer.jpg
-File300=marker-verde-63.png
-File301=marker-verde-64.png
-File302=marker-verde-65.png
-File303=marker-verde-66.png
-File304=marker-verde-67.png
-File305=marker-verde-68.png
-File306=marker-verde-69.png
-File307=marker-verde-7.png
-File308=marker-verde-70.png
-File309=marker-verde-71.png
-File31=Logo_durakelo_192xx192.jpeg
-File310=marker-verde-72.png
-File311=marker-verde-73.png
-File312=marker-verde-74.png
-File313=marker-verde-75.png
-File314=marker-verde-76.png
-File315=marker-verde-77.png
-File316=marker-verde-78.png
-File317=marker-verde-79.png
-File318=marker-verde-8.png
-File319=marker-verde-80.png
-File32=logo_exitus1.jpg
-File320=marker-verde-81.png
-File321=marker-verde-82.png
-File322=marker-verde-83.png
-File323=marker-verde-84.png
-File324=marker-verde-85.png
-File325=marker-verde-86.png
-File326=marker-verde-87.png
-File327=marker-verde-88.png
-File328=marker-verde-89.png
-File329=marker-verde-9.png
-File33=MainPage.bal
-File330=marker-verde-90.png
-File331=marker-verde-91.png
-File332=marker-verde-92.png
-File333=marker-verde-93.png
-File334=marker-verde-94.png
-File335=marker-verde-95.png
-File336=marker-verde-96.png
-File337=marker-verde-97.png
-File338=marker-verde-98.png
-File339=marker-verde-99.png
-File34=Malo.jpg
-File340=nota.bal
-File341=NoVenta.bal
-File342=nuevocliente.bal
-File343=palomita_verde.png
-File344=pedido.bal
-File345=pedidoitem.bal
-File346=planfia_logo.png
-File347=planfia_logo_old.png
-File348=planfia_logo_old2.png
-File349=principal.bal
-File35=mapa.bal
-File350=proditem.bal
-File351=productos.bal
-File352=productos.bal.old
-File353=promociones.bal
-File354=qr.bal
-File355=rechazo.jpg
-File356=rojo.png
-File357=salma.jpg
-File358=salma.png
-File359=senial.jpg
-File36=mapa_rutas.bal
-File360=sync.png
-File361=tache_rojo.png
-File362=telefonos.bal
-File363=ticketsDia.bal
-File364=Tiendita.jpg
-File365=unilever.jpg
-File366=verde.png
-File37=marker-azul-0.png
-File38=marker-azul-1.png
-File39=marker-azul-10.png
+File30=login.bal
+File300=marker-verde-62.png
+File301=marker-verde-63.png
+File302=marker-verde-64.png
+File303=marker-verde-65.png
+File304=marker-verde-66.png
+File305=marker-verde-67.png
+File306=marker-verde-68.png
+File307=marker-verde-69.png
+File308=marker-verde-7.png
+File309=marker-verde-70.png
+File31=logo sanfer.jpg
+File310=marker-verde-71.png
+File311=marker-verde-72.png
+File312=marker-verde-73.png
+File313=marker-verde-74.png
+File314=marker-verde-75.png
+File315=marker-verde-76.png
+File316=marker-verde-77.png
+File317=marker-verde-78.png
+File318=marker-verde-79.png
+File319=marker-verde-8.png
+File32=Logo_durakelo_192xx192.jpeg
+File320=marker-verde-80.png
+File321=marker-verde-81.png
+File322=marker-verde-82.png
+File323=marker-verde-83.png
+File324=marker-verde-84.png
+File325=marker-verde-85.png
+File326=marker-verde-86.png
+File327=marker-verde-87.png
+File328=marker-verde-88.png
+File329=marker-verde-89.png
+File33=logo_exitus1.jpg
+File330=marker-verde-9.png
+File331=marker-verde-90.png
+File332=marker-verde-91.png
+File333=marker-verde-92.png
+File334=marker-verde-93.png
+File335=marker-verde-94.png
+File336=marker-verde-95.png
+File337=marker-verde-96.png
+File338=marker-verde-97.png
+File339=marker-verde-98.png
+File34=MainPage.bal
+File340=marker-verde-99.png
+File341=nota.bal
+File342=NoVenta.bal
+File343=nuevocliente.bal
+File344=palomita_verde.png
+File345=pedido.bal
+File346=pedidoitem.bal
+File347=planfia_logo.png
+File348=planfia_logo_old.png
+File349=planfia_logo_old2.png
+File35=Malo.jpg
+File350=principal.bal
+File351=proditem.bal
+File352=productos.bal
+File353=productos.bal.old
+File354=promociones.bal
+File355=qr.bal
+File356=rechazo.jpg
+File357=rojo.png
+File358=salma.jpg
+File359=salma.png
+File36=mapa.bal
+File360=senial.jpg
+File361=sync.png
+File362=tache_rojo.png
+File363=telefonos.bal
+File364=ticketsDia.bal
+File365=Tiendita.jpg
+File366=unilever.jpg
+File367=verde.png
+File37=mapa_rutas.bal
+File38=marker-azul-0.png
+File39=marker-azul-1.png
File4=alerta_amarilla.png
-File40=marker-azul-100.png
-File41=marker-azul-11.png
-File42=marker-azul-12.png
-File43=marker-azul-13.png
-File44=marker-azul-14.png
-File45=marker-azul-15.png
-File46=marker-azul-16.png
-File47=marker-azul-17.png
-File48=marker-azul-18.png
-File49=marker-azul-19.png
+File40=marker-azul-10.png
+File41=marker-azul-100.png
+File42=marker-azul-11.png
+File43=marker-azul-12.png
+File44=marker-azul-13.png
+File45=marker-azul-14.png
+File46=marker-azul-15.png
+File47=marker-azul-16.png
+File48=marker-azul-17.png
+File49=marker-azul-18.png
File5=amarillo.png
-File50=marker-azul-2.png
-File51=marker-azul-20.png
-File52=marker-azul-21.png
-File53=marker-azul-22.png
-File54=marker-azul-23.png
-File55=marker-azul-24.png
-File56=marker-azul-25.png
-File57=marker-azul-26.png
-File58=marker-azul-27.png
-File59=marker-azul-28.png
+File50=marker-azul-19.png
+File51=marker-azul-2.png
+File52=marker-azul-20.png
+File53=marker-azul-21.png
+File54=marker-azul-22.png
+File55=marker-azul-23.png
+File56=marker-azul-24.png
+File57=marker-azul-25.png
+File58=marker-azul-26.png
+File59=marker-azul-27.png
File6=anterior.jpg
-File60=marker-azul-29.png
-File61=marker-azul-3.png
-File62=marker-azul-30.png
-File63=marker-azul-31.png
-File64=marker-azul-32.png
-File65=marker-azul-33.png
-File66=marker-azul-34.png
-File67=marker-azul-35.png
-File68=marker-azul-36.png
-File69=marker-azul-37.png
+File60=marker-azul-28.png
+File61=marker-azul-29.png
+File62=marker-azul-3.png
+File63=marker-azul-30.png
+File64=marker-azul-31.png
+File65=marker-azul-32.png
+File66=marker-azul-33.png
+File67=marker-azul-34.png
+File68=marker-azul-35.png
+File69=marker-azul-36.png
File7=carrito.png
-File70=marker-azul-38.png
-File71=marker-azul-39.png
-File72=marker-azul-4.png
-File73=marker-azul-40.png
-File74=marker-azul-41.png
-File75=marker-azul-42.png
-File76=marker-azul-43.png
-File77=marker-azul-44.png
-File78=marker-azul-45.png
-File79=marker-azul-46.png
+File70=marker-azul-37.png
+File71=marker-azul-38.png
+File72=marker-azul-39.png
+File73=marker-azul-4.png
+File74=marker-azul-40.png
+File75=marker-azul-41.png
+File76=marker-azul-42.png
+File77=marker-azul-43.png
+File78=marker-azul-44.png
+File79=marker-azul-45.png
File8=celltitle.bal
-File80=marker-azul-47.png
-File81=marker-azul-48.png
-File82=marker-azul-49.png
-File83=marker-azul-5.png
-File84=marker-azul-50.png
-File85=marker-azul-51.png
-File86=marker-azul-52.png
-File87=marker-azul-53.png
-File88=marker-azul-54.png
-File89=marker-azul-55.png
+File80=marker-azul-46.png
+File81=marker-azul-47.png
+File82=marker-azul-48.png
+File83=marker-azul-49.png
+File84=marker-azul-5.png
+File85=marker-azul-50.png
+File86=marker-azul-51.png
+File87=marker-azul-52.png
+File88=marker-azul-53.png
+File89=marker-azul-54.png
File9=Cliente.bal
-File90=marker-azul-56.png
-File91=marker-azul-57.png
-File92=marker-azul-58.png
-File93=marker-azul-59.png
-File94=marker-azul-6.png
-File95=marker-azul-60.png
-File96=marker-azul-61.png
-File97=marker-azul-62.png
-File98=marker-azul-63.png
-File99=marker-azul-64.png
+File90=marker-azul-55.png
+File91=marker-azul-56.png
+File92=marker-azul-57.png
+File93=marker-azul-58.png
+File94=marker-azul-59.png
+File95=marker-azul-6.png
+File96=marker-azul-60.png
+File97=marker-azul-61.png
+File98=marker-azul-62.png
+File99=marker-azul-63.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup100=Default Group
@@ -662,6 +663,7 @@ FileGroup363=Default Group
FileGroup364=Default Group
FileGroup365=Default Group
FileGroup366=Default Group
+FileGroup367=Default Group
FileGroup37=Default Group
FileGroup38=Default Group
FileGroup39=Default Group
@@ -787,7 +789,7 @@ Module6=C_Historico
Module7=C_Nota
Module8=C_NoVenta
Module9=C_Principal
-NumberOfFiles=366
+NumberOfFiles=367
NumberOfLibraries=31
NumberOfModules=23
Version=12.5
@@ -795,7 +797,7 @@ Version=12.5
#Region Project Attributes
#ApplicationLabel: Durakelo
#VersionCode: 1
- #VersionName: 4.01.17
+ #VersionName: 4.01.17_2
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False
diff --git a/B4A/Durakelo.b4a.meta b/B4A/Durakelo.b4a.meta
index 256abb0..44af97a 100644
--- a/B4A/Durakelo.b4a.meta
+++ b/B4A/Durakelo.b4a.meta
@@ -70,6 +70,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=1,3
ModuleClosedNodes8=
ModuleClosedNodes9=
-NavigationStack=C_Principal,SUBIR_P_Click,2587,0,C_Principal,Subir_Click,520,0,appUpdater,Service_Create,111,0,Diseñador Visual,login.bal,-100,2,appUpdater,Process_Globals,74,0,B4XMainPage,B4XPage_Appear,185,0,C_UpdateAvailable,Class_Globals,0,0,B4XMainPage,B4XPage_Created,120,0,B4XMainPage,Class_Globals,86,0,Main,Create_Menu,69,0
+NavigationStack=B4XMainPage,B4XPage_Appear,193,0,C_Principal,B4XPage_Appear,409,6,C_Principal,connecta_Click,1876,0,Diseñador Visual,encuesta.bal,-100,2,C_Principal,cargar_Click,842,0,C_Principal,B4XPage_CloseRequest,1863,0,C_Principal,IsConnectedToInternet,257,0,Tracker,flp_LocationChanged,175,0,Starter,Timer1_Tick,69,6,Starter,ENVIA_ULTIMA_GPS,109,6
SelectedBuild=0
VisibleModules=21,2,9,18,7,4,10,22,11,23,15,1,13
diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal
index 761dc76..64fea75 100644
Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ
diff --git a/B4A/Files/encuesta.bal b/B4A/Files/encuesta.bal
new file mode 100644
index 0000000..d1473a6
Binary files /dev/null and b/B4A/Files/encuesta.bal differ
diff --git a/B4A/Starter.bas b/B4A/Starter.bas
index 0b8c81f..20c32dd 100644
--- a/B4A/Starter.bas
+++ b/B4A/Starter.bas
@@ -73,6 +73,7 @@ Private Sub Timer1_Tick
' ToastMessageShow("Timer",False)
If logger Then Log("Siguiente actuaizacion " & DateTime.Time(DateTime.Now + Interval * 1000))
ENVIA_ULTIMA_GPS
+ Log("trato de enviar")
End Sub
Sub Service_TaskRemoved
@@ -100,12 +101,13 @@ Sub ENVIA_ULTIMA_GPS 'ignore
' cmd.Initialize
' cmd.Name = "select_fechat"
' reqManager.ExecuteQuery(cmd , 0, "fechat")
-' Dim cmd As DBCommand
-' cmd.Initialize
-' cmd.Name = "UPDATE_DURK_ACTUAL2_GPS"
-' cmd.Parameters = Array As Object(Main.montoActual,Main.clientestotal, Main.clientesventa,Main.clientesvisitados,lat_gps,lon_gps,Main.batt,0, 0, 0,Main.ALMACEN,Main.rutapreventa)
-' reqManager.ExecuteCommand(cmd,"inst_visitas")
-' skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso"))
+ LogColor(lat_gps&","&lon_gps,Colors.Blue)
+ Dim cmd As DBCommand
+ cmd.Initialize
+ cmd.Name = "UPDATE_DURK_ACTUAL2_GPS"
+ cmd.Parameters = Array As Object(B4XPages.MainPage.montoActual, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa,B4XPages.MainPage.clientesvisitados,lat_gps,lon_gps,B4XPages.MainPage.batt,0, 0, 0,B4XPages.MainPage.ALMACEN,B4XPages.MainPage.rutapreventa)
+ reqManager.ExecuteCommand(cmd,"inst_visitas")
+ skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso"))
'Reiniciamos el timer para cuando llamamos el Sub desde "seleccion"
Timer1.Enabled = False
diff --git a/B4A/appUpdater.bas b/B4A/appUpdater.bas
new file mode 100644
index 0000000..c2eebe5
--- /dev/null
+++ b/B4A/appUpdater.bas
@@ -0,0 +1,286 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Service
+Version=10.2
+@EndOfDesignText@
+#Region Service Attributes
+ #StartAtBoot: False
+#End Region
+
+'////////////////////////////////////////////////////////////////////////////////////////////
+'//// Servicio para revisar si hay actualizacion de aplicación, usa la
+'//// actividad "updateAvailable" para mostrar mensajes.
+'////
+'//// https://www.b4x.com/android/forum/threads/update-your-app-without-using-the-gplaystore.109720/#content
+'////
+'//// En la actividad del la cual se va a llamar la revision de actualizacion
+'//// hay que agregar los siguientes Subs:
+'////
+' Sub boton_que_llama_revision_Click
+' StartService(appUpdater)
+' End Sub
+'
+' appUpdater - Mostramos el anuncio de que se esta descargando el nuevo apk
+' Sub muestraProgreso
+' ProgressDialogShow("Descargando actualización")
+' End Sub
+'
+' appUpdater - Ocultamos el anuncio de que se esta descargando el nuevo apk
+' Sub ocultaProgreso
+' ProgressDialogHide
+' End Sub
+'////
+'//// Requiere las siguientes librerias:
+'////
+'//// * JavaObject
+'//// * OkHttpUtils2
+'//// * Phone
+'//// * RuntimePermissions
+'//// * appUpdating
+'////
+'//// Requiere las siguientes lineas en el manifiesto:
+'////
+' AddManifestText(
+' )
+' AddApplicationText(
+'
+'
+'
+' )
+' CreateResource(xml, provider_paths,
+'
+'
+'
+'
+'
+' )
+' AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)
+' AddPermission(android.permission.INTERNET)
+' AddPermission(android.permission.INSTALL_PACKAGES)
+' AddPermission(android.permission.READ_EXTERNAL_STORAGE)
+' AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)
+' AddPermission(android.permission.READ_PHONE_STATE)
+' AddPermission(android.permission.WAKE_LOCK)
+'////
+'////////////////////////////////////////////////////////////////////////////////////////////
+
+Sub Process_Globals
+ 'These global variables will be declared once when the application starts.
+ 'These variables can be accessed from all modules.
+
+ 'Aqui va la liga al archivo .ver en el servidor que contiene la información de la aplicacion
+ Public lnk As String = "https://keymon.lat/movil/Durakelo/durakelo.ver"
+' Public lnk As String = "https://10.0.0.205/Movil/Guna/cedex.ver"
+ '##########################################
+ '## La ruta en el servidor es: ##
+ '## \\10.0.0.205\e$\Cargas\Movil\Guna ##
+ '##########################################
+ '/// En el servidor se necesita un archivo de texto (.ver) que tenga los siguientes
+ '/// datos separados por un tabulador
+ '/// contents of ver file, each field is seperated by a tab
+ ' Field 0 = 2.226.19.09.19.01a <-- Esta es la version de la aplicación disponible
+ ' Field 1 = A new version of the MyAPP is available, Download and update now ? <-- Mensaje para cuando hay actualización
+ ' Field 2 = MyApp is up to date <--- Mensaje para cuando no hay actualización
+ ' Field 3 = http://www.mydomain.com/Public/myapp.apk <--- Liga al apk de la actualización
+
+ Public nNewApp As Notification
+ Public nNewAppnID As Int = 16
+ 'Para Download
+ Dim nativeMe As JavaObject
+ Dim n2 As Notification
+ Dim n2ID As Int = 16
+ 'Para fileProvider
+ Public SharedFolder As String
+ Public UseFileProvider As Boolean
+ Private rp As RuntimePermissions
+
+ Type mNewVersion(update As Boolean, nonewAPP As Boolean, notifyUser As Boolean, _
+ version As String, newMsg As String, okMsg As String, appLink As String)
+ Public newApp As mNewVersion
+End Sub
+
+Sub Service_Create
+ Log("appUpdater(), Service_Create")
+ newApp.Initialize
+ Service.AutomaticForegroundMode = Service.AUTOMATIC_FOREGROUND_NEVER
+ n2.Initialize
+ nativeMe.InitializeContext
+End Sub
+
+Sub Service_Start (StartingIntent As Intent)
+ Log("appUpdater(), Service_Start")
+' CallSubDelayed2(Main, "muestraProgreso", "Buscando actualización")
+ B4XPages.MainPage.muestraProgreso("Buscando actualización")
+ 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)
+End Sub
+
+Sub download_Start (StartingIntent As Intent)
+ download_newApk
+End Sub
+
+Sub download_newApk
+' CreateNotification("Descargando actualización", "Descargando apk", "ic_file_download_white_24dp", Main, False, True)
+' CallSubDelayed2(Main, "muestraProgreso", "Descargando actualización")
+ Log("Descargando actualización")
+ B4XPages.ShowPage("login")
+ Starter.muestraProgreso = 1
+ Dim job_newAPP As HttpJob
+ job_newAPP.Initialize("job_newAPP",Me)
+ job_newAPP.Download(newApp.appLink)
+ Wait for (job_newAPP) JobDone (job_newAPP As HttpJob)
+ If job_newAPP.Success = True Then
+ ' // Delete existing file
+ If File.Exists(SharedFolder,"newapp.apk") Then
+ File.Delete(SharedFolder,"newapp.apk")
+ End If
+ ' // Save new file
+ Dim outNewAPK As OutputStream = File.OpenOutput(SharedFolder,"newapp.apk", False)
+ File.Copy2(job_newAPP.GetInputStream, outNewAPK)
+ outNewAPK.Close
+ If Starter.Logger Then Log("APK dir: "&SharedFolder)
+ End If
+ job_newAPP.Release
+ ' // Install the app
+ Dim in As Intent
+ in.Initialize(in.ACTION_VIEW,"" )
+ SetFileUriAsIntentData(in, "newapp.apk")
+ ' // Type must be set after calling SetFileUriAsIntentData
+ in.SetType("application/vnd.android.package-archive")
+ StartActivity(in)
+ n2.Cancel(nNewAppnID)
+ B4XPages.MainPage.ocultaProgreso
+' Service.StopForeground(nNewAppnID)
+ StopService(Me)
+' CallSubDelayed(Main,"ocultaProgreso")
+End Sub
+
+Sub download_Destroy
+ n2.Cancel(n2ID)
+ Service.StopForeground(n2ID)
+End Sub
+
+Sub Download (Callback As Object, link As String) As HttpJob
+ Dim j As HttpJob
+ j.Initialize("", Callback)
+ j.Download(link)
+ Return j
+End Sub
+
+Private Sub CreateNotification2(Title As String, Content As String, _ 'ignore
+ Icon As String, TargetActivity As Object, Sound As Boolean, _
+ Vibrate As Boolean, pN As Notification,pNID As Int) As Notification
+ pN.Initialize2(pN.IMPORTANCE_HIGH)
+' pN.Number = pNID
+' pN.Light = False
+ pN.Vibrate = Vibrate
+ pN.Sound = Sound
+' pN.OnGoingEvent = False
+ pN.Icon = Icon
+ pN.AutoCancel = True
+ pN.SetInfo(Title, Content, TargetActivity)
+ pN.Notify(pNID)
+ Return pN
+End Sub
+
+Private Sub CreateNotification(Title As String, Content As String, Icon As String, TargetActivity As Object, Sound As Boolean, Vibrate As Boolean) As Notification 'ignore
+ n2.Initialize
+ n2.Light = False
+ n2.Vibrate = Vibrate
+ n2.Sound = Sound
+ n2.OnGoingEvent = True
+ n2.Icon = Icon
+ n2.SetInfo(Title, Content, TargetActivity)
+ n2.Notify(nNewAppnID)
+End Sub
+
+Sub Service_Destroy
+ Log("appUpdater(), Service_Destroy")
+End Sub
+
+Sub fileProvider_init
+ Dim p As Phone
+ If p.SdkVersion >= 24 Or File.ExternalWritable = False Then
+ UseFileProvider = True
+ SharedFolder = File.Combine(File.DirInternal, "shared")
+ If Not(File.IsDirectory(File.DirInternal,"shared")) Then
+ File.MakeDir("", SharedFolder)
+ End If
+ Else
+ UseFileProvider = False
+ SharedFolder = rp.GetSafeDirDefaultExternal("shared")
+ End If
+ Log($"Using FileProvider? ${UseFileProvider}"$)
+End Sub
+
+'Returns the file uri.
+Sub GetFileUri (FileName As String) As Object
+ Try
+ If Not(UseFileProvider) Then
+ Dim uri As JavaObject
+ Return uri.InitializeStatic("android.net.Uri").RunMethod("parse", Array("file://" & File.Combine(SharedFolder, FileName)))
+ End If
+ Dim f As JavaObject
+ f.InitializeNewInstance("java.io.File", Array(SharedFolder, FileName))
+ Dim fp As JavaObject
+ Dim context As JavaObject
+ context.InitializeContext
+ fp.InitializeStatic("android.support.v4.content.FileProvider")
+ Return fp.RunMethod("getUriForFile", Array(context, Application.PackageName & ".provider", f))
+ Catch
+ Log("FileProvider::GetFileUri - error - " & LastException.Message)
+ Return ""
+ End Try
+End Sub
+
+'Replaces the intent Data field with the file uri.
+'Resets the type field. Make sure to call Intent.SetType after calling this method
+Sub SetFileUriAsIntentData (Intent As Intent, FileName As String)
+ Dim jo As JavaObject = Intent
+ jo.RunMethod("setData", Array(GetFileUri(FileName)))
+ Intent.Flags = Bit.Or(Intent.Flags, 1) 'FLAG_GRANT_READ_URI_PERMISSION
+End Sub