mirror of
https://github.com/KeymonSoft/Gabinete-Roit.git
synced 2026-04-17 19:37:10 +00:00
4.04.17 se agrega codigos qr
This commit is contained in:
@@ -76,6 +76,7 @@ Sub Class_Globals
|
|||||||
Private clv_gestionadas As CustomListView
|
Private clv_gestionadas As CustomListView
|
||||||
Private l_nombre As Label
|
Private l_nombre As Label
|
||||||
Private l_estatus As Label
|
Private l_estatus As Label
|
||||||
|
Private l_version As Label
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'You can add more parameters here.
|
'You can add more parameters here.
|
||||||
@@ -90,23 +91,32 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
reqManager.Initialize(Me, Starter.DBReqServer)
|
reqManager.Initialize(Me, Starter.DBReqServer)
|
||||||
g.Initialize("GPS")
|
g.Initialize("GPS")
|
||||||
qr.Initialize(B4XImageView1.mBase.Width)
|
qr.Initialize(B4XImageView1.mBase.Width)
|
||||||
|
|
||||||
Panel1.Width = Root.Width
|
Panel1.Width = Root.Width
|
||||||
Panel1.Height = Root.Height
|
Panel1.Height = Root.Height
|
||||||
p_camara.Width = Root.Width
|
p_camara.Width = Root.Width
|
||||||
p_camara.Height = Root.Height
|
p_camara.Height = Root.Height
|
||||||
p_validacion.Width = Root.Width
|
p_validacion.Width = Root.Width
|
||||||
p_validacion.Height = Root.Height
|
p_validacion.Height = Root.Height
|
||||||
|
|
||||||
|
|
||||||
ScrollView1.height = Root.Height - p_general.Height
|
ScrollView1.height = Root.Height - p_general.Height
|
||||||
p_scroll.height = Root.Height - p_general.Height
|
p_scroll.height = Root.Height - p_general.Height
|
||||||
|
|
||||||
p_trabajadas.height = Root.Height - p_general.Height
|
p_trabajadas.height = Root.Height - p_general.Height
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub B4XPage_Appear
|
Private Sub B4XPage_Appear
|
||||||
|
B4XPages.MainPage.login.tipoenvio = "Envio automatico"
|
||||||
|
l_version.Text = Application.VersionName
|
||||||
CheckAndRequestNotificationPermission
|
CheckAndRequestNotificationPermission
|
||||||
If Not(Subs.IsConnectedToInternet) Then
|
If Not(Subs.IsConnectedToInternet) Then
|
||||||
Msgbox("Habilita los datos del celular","Atención")
|
Msgbox("Habilita los datos del celular","Atención")
|
||||||
B4XPage_Appear
|
B4XPage_Appear
|
||||||
Else
|
Else
|
||||||
|
|
||||||
|
|
||||||
If g.GPSEnabled=False Then
|
If g.GPSEnabled=False Then
|
||||||
Dim Resultado As Int= -3
|
Dim Resultado As Int= -3
|
||||||
Do While Resultado=-3
|
Do While Resultado=-3
|
||||||
@@ -121,7 +131,8 @@ Private Sub B4XPage_Appear
|
|||||||
End Select
|
End Select
|
||||||
Loop
|
Loop
|
||||||
Else
|
Else
|
||||||
' Log("ENTRE")
|
|
||||||
|
Log("ENTRE")
|
||||||
StartService(Tracker)
|
StartService(Tracker)
|
||||||
|
|
||||||
m_lat = "0"
|
m_lat = "0"
|
||||||
@@ -163,7 +174,7 @@ Private Sub B4XPage_Appear
|
|||||||
b_checkin.visible = True
|
b_checkin.visible = True
|
||||||
b_checout.visible = False
|
b_checout.visible = False
|
||||||
b_comidain.Visible = False
|
b_comidain.Visible = False
|
||||||
b_comidaout.Visible = False
|
b_comidaout.Visible = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'' CallSubDelayed(Tracker, "StartFLPSmall")
|
'' CallSubDelayed(Tracker, "StartFLPSmall")
|
||||||
@@ -172,7 +183,7 @@ Private Sub B4XPage_Appear
|
|||||||
Starter.longitud = Tracker.FLP.GetLastKnownLocation.Longitude
|
Starter.longitud = Tracker.FLP.GetLastKnownLocation.Longitude
|
||||||
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
||||||
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
||||||
' Log("hice esto")
|
Log("hice esto")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
bu.Initialize
|
bu.Initialize
|
||||||
@@ -462,7 +473,7 @@ Private Sub b_checkin_Click
|
|||||||
p_validacion.Visible = True
|
p_validacion.Visible = True
|
||||||
l_codigo.Text = "Ingresa el codigo para el CHECK-IN."
|
l_codigo.Text = "Ingresa el codigo para el CHECK-IN."
|
||||||
|
|
||||||
End If
|
End If
|
||||||
Else If donde2 = "2" Then
|
Else If donde2 = "2" Then
|
||||||
Msgbox2Async(mensaje,"Atención", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png"),False)
|
Msgbox2Async(mensaje,"Atención", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png"),False)
|
||||||
Wait For Msgbox_Result (result As Int)
|
Wait For Msgbox_Result (result As Int)
|
||||||
@@ -681,49 +692,49 @@ Private Sub b_gestion_Click
|
|||||||
c.Position = 0
|
c.Position = 0
|
||||||
Log(c.GetString("ESTATUS"))
|
Log(c.GetString("ESTATUS"))
|
||||||
If c.GetString("ESTATUS") = "ENTRADA" Or c.GetString("ESTATUS") = "SALIDA A COMER" Or c.GetString("ESTATUS") = "REGRESO DE COMER" Then
|
If c.GetString("ESTATUS") = "ENTRADA" Or c.GetString("ESTATUS") = "SALIDA A COMER" Or c.GetString("ESTATUS") = "REGRESO DE COMER" Then
|
||||||
If Not(Subs.IsConnectedToInternet) Then
|
If Not(Subs.IsConnectedToInternet) Then
|
||||||
MsgboxAsync("Habilita los datos del celular","Atención")
|
MsgboxAsync("Habilita los datos del celular","Atención")
|
||||||
B4XPage_Appear
|
B4XPage_Appear
|
||||||
Else
|
Else
|
||||||
If distance > 200 Then
|
' If distance > 200 Then
|
||||||
Log("aqui")
|
' Log("aqui")
|
||||||
MsgboxAsync("No estas cerca del punto asignado","Atención")
|
' MsgboxAsync("No estas cerca del punto asignado","Atención")
|
||||||
Else If distance < 200 Then
|
' Else If distance < 2000000000000000000000000000 Then
|
||||||
p_trabajadas.Visible= False
|
p_trabajadas.Visible= False
|
||||||
p_scroll.Visible = True
|
p_scroll.Visible = True
|
||||||
ScrollView1.Visible = True
|
ScrollView1.Visible = True
|
||||||
|
|
||||||
ScrollView1.Panel.LoadLayout("gestion")
|
ScrollView1.Panel.LoadLayout("gestion")
|
||||||
ScrollView1.Panel.Height = p_gestion.Height
|
ScrollView1.Panel.Height = p_gestion.Height
|
||||||
|
|
||||||
p_scroll.BringToFront
|
p_scroll.BringToFront
|
||||||
y = 1
|
y = 1
|
||||||
x = 1
|
x = 1
|
||||||
InitializeCamera2
|
InitializeCamera2
|
||||||
p_camara.Visible = True
|
p_camara.Visible = True
|
||||||
b_gestion.Enabled = False
|
b_gestion.Enabled = False
|
||||||
p_gestion.Visible = True
|
p_gestion.Visible = True
|
||||||
|
|
||||||
nombrefoto = "0"
|
nombrefoto = "0"
|
||||||
nombrefoto1 = "0"
|
nombrefoto1 = "0"
|
||||||
iv_ine.Bitmap = LoadBitmap(File.DirAssets,"camara.png")
|
iv_ine.Bitmap = LoadBitmap(File.DirAssets,"camara.png")
|
||||||
iv_gestion.Bitmap = LoadBitmap(File.DirAssets,"camara.png")
|
iv_gestion.Bitmap = LoadBitmap(File.DirAssets,"camara.png")
|
||||||
itemselect = ""
|
itemselect = ""
|
||||||
|
|
||||||
Dim Items As List
|
Dim Items As List
|
||||||
Items.Initialize
|
Items.Initialize
|
||||||
Items.Clear
|
Items.Clear
|
||||||
Items.Add("SELECCIONA UNA OPCION ")
|
Items.Add("SELECCIONA UNA OPCION ")
|
||||||
Items.Add("APROBADO")
|
Items.Add("APROBADO")
|
||||||
Items.Add("RECHAZADO")
|
Items.Add("RECHAZADO")
|
||||||
Items.Add("INTERMITENCIA")
|
Items.Add("INTERMITENCIA")
|
||||||
Items.Add("NO CONCLUIDO")
|
Items.Add("NO CONCLUIDO")
|
||||||
cb_estatus.SetItems(Items)
|
cb_estatus.SetItems(Items)
|
||||||
itemselect = "SELECCIONA UNA OPCION"
|
itemselect = "SELECCIONA UNA OPCION"
|
||||||
p_inci.Visible = False
|
p_inci.Visible = False
|
||||||
ajustaTamano
|
ajustaTamano
|
||||||
End If
|
' End If
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
MsgboxAsync("Por favor hacer el check-in","Atención")
|
MsgboxAsync("Por favor hacer el check-in","Atención")
|
||||||
End If
|
End If
|
||||||
@@ -907,7 +918,7 @@ Sub ajustaTamano
|
|||||||
Log("Invisible 1 y 2")
|
Log("Invisible 1 y 2")
|
||||||
b_cancelar.Top = iv_ine.Top + iv_ine.Height + 45
|
b_cancelar.Top = iv_ine.Top + iv_ine.Height + 45
|
||||||
b_finalizar.Top = iv_ine.Top + iv_ine.Height + 45
|
b_finalizar.Top = iv_ine.Top + iv_ine.Height + 45
|
||||||
End If
|
End If
|
||||||
p_gestion.Height = b_cancelar.Top + 150
|
p_gestion.Height = b_cancelar.Top + 150
|
||||||
ScrollView1.Panel.Height = p_gestion.Height
|
ScrollView1.Panel.Height = p_gestion.Height
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1126,7 +1137,7 @@ Sub mandaPendientes
|
|||||||
If c.RowCount > 0 Then
|
If c.RowCount > 0 Then
|
||||||
For i = 0 To c.RowCount -1
|
For i = 0 To c.RowCount -1
|
||||||
c.Position=i
|
c.Position=i
|
||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "insert_GESTION_GABICO"
|
cmd.Name = "insert_GESTION_GABICO"
|
||||||
cmd.Parameters = Array As Object(c.GetString("HIST_PM_FECHA"), c.GetString("HIST_PR_NOMBRE"),c.GetString("HIST_PR_TELEFONO"), c.GetString("HIST_PR_CORREO"), c.GetString("HIST_PR_CURP"), c.GetBlob("HIST_PR_INE"), c.GetString("HIST_PR_ESTATUS"),c.GetBlob("HIST_PR_EVIDENCIA"), c.GetString("HIST_PR_OBSERVACIONES"), c.GetString("HIST_PR_COMENTARIOERROR"), c.GetString("HIST_PR_IDPROYECTO"), c.GetString("HIST_PR_NOMBREPROYECTO"), c.GetString("HIST_PR_IDSUCURSAL"), c.GetString("HIST_PR_NOMBRESUCURSAL"), c.GetString("HIST_PR_USUARIO"), c.GetString("HIST_PR_LATITUD"), c.GetString("HIST_PR_LONGITUD"), c.GetString("HIST_PR_BATERIA"))
|
cmd.Parameters = Array As Object(c.GetString("HIST_PM_FECHA"), c.GetString("HIST_PR_NOMBRE"),c.GetString("HIST_PR_TELEFONO"), c.GetString("HIST_PR_CORREO"), c.GetString("HIST_PR_CURP"), c.GetBlob("HIST_PR_INE"), c.GetString("HIST_PR_ESTATUS"),c.GetBlob("HIST_PR_EVIDENCIA"), c.GetString("HIST_PR_OBSERVACIONES"), c.GetString("HIST_PR_COMENTARIOERROR"), c.GetString("HIST_PR_IDPROYECTO"), c.GetString("HIST_PR_NOMBREPROYECTO"), c.GetString("HIST_PR_IDSUCURSAL"), c.GetString("HIST_PR_NOMBRESUCURSAL"), c.GetString("HIST_PR_USUARIO"), c.GetString("HIST_PR_LATITUD"), c.GetString("HIST_PR_LONGITUD"), c.GetString("HIST_PR_BATERIA"))
|
||||||
@@ -1403,7 +1414,7 @@ End Sub
|
|||||||
|
|
||||||
Private Sub b_comidain_Click
|
Private Sub b_comidain_Click
|
||||||
If p_scroll.Visible = False Then
|
If p_scroll.Visible = False Then
|
||||||
Log("Cumple panel invisible")
|
Log("Cumple panel invisible")
|
||||||
If horasalidacomer Then
|
If horasalidacomer Then
|
||||||
If Not(Subs.IsConnectedToInternet) Then
|
If Not(Subs.IsConnectedToInternet) Then
|
||||||
Msgbox("Habilita los datos del celular","Atención")
|
Msgbox("Habilita los datos del celular","Atención")
|
||||||
@@ -1511,8 +1522,8 @@ Sub horasalidacomer As Boolean
|
|||||||
Log(DateUtils.TicksToString(newDate))
|
Log(DateUtils.TicksToString(newDate))
|
||||||
|
|
||||||
Dim p2 As Period
|
Dim p2 As Period
|
||||||
p2.Hours = 1
|
p2.Hours = 1
|
||||||
p2.Minutes = 0
|
p2.Minutes = 0
|
||||||
DateTime.DateFormat = "MM/dd/yyyy HH:mm"
|
DateTime.DateFormat = "MM/dd/yyyy HH:mm"
|
||||||
Dim fecha2 As String = DateTime.Date(DateTime.Now)
|
Dim fecha2 As String = DateTime.Date(DateTime.Now)
|
||||||
Dim prueba2() As String = Regex.Split(" ",fecha2)
|
Dim prueba2() As String = Regex.Split(" ",fecha2)
|
||||||
@@ -1558,7 +1569,7 @@ Sub horasalidacomer As Boolean
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub b_aceptar_Click
|
Private Sub b_aceptar_Click
|
||||||
mandacodigo
|
mandacodigo
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub p_validacion_Click
|
Private Sub p_validacion_Click
|
||||||
@@ -1635,7 +1646,7 @@ Private Sub cb_rechazadas_CheckedChange(Checked As Boolean)
|
|||||||
botongestionadas
|
botongestionadas
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub botongestionadas
|
Sub botongestionadas
|
||||||
c = Starter.skmt.ExecQuery("SELECT HIST_PR_NOMBRE, HIST_PR_ESTATUS FROM HIST_PROMOTORIA")
|
c = Starter.skmt.ExecQuery("SELECT HIST_PR_NOMBRE, HIST_PR_ESTATUS FROM HIST_PROMOTORIA")
|
||||||
If c.RowCount > 0 Then
|
If c.RowCount > 0 Then
|
||||||
If cb_aprobadas.Checked = False And cb_rechazadas.Checked = False Then
|
If cb_aprobadas.Checked = False And cb_rechazadas.Checked = False Then
|
||||||
|
|||||||
@@ -96,6 +96,7 @@ Sub Class_Globals
|
|||||||
Private et_codigo As EditText
|
Private et_codigo As EditText
|
||||||
Private b_cancelarcodigo As Button
|
Private b_cancelarcodigo As Button
|
||||||
Private l_codigo As Label
|
Private l_codigo As Label
|
||||||
|
Private l_version As Label
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'You can add more parameters here.
|
'You can add more parameters here.
|
||||||
@@ -135,6 +136,7 @@ End Sub
|
|||||||
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
||||||
|
|
||||||
Private Sub B4XPage_Appear
|
Private Sub B4XPage_Appear
|
||||||
|
l_version.Text = Application.VersionName
|
||||||
CheckAndRequestNotificationPermission
|
CheckAndRequestNotificationPermission
|
||||||
If g.GPSEnabled=False Then
|
If g.GPSEnabled=False Then
|
||||||
Dim result As Int= -3
|
Dim result As Int= -3
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
BIN
B4A/Files/mapa_rutas.bal
Normal file
BIN
B4A/Files/mapa_rutas.bal
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,13 +1,13 @@
|
|||||||
Build1=Default,gabinete.keymon.lat
|
Build1=Default,gabinete.keymon.lat
|
||||||
File1=alert2.png
|
File1=alert2.png
|
||||||
File10=gabinete1.png
|
File10=gestion.bal
|
||||||
File11=gestion.bal
|
File11=gestion_sup.bal
|
||||||
File12=gestion_sup.bal
|
File12=gestiones.bal
|
||||||
File13=gestiones.bal
|
File13=izquierda.png
|
||||||
File14=izquierda.png
|
File14=kmt.db
|
||||||
File15=kmt.db
|
File15=login.bal
|
||||||
File16=login.bal
|
File16=MainPage.bal
|
||||||
File17=MainPage.bal
|
File17=mapa_rutas.bal
|
||||||
File18=mas.png
|
File18=mas.png
|
||||||
File19=menos.png
|
File19=menos.png
|
||||||
File2=atras.png
|
File2=atras.png
|
||||||
@@ -18,10 +18,10 @@ File23=supervisor.bal
|
|||||||
File3=camara.png
|
File3=camara.png
|
||||||
File4=derecha.png
|
File4=derecha.png
|
||||||
File5=engranes.png
|
File5=engranes.png
|
||||||
File6=errormanager.bal
|
File6=frintal.png
|
||||||
File7=frintal.png
|
File7=from2.png
|
||||||
File8=from2.png
|
File8=gabinete.png
|
||||||
File9=gabinete.png
|
File9=gabinete1.png
|
||||||
FileGroup1=Default Group
|
FileGroup1=Default Group
|
||||||
FileGroup10=Default Group
|
FileGroup10=Default Group
|
||||||
FileGroup11=Default Group
|
FileGroup11=Default Group
|
||||||
@@ -52,33 +52,36 @@ Library11=fileprovider
|
|||||||
Library12=firebaseanalytics
|
Library12=firebaseanalytics
|
||||||
Library13=firebasenotifications
|
Library13=firebasenotifications
|
||||||
Library14=fusedlocationprovider
|
Library14=fusedlocationprovider
|
||||||
Library15=gps
|
Library15=googlemaps
|
||||||
Library16=ime
|
Library16=gps
|
||||||
Library17=javaobject
|
Library17=ime
|
||||||
Library18=nb6
|
Library18=javaobject
|
||||||
Library19=okhttputils2
|
Library19=locationmanager
|
||||||
Library2=appupdating
|
Library2=appupdating
|
||||||
Library20=phone
|
Library20=nb6
|
||||||
Library21=randomaccessfile
|
Library21=okhttputils2
|
||||||
Library22=reflection
|
Library22=phone
|
||||||
Library23=runtimepermissions
|
Library23=randomaccessfile
|
||||||
Library24=sql
|
Library24=reflection
|
||||||
Library25=stringutils
|
Library25=runtimepermissions
|
||||||
Library26=xcustomlistview
|
Library26=sql
|
||||||
Library27=xui
|
Library27=stringutils
|
||||||
Library28=xui views
|
Library28=xcustomlistview
|
||||||
|
Library29=xui
|
||||||
Library3=b4xpages
|
Library3=b4xpages
|
||||||
|
Library30=xui views
|
||||||
|
Library31=googlemapsextras
|
||||||
Library4=batteryprogressview
|
Library4=batteryprogressview
|
||||||
Library5=bctoast
|
Library5=bctoast
|
||||||
Library6=bitmapcreator
|
Library6=bitmapcreator
|
||||||
Library7=byteconverter
|
Library7=byteconverter
|
||||||
Library8=camera
|
Library8=camera
|
||||||
Library9=compressstrings
|
Library9=compressstrings
|
||||||
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~<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="33"/>~\n~<supports-screens android:largeScreens="true" ~\n~ android:normalScreens="true" ~\n~ android:smallScreens="true" ~\n~ android:anyDensity="true"/>)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'SetServiceAttribute(android:requestLegacyExternalStorage, True)~\n~~\n~AddApplicationText(~\n~<meta-data~\n~ android:name="com.google.android.geo.API_KEY"~\n~ android:value="AIzaSyBlBnx3O-DncOSv3oFIp-12wgujOYYcl-U"/>~\n~ <meta-data android:name="com.google.android.gms.version"~\n~ android:value="@integer/google_play_services_version" />~\n~)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.ACCESS_FINE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~)~\n~AddManifestText(~\n~<uses-permission ~\n~ android:name="android.permission.ACCESS_COARSE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~ )~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~~\n~'AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~'AddManifestText(<uses-permission~\n~'android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~'android:maxSdkVersion="33" />~\n~')~\n~'End of default text.~\n~~\n~'/////////////////////// App Updating ////////////////~\n~' AddManifestText(<uses-permission~\n~' android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~' android:maxSdkVersion="33" />~\n~' )~\n~ AddApplicationText(~\n~ <provider~\n~ android:name="android.support.v4.content.FileProvider"~\n~ android:authorities="$PACKAGE$.provider"~\n~ android:exported="false"~\n~ android:grantUriPermissions="true">~\n~ <meta-data~\n~ android:name="android.support.FILE_PROVIDER_PATHS"~\n~ android:resource="@xml/provider_paths"/>~\n~ </provider>~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ <paths>~\n~ <external-files-path name="name" path="" />~\n~ <files-path name="name" path="" />~\n~ <files-path name="name" path="shared" />~\n~ </paths>~\n~ )~\n~AddManifestText(<uses-feature android:name="android.hardware.telephony" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera.flash" android:required="false" />)~\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~'AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddPermission("android.permission.POST_NOTIFICATIONS")~\n~AddManifestText(<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" android:maxSdkVersion="33" />)~\n~AddPermission(android.permission.INTERNET)~\n~~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~~\n~~\n~'SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~AddPermission(android.permission.ACCESS_NETWORK_STATE)~\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~<uses-sdk android:minSdkVersion="5" android:targetSdkVersion="33"/>~\n~<supports-screens android:largeScreens="true" ~\n~ android:normalScreens="true" ~\n~ android:smallScreens="true" ~\n~ android:anyDensity="true"/>)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'SetServiceAttribute(android:requestLegacyExternalStorage, True)~\n~~\n~AddApplicationText(~\n~<meta-data~\n~ android:name="com.google.android.geo.API_KEY"~\n~ android:value="AIzaSyBlBnx3O-DncOSv3oFIp-12wgujOYYcl-U"/>~\n~ <meta-data android:name="com.google.android.gms.version"~\n~ android:value="@integer/google_play_services_version" />~\n~)~\n~AddApplicationText(<uses-library android:name="org.apache.http.legacy" android:required="false"/>)~\n~AddManifestText(~\n~<uses-permission~\n~ android:name="android.permission.ACCESS_FINE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~)~\n~~\n~AddManifestText(~\n~<uses-permission ~\n~ android:name="android.permission.ACCESS_COARSE_LOCATION"~\n~ android:maxSdkVersion="33" />~\n~ )~\n~~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~~\n~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~~\n~~\n~AddManifestText(<uses-permission~\n~android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~android:maxSdkVersion="33" />~\n~)~\n~~\n~~\n~'End of default text.~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE"~\n~ android:maxSdkVersion="33" />~\n~ )~\n~ AddApplicationText(~\n~ <provider~\n~ android:name="android.support.v4.content.FileProvider"~\n~ android:authorities="$PACKAGE$.provider"~\n~ android:exported="false"~\n~ android:grantUriPermissions="true">~\n~ <meta-data~\n~ android:name="android.support.FILE_PROVIDER_PATHS"~\n~ android:resource="@xml/provider_paths"/>~\n~ </provider>~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ <paths>~\n~ <external-files-path name="name" path="" />~\n~ <files-path name="name" path="" />~\n~ <files-path name="name" path="shared" />~\n~ </paths>~\n~ )~\n~AddManifestText(<uses-feature android:name="android.hardware.telephony" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />)~\n~AddManifestText(<uses-feature android:name="android.hardware.camera.flash" android:required="false" />)~\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~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~~\n~AddPermission("android.permission.POST_NOTIFICATIONS")~\n~~\n~AddManifestText(<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" android:maxSdkVersion="33" />)~\n~AddPermission(android.permission.INTERNET)~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~AddManifestText(<queries>~\n~ <package android:name="com.google.android.apps.maps" />~\n~ </queries>)~\n~AddPermission(android.permission.ACCESS_NETWORK_STATE)
|
||||||
Module1=appUpdater
|
Module1=appUpdater
|
||||||
Module10=DBRequestManager
|
Module10=DBRequestManager
|
||||||
Module11=errorManager
|
Module11=login
|
||||||
Module12=login
|
Module12=MAPA_RUTAS
|
||||||
Module13=QRGenerator
|
Module13=QRGenerator
|
||||||
Module14=Starter
|
Module14=Starter
|
||||||
Module15=Subs
|
Module15=Subs
|
||||||
@@ -92,14 +95,14 @@ Module7=C_UpdateAvailable
|
|||||||
Module8=CameraExClass
|
Module8=CameraExClass
|
||||||
Module9=CameraExClass2
|
Module9=CameraExClass2
|
||||||
NumberOfFiles=23
|
NumberOfFiles=23
|
||||||
NumberOfLibraries=28
|
NumberOfLibraries=31
|
||||||
NumberOfModules=16
|
NumberOfModules=16
|
||||||
Version=12.8
|
Version=12.8
|
||||||
@EndOfDesignText@
|
@EndOfDesignText@
|
||||||
#Region Project Attributes
|
#Region Project Attributes
|
||||||
#ApplicationLabel: Gabinete
|
#ApplicationLabel: Gabinete
|
||||||
#VersionCode: 1
|
#VersionCode: 1
|
||||||
#VersionName: 4.03.07
|
#VersionName: 4.04.17
|
||||||
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
||||||
#SupportedOrientations: portrait
|
#SupportedOrientations: portrait
|
||||||
#CanInstallToExternalStorage: False
|
#CanInstallToExternalStorage: False
|
||||||
|
|||||||
@@ -49,6 +49,6 @@ ModuleClosedNodes6=
|
|||||||
ModuleClosedNodes7=
|
ModuleClosedNodes7=
|
||||||
ModuleClosedNodes8=
|
ModuleClosedNodes8=
|
||||||
ModuleClosedNodes9=
|
ModuleClosedNodes9=
|
||||||
NavigationStack=login,JobDone,178,0,B4XMainPage,Timerconteo_tick,95,0,B4XMainPage,B4XPage_Appear,72,1,Main,Process_Globals,19,0,Subs,notiLowReturn,69,0,Subs,IsConnectedToInternet,77,0,login,B4XPage_CloseRequest,193,0,B4XMainPage,CheckAndRequestNotificationPermission,86,0,B4XMainPage,B4XPage_Created,52,0,login,B4XPage_Appear,64,2
|
NavigationStack=Diseñador Visual,gestion.bal,-100,1,C_principal,b_gestion_Click,728,0,Diseñador Visual,principal.bal,-100,3,login,Class_Globals,36,4,C_principal,GPS_LocationChanged,235,0,C_principal,B4XPage_Appear,104,6,login,JobDone,175,6,B4XMainPage,Class_Globals,18,0,Starter,ENVIA_ULTIMA_GPS,97,4,Starter,Process_Globals,10,1,login,ImageView5_Click,209,1
|
||||||
SelectedBuild=0
|
SelectedBuild=0
|
||||||
VisibleModules=14,3,12,5,6,10,15,16,11
|
VisibleModules=14,3,11,5,6,10,15,16,13,1
|
||||||
|
|||||||
348
B4A/MAPA_RUTAS.bas
Normal file
348
B4A/MAPA_RUTAS.bas
Normal file
@@ -0,0 +1,348 @@
|
|||||||
|
B4A=true
|
||||||
|
Group=Default Group
|
||||||
|
ModulesStructureVersion=1
|
||||||
|
Type=Activity
|
||||||
|
Version=9.3
|
||||||
|
@EndOfDesignText@
|
||||||
|
#Region Activity Attributes
|
||||||
|
#FullScreen: False
|
||||||
|
#IncludeTitle: False
|
||||||
|
#End Region
|
||||||
|
|
||||||
|
'Activity module
|
||||||
|
Sub Process_Globals
|
||||||
|
Dim GPS As GPS
|
||||||
|
Dim rp As RuntimePermissions
|
||||||
|
Dim ruta As String
|
||||||
|
Dim skmt As SQL
|
||||||
|
Dim c As Cursor
|
||||||
|
Dim c2 As Cursor
|
||||||
|
Dim c22 As Cursor
|
||||||
|
Dim c3 As Cursor
|
||||||
|
Dim Cnom As Cursor
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Sub Globals
|
||||||
|
Private gmap As GoogleMap
|
||||||
|
Private MapFragment1 As MapFragment
|
||||||
|
Dim Latitud As Double = 0
|
||||||
|
Dim Longitud As Double = 0
|
||||||
|
Dim Lat2 As Double = 0
|
||||||
|
Dim Lon2 As Double = 0
|
||||||
|
Dim p1, p2 As Location
|
||||||
|
Dim Distance As Float
|
||||||
|
Dim boton1 As Button
|
||||||
|
Dim HUE_BLUE As Float
|
||||||
|
Dim HUE_RED As Float
|
||||||
|
Dim HUE_GREEN As Float
|
||||||
|
Private B_AZUL As Button
|
||||||
|
Private B_ROJO As Button
|
||||||
|
Private B_VERDE As Button
|
||||||
|
Private B_TODOS As Button
|
||||||
|
Dim Tienda As String
|
||||||
|
Dim LatitudRu As Double
|
||||||
|
Dim LongitudRU As Double
|
||||||
|
Dim LIST_AZUL As List
|
||||||
|
Dim LIST_ROJO As List
|
||||||
|
Dim LIST_VERDE As List
|
||||||
|
Dim MARK_AZUL As Marker
|
||||||
|
Dim MARK_ROJO As Marker
|
||||||
|
Dim MARK_VERDE As Marker
|
||||||
|
Dim MARK_CEDIS As Marker
|
||||||
|
Dim rojo As String
|
||||||
|
Dim azul As String
|
||||||
|
Dim verde As String
|
||||||
|
Dim todos As String
|
||||||
|
Dim NumSerie As Int
|
||||||
|
Dim OnInfoWindowClickListener1 As OnInfoWindowClickListener
|
||||||
|
Dim GoogleMapEXTRA As GoogleMapsExtras
|
||||||
|
Dim CODIGO As String
|
||||||
|
Private SEMANA As String
|
||||||
|
Private l_version As Label
|
||||||
|
Private EditText1 As EditText
|
||||||
|
Private EditText2 As EditText
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Sub Activity_Create(FirstTime As Boolean)
|
||||||
|
Activity.LoadLayout("MAPA_RUTAS")
|
||||||
|
ruta = File.DirInternal
|
||||||
|
If File.Exists(ruta, "kmt.db") = False Then
|
||||||
|
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
|
||||||
|
End If
|
||||||
|
skmt.Initialize(ruta,"kmt.db", True)
|
||||||
|
'GPS
|
||||||
|
If(FirstTime) Then
|
||||||
|
GPS.Initialize("GPS")
|
||||||
|
End If
|
||||||
|
' l_version.Text = Application.VersionName
|
||||||
|
' l_version.Left = Activity.Width - l_version.Width - 10
|
||||||
|
If MapFragment1.IsGooglePlayServicesAvailable = False Then
|
||||||
|
ToastMessageShow("Please install Google Play Services.", True)
|
||||||
|
End If
|
||||||
|
|
||||||
|
'Boton velocidad'
|
||||||
|
' boton1.Initialize(0)
|
||||||
|
' boton1.Text = 0 &" "&"km/h"
|
||||||
|
' boton1.TextColor = Colors.Red
|
||||||
|
' boton1.TextSize = 15
|
||||||
|
' Activity.AddView(boton1, 40%x, 5dip, 25%x, 40dip)
|
||||||
|
'Fin Boton velocidad'
|
||||||
|
'MARK_CEDIS.IsInitialized
|
||||||
|
MARK_AZUL.IsInitialized
|
||||||
|
MARK_ROJO.IsInitialized
|
||||||
|
MARK_VERDE.IsInitialized
|
||||||
|
|
||||||
|
LIST_AZUL.Initialize
|
||||||
|
LIST_ROJO.Initialize
|
||||||
|
LIST_VERDE.Initialize
|
||||||
|
|
||||||
|
verde = 0
|
||||||
|
azul = 0
|
||||||
|
rojo = 0
|
||||||
|
todos = 1
|
||||||
|
' c=skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA"))
|
||||||
|
' c.Position =0
|
||||||
|
' SEMANA = c.GetString("CUANTOS")
|
||||||
|
' c.Close
|
||||||
|
'
|
||||||
|
' If SEMANA > 0 Then
|
||||||
|
' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SEMANA"))
|
||||||
|
' c.Position =0
|
||||||
|
' SEMANA = c.GetString("CAT_VA_VALOR")
|
||||||
|
' c.Close
|
||||||
|
' End If
|
||||||
|
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Sub MapFragment1_Ready
|
||||||
|
gmap = MapFragment1.GetMap
|
||||||
|
gmap.IsInitialized
|
||||||
|
'todos= 1
|
||||||
|
'permisos
|
||||||
|
rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION)
|
||||||
|
Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
|
||||||
|
gmap.MyLocationEnabled = Result
|
||||||
|
|
||||||
|
Dim JavaMapsObject As JavaObject
|
||||||
|
JavaMapsObject = gmap.GetUiSettings
|
||||||
|
JavaMapsObject.RunMethod("setMapToolbarEnabled", Array As Object(True))
|
||||||
|
|
||||||
|
|
||||||
|
'''''''----------------------------MARKER AZUL - POR VISITAR
|
||||||
|
|
||||||
|
' If azul =1 Or todos = 1 Then
|
||||||
|
' c.IsInitialized
|
||||||
|
' '''''''''VERIFICAR EN QUE TABLA O EN QUE CAMPO NOS LEE LA VENTAS PENDIENTES POR VISITAR
|
||||||
|
'
|
||||||
|
' c=skmt.ExecQuery("select HV_CLIENTE, HV_LONG, HV_LAT from PUNTEO_GPS where HV_CLIENTE IN (select CAT_CL_CODIGO from kmt_info where gestion = 0 AND CAT_CL_NOMBRE <>'VENTA ABORDO') AND HV_LONG IS NOT NULL AND HV_LAT IS NOT NULL AND HV_LONG <> 0 AND HV_LAT <> 0")
|
||||||
|
'
|
||||||
|
' skmt.Initialize(ruta,"kmt.db", True)
|
||||||
|
' For i = 0 To c.RowCount -1
|
||||||
|
' c.Position = i
|
||||||
|
' LatitudRu = c.GetDouble("HV_LAT")
|
||||||
|
' LongitudRU = c.GetDouble("HV_LONG")
|
||||||
|
' CODIGO=c.GetString("HV_CLIENTE")
|
||||||
|
' Cnom=skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = ? ",Array As String(CODIGO))
|
||||||
|
' Cnom.Position = 0
|
||||||
|
' Tienda= Cnom.GetString("CAT_CL_NOMBRE")
|
||||||
|
MARK_AZUL = gmap.AddMarker2(Starter.latitud,Starter.longitud,"UBICACION", gmap.HUE_BLUE)
|
||||||
|
MARK_AZUL.Snippet = "MI UBICACION"
|
||||||
|
|
||||||
|
' Next
|
||||||
|
'
|
||||||
|
' c .Close
|
||||||
|
LIST_AZUL.Add(MARK_AZUL)
|
||||||
|
|
||||||
|
' End If
|
||||||
|
|
||||||
|
' '''''''----------------------------MARKER VERDE - VENTA
|
||||||
|
' If verde =1 Or todos = 1 Then
|
||||||
|
' c2.IsInitialized
|
||||||
|
' '''''''''VERIFICAR EN QUE TABLA O EN QUE CAMPO NOS LEE LA VENTAS
|
||||||
|
' c2=skmt.ExecQuery("select HV_CLIENTE, HV_LONG, HV_LAT from PUNTEO_GPS where HV_CLIENTE IN (select CAT_CL_CODIGO from kmt_info where gestion = 2 AND CAT_CL_NOMBRE <>'VENTA ABORDO') AND HV_LONG IS NOT NULL AND HV_LAT IS NOT NULL AND HV_LONG <> 0 AND HV_LAT <> 0")
|
||||||
|
'
|
||||||
|
'
|
||||||
|
' 'c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 AND CAT_CL_NOMBRE <>'VENTA ABORDO' ")
|
||||||
|
' For i = 0 To c2.RowCount -1
|
||||||
|
' c2.Position = i
|
||||||
|
' LongitudRU = c2.GetDouble("HV_LONG")
|
||||||
|
' LatitudRu = c2.GetDouble("HV_LAT")
|
||||||
|
' CODIGO=c2.GetString("HV_CLIENTE")
|
||||||
|
' Cnom=skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = ? ",Array As String(CODIGO))
|
||||||
|
' Cnom.Position = 0
|
||||||
|
' Tienda= Cnom.GetString("CAT_CL_NOMBRE")
|
||||||
|
' MARK_VERDE = gmap.AddMarker2(LatitudRu,LongitudRU,CODIGO,gmap.HUE_GREEN)
|
||||||
|
' MARK_VERDE.Snippet = Tienda
|
||||||
|
'
|
||||||
|
' Next
|
||||||
|
'
|
||||||
|
' Else
|
||||||
|
' '''''''''VERIFICAR EN QUE TABLA O EN QUE CAMPO NOS LEE LA VENTAS--- ESTE VA IGUAL QUE EL ANTERIOR
|
||||||
|
' If verde =1 Or todos = 1 Then
|
||||||
|
' c2.IsInitialized
|
||||||
|
' c2=skmt.ExecQuery("select HV_CLIENTE, HV_LONG, HV_LAT from PUNTEO_GPS where HV_CLIENTE IN (select CAT_CL_CODIGO from kmt_info where gestion = 2 AND CAT_CL_NOMBRE <>'VENTA ABORDO') AND HV_LONG IS NOT NULL AND HV_LAT IS NOT NULL AND HV_LONG <> 0 AND HV_LAT <> 0")
|
||||||
|
'
|
||||||
|
'
|
||||||
|
' 'c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 AND CAT_CL_NOMBRE <>'VENTA ABORDO' ")
|
||||||
|
' For i = 0 To c2.RowCount -1
|
||||||
|
' c2.Position = i
|
||||||
|
' LongitudRU = c2.GetDouble("HV_LONG")
|
||||||
|
' LatitudRu = c2.GetDouble("HV_LAT")
|
||||||
|
' CODIGO=c2.GetString("HV_CLIENTE")
|
||||||
|
' Cnom=skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = ? ",Array As String(CODIGO))
|
||||||
|
' Cnom.Position = 0
|
||||||
|
' Tienda= Cnom.GetString("CAT_CL_NOMBRE")
|
||||||
|
' MARK_VERDE = gmap.AddMarker2(LatitudRu,LongitudRU,CODIGO,gmap.HUE_GREEN)
|
||||||
|
' MARK_VERDE.Snippet = Tienda
|
||||||
|
' Next
|
||||||
|
' c2 .Close
|
||||||
|
' LIST_VERDE.Add(MARK_VERDE)
|
||||||
|
' End If
|
||||||
|
' End If
|
||||||
|
'
|
||||||
|
'' '''''''----------------------------MARKER ROJO - NO VENTA
|
||||||
|
' '''''''''VERIFICAR EN QUE TABLA O EN QUE CAMPO NOS LEE LAS NO VENTAS
|
||||||
|
' If rojo =1 Or todos = 1 Then
|
||||||
|
' c3.IsInitialized
|
||||||
|
'
|
||||||
|
' c3=skmt.ExecQuery("select HV_CLIENTE, HV_LONG, HV_LAT from PUNTEO_GPS where HV_CLIENTE IN (select CAT_CL_CODIGO from kmt_info where gestion = 3 AND CAT_CL_NOMBRE <>'VENTA ABORDO') AND HV_LONG IS NOT NULL AND HV_LAT IS NOT NULL AND HV_LONG <> 0 AND HV_LAT <> 0")
|
||||||
|
'
|
||||||
|
' 'c3=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 3 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 AND CAT_CL_NOMBRE <>'VENTA ABORDO' ")
|
||||||
|
' For i = 0 To c3.RowCount -1
|
||||||
|
' c3.Position = i
|
||||||
|
' LongitudRU = c3.GetDouble("HV_LONG")
|
||||||
|
' LatitudRu = c3.GetDouble("HV_LAT")
|
||||||
|
' CODIGO=c3.GetString("HV_CLIENTE")
|
||||||
|
' Cnom=skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = ? ",Array As String(CODIGO))
|
||||||
|
' Cnom.Position = 0
|
||||||
|
' Tienda= Cnom.GetString("CAT_CL_NOMBRE")
|
||||||
|
' MARK_ROJO = gmap.AddMarker2(LatitudRu,LongitudRU,Tienda, gmap.HUE_RED)
|
||||||
|
' MARK_ROJO.Snippet = Tienda
|
||||||
|
' Next
|
||||||
|
'
|
||||||
|
' Else
|
||||||
|
' '''''''''VERIFICAR EN QUE TABLA O EN QUE CAMPO NOS LEE LAS NO VENTAS- ESTE VA IGUAL QUE EL ANTERIOR
|
||||||
|
' If rojo =1 Or todos = 1 Then
|
||||||
|
' c3.IsInitialized
|
||||||
|
'
|
||||||
|
' c3=skmt.ExecQuery("select HV_CLIENTE, HV_LONG, HV_LAT from PUNTEO_GPS where HV_CLIENTE IN (select CAT_CL_CODIGO from kmt_info where gestion = 3 AND CAT_CL_NOMBRE <>'VENTA ABORDO') AND HV_LONG IS NOT NULL AND HV_LAT IS NOT NULL AND HV_LONG <> 0 AND HV_LAT <> 0")
|
||||||
|
'
|
||||||
|
' For i = 0 To c3.RowCount -1
|
||||||
|
' c3.Position = i
|
||||||
|
' LongitudRU = c3.GetDouble("HV_LONG")
|
||||||
|
' LatitudRu = c3.GetDouble("HV_LAT")
|
||||||
|
' CODIGO=c3.GetString("HV_CLIENTE")
|
||||||
|
' Cnom=skmt.ExecQuery2("select CAT_CL_CODIGO,CAT_CL_NOMBRE from kmt_info where CAT_CL_CODIGO = ? ",Array As String(CODIGO))
|
||||||
|
' Cnom.Position = 0
|
||||||
|
' Tienda= Cnom.GetString("CAT_CL_NOMBRE")
|
||||||
|
' MARK_ROJO = gmap.AddMarker2(LatitudRu,LongitudRU,Tienda, gmap.HUE_RED)
|
||||||
|
' MARK_ROJO.Snippet = Tienda
|
||||||
|
' Next
|
||||||
|
' LIST_ROJO.Add(MARK_ROJO)
|
||||||
|
' c3.Close
|
||||||
|
' End If
|
||||||
|
' End If
|
||||||
|
' ''------------------------------
|
||||||
|
'
|
||||||
|
'' MARK_CEDIS = gmap.AddMarker3("19.3961802","-99.0784293","CEDIS", LoadBitmap(File.DirAssets, "marker-azul-0.png"))
|
||||||
|
'' If MARK_VERDE.Visible Or MARK_ROJO.Visible Then
|
||||||
|
'' MARK_CEDIS.Remove
|
||||||
|
'' End If
|
||||||
|
Dim aa As CameraPosition
|
||||||
|
aa.Initialize(Starter.latitud,Starter.longitud,17)''' RECOMENDABLE CAMBIAR A 10 PARA QUE SE VEAN MAS MARCADORES
|
||||||
|
gmap.AnimateCamera(aa)
|
||||||
|
EditText1.Text= Starter.latitud
|
||||||
|
EditText2.Text= Starter.longitud
|
||||||
|
'''''---------------------- ESTO ES PARA LOS CLICK EN LAS VENTANAS DE INFORMACION-----------
|
||||||
|
Dim OnInfoWindowClickListener1 As OnInfoWindowClickListener
|
||||||
|
OnInfoWindowClickListener1.Initialize("OnInfoWindowClickListener1")
|
||||||
|
GoogleMapEXTRA.SetOnInfoWindowClickListener(gmap, OnInfoWindowClickListener1)
|
||||||
|
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Sub OnInfoWindowClickListener1_click(Marker1 As Marker)
|
||||||
|
' skmt.ExecNonQuery("delete from CUENTAA")
|
||||||
|
' skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?) ", Array As Object(Marker1.Title))
|
||||||
|
' StartActivity(fila)
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
Sub GPS_LocationChanged (Parametro As Location)
|
||||||
|
MARK_CEDIS.IsInitialized
|
||||||
|
' Dim sp As Int
|
||||||
|
' sp = Ceil(Parametro.Speed * 3.6)
|
||||||
|
' boton1.Text = sp &" "&"km/h"
|
||||||
|
' Latitud = Parametro.Latitude
|
||||||
|
' Longitud = Parametro.Longitude
|
||||||
|
' p2.Initialize2(Latitud,Longitud)
|
||||||
|
' p1.Initialize2(Lat2, Lon2)
|
||||||
|
' Distance = p1.DistanceTo(p2)
|
||||||
|
' If Latitud <> 0 And Longitud <> 0 Then
|
||||||
|
' If Distance > 10 Then
|
||||||
|
' Lat2 = Latitud
|
||||||
|
' Lon2 = Longitud
|
||||||
|
' Dim cp As CameraPosition
|
||||||
|
' cp.Initialize2(Parametro.Latitude, Parametro.Longitude, gmap.CameraPosition.Zoom, Parametro.Bearing, 0)
|
||||||
|
' gmap.AnimateCamera(cp)
|
||||||
|
' End If
|
||||||
|
' End If
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Sub Activity_Resume
|
||||||
|
|
||||||
|
If GPS.GPSEnabled = False Then
|
||||||
|
ToastMessageShow("Debe Activar el GPS del Equipo.", True)
|
||||||
|
StartActivity(GPS.LocationSettingsIntent)
|
||||||
|
Else
|
||||||
|
GPS.Start(0, 0)
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
Sub Activity_Pause (UserClosed As Boolean)
|
||||||
|
GPS.Stop
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
|
'Sub B_TODOS_Click
|
||||||
|
' todos =1
|
||||||
|
' verde = 0
|
||||||
|
' azul = 0
|
||||||
|
' rojo = 0
|
||||||
|
'
|
||||||
|
' MapFragment1_Ready
|
||||||
|
'
|
||||||
|
'End Sub
|
||||||
|
'
|
||||||
|
'Sub B_VERDE_Click
|
||||||
|
' verde = 1
|
||||||
|
' azul = 0
|
||||||
|
' rojo = 0
|
||||||
|
' todos = 0
|
||||||
|
' gmap.Clear
|
||||||
|
' MapFragment1_Ready
|
||||||
|
'
|
||||||
|
'End Sub
|
||||||
|
'
|
||||||
|
'Sub B_ROJO_Click
|
||||||
|
' rojo = 1
|
||||||
|
' verde = 0
|
||||||
|
' azul = 0
|
||||||
|
' todos = 0
|
||||||
|
' gmap.Clear
|
||||||
|
'
|
||||||
|
' MapFragment1_Ready
|
||||||
|
'
|
||||||
|
'End Sub
|
||||||
|
'
|
||||||
|
'Sub B_AZUL_Click
|
||||||
|
' azul = 1
|
||||||
|
' verde = 0
|
||||||
|
' rojo = 0
|
||||||
|
' todos = 0
|
||||||
|
' gmap.Clear
|
||||||
|
'
|
||||||
|
' MapFragment1_Ready
|
||||||
|
'
|
||||||
|
'End Sub
|
||||||
@@ -14,7 +14,7 @@ Sub Process_Globals
|
|||||||
'These variables can be accessed from all modules.
|
'These variables can be accessed from all modules.
|
||||||
Public rp As RuntimePermissions
|
Public rp As RuntimePermissions
|
||||||
Dim reqManager As DBRequestManager
|
Dim reqManager As DBRequestManager
|
||||||
Dim DBReqServer As String = "http://keymon.lat:1783" '"http://keymon.lat:1782" "http://10.0.0.205:1782" ""' CAMBIAR HACIA AFUERA O DENTRO DE LA OFNA
|
Dim DBReqServer As String = "http://keymon.net:1783" '"http://keymon.lat:1782" "http://10.0.0.205:1782" ""' CAMBIAR HACIA AFUERA O DENTRO DE LA OFNA
|
||||||
Dim rutaBD As String = File.DirInternal
|
Dim rutaBD As String = File.DirInternal
|
||||||
Dim skmt As SQL
|
Dim skmt As SQL
|
||||||
Dim almacen As String
|
Dim almacen As String
|
||||||
@@ -39,9 +39,6 @@ Sub Process_Globals
|
|||||||
Dim horacomin As String
|
Dim horacomin As String
|
||||||
Dim horacomout As String
|
Dim horacomout As String
|
||||||
Dim trabaja As Int
|
Dim trabaja As Int
|
||||||
'Para los Logs
|
|
||||||
Dim logs As StringBuilder
|
|
||||||
Private logcat As LogCat
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub Service_Create
|
Sub Service_Create
|
||||||
@@ -64,19 +61,8 @@ Sub Service_TaskRemoved
|
|||||||
Timer1.Enabled = False
|
Timer1.Enabled = False
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'Return true to allow the OS default exceptions handler to handle the uncaught exception. 'Para los Logs
|
'Return true to allow the OS default exceptions handler to handle the uncaught exception.
|
||||||
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
|
Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
|
||||||
'wait for 500ms to allow the logs to be updated.
|
|
||||||
Log(">>>>>>>>> ERROR")
|
|
||||||
Dim jo As JavaObject
|
|
||||||
Dim l As Long = 500: jo.InitializeStatic("java.lang.Thread").RunMethod("sleep", Array(l)) 'Sleep 500ms
|
|
||||||
logcat.LogCatStop
|
|
||||||
logs.Initialize
|
|
||||||
logs.Append(Application.LabelName & " Ver " & Application.VersionName & CRLF)
|
|
||||||
logs.Append(StackTrace)
|
|
||||||
Subs.revisaBD
|
|
||||||
Subs.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (Subs.fechaKMT(DateTime.now), logs))
|
|
||||||
StartActivity(errorManager)
|
|
||||||
Return True
|
Return True
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
@@ -84,6 +70,7 @@ Sub Service_Destroy
|
|||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|
||||||
Private Sub Timer1_Tick
|
Private Sub Timer1_Tick
|
||||||
' ToastMessageShow("Timer",False)
|
' ToastMessageShow("Timer",False)
|
||||||
' If logger Then Log("Siguiente actuaizacion " & DateTime.Time(DateTime.Now + Interval * 1000))
|
' If logger Then Log("Siguiente actuaizacion " & DateTime.Time(DateTime.Now + Interval * 1000))
|
||||||
@@ -114,8 +101,8 @@ Sub ENVIA_ULTIMA_GPS 'ignore
|
|||||||
If bateria = 0 Then bateria = 100
|
If bateria = 0 Then bateria = 100
|
||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "insert_ubicaprom_GABICO"
|
cmd.Name = "insert_ubicaprom_GABICO_2"
|
||||||
cmd.Parameters = Array As Object(sDate &" " &sTime, B4XPages.MainPage.login.user, latitud,longitud,B4XPages.MainPage.principal.bateria,almacen,B4XPages.MainPage.login.nom_proyec,B4XPages.MainPage.login.sucursal,B4XPages.MainPage.login.suc_nom)
|
cmd.Parameters = Array As Object(sDate &" " &sTime, B4XPages.MainPage.login.user, latitud,longitud,B4XPages.MainPage.principal.bateria,almacen,B4XPages.MainPage.login.nom_proyec,B4XPages.MainPage.login.sucursal,B4XPages.MainPage.login.suc_nom,Application.VersionName,B4XPages.MainPage.login.tipoenvio)
|
||||||
' cmd.Parameters = Array As Object(sDate &" " &sTime, " ", latitud,longitud," ",almacen," "," "," ")
|
' cmd.Parameters = Array As Object(sDate &" " &sTime, " ", latitud,longitud," ",almacen," "," "," ")
|
||||||
reqManager.ExecuteCommand(cmd,"inst_GESTION_GPS")
|
reqManager.ExecuteCommand(cmd,"inst_GESTION_GPS")
|
||||||
|
|
||||||
|
|||||||
37
B4A/Subs.bas
37
B4A/Subs.bas
@@ -9,7 +9,7 @@ Version=11.8
|
|||||||
Sub Process_Globals
|
Sub Process_Globals
|
||||||
'These global variables will be declared once when the application starts.
|
'These global variables will be declared once when the application starts.
|
||||||
'These variables can be accessed from all modules.
|
'These variables can be accessed from all modules.
|
||||||
Dim errorLog As SQL 'Requiere la libreria "SQL"
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub revisaBD 'ignore
|
Sub revisaBD 'ignore
|
||||||
@@ -23,24 +23,6 @@ Sub revisaBD 'ignore
|
|||||||
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_SUPERVISOR(HIST_CHKS_PROYECTO TEXT, HIST_CHKS_NOMPROY TEXT, HIST_CHKS_SUCURSAL TEXT,HIST_CHKS_FORMATO TEXT, HIST_CHKS_SUPERVISOR TEXT, HIST_CHKS_PROMOTOR TEXT, HIST_CHKS_FECHA TEXT, HIST_CHKS_ID TEXT, HIST_CHKS_CALIF_MULTIPLE TEXT, HIST_CHKS_CALIF_ABIERTA TEXT, HIST_CHKS_HORARIO TEXT, ENVIADO INT)")
|
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_SUPERVISOR(HIST_CHKS_PROYECTO TEXT, HIST_CHKS_NOMPROY TEXT, HIST_CHKS_SUCURSAL TEXT,HIST_CHKS_FORMATO TEXT, HIST_CHKS_SUPERVISOR TEXT, HIST_CHKS_PROMOTOR TEXT, HIST_CHKS_FECHA TEXT, HIST_CHKS_ID TEXT, HIST_CHKS_CALIF_MULTIPLE TEXT, HIST_CHKS_CALIF_ABIERTA TEXT, HIST_CHKS_HORARIO TEXT, ENVIADO INT)")
|
||||||
' Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS HIST_SUPERVISOR")
|
' Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS HIST_SUPERVISOR")
|
||||||
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS trabaja(sitrabaja TEXT)")
|
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS trabaja(sitrabaja TEXT)")
|
||||||
If Not(errorLog.IsInitialized) Then errorLog.Initialize(File.DirInternal, "errorLog.db", True)
|
|
||||||
errorLog.ExecNonQuery("CREATE TABLE IF NOT EXISTS errores(fecha INTEGER, error TEXT)")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Limpiamos la tabla errorLog de la BD
|
|
||||||
Sub deleteErrorLog_DB 'ignore
|
|
||||||
errorLog.ExecNonQuery("delete from errores")
|
|
||||||
errorLog.ExecNonQuery("vacuum;")
|
|
||||||
ToastMessageShow("BD Errores Borrada", False)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Borramos renglones extra de la tabla de errores
|
|
||||||
Sub borraArribaDe100Errores 'ignore
|
|
||||||
revisaBD
|
|
||||||
LogColor("Borramos BD de log", Colors.Magenta)
|
|
||||||
errorLog.ExecNonQuery("DELETE FROM errores WHERE fecha NOT in (SELECT fecha FROM errores ORDER BY fecha desc LIMIT 99 )")
|
|
||||||
errorLog.ExecNonQuery("vacuum;")
|
|
||||||
Log("Borramos mas de 100 de errorLog")
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'Genera una notificacion con importancia alta
|
'Genera una notificacion con importancia alta
|
||||||
@@ -69,12 +51,6 @@ Sub notiLowReturn(title As String, Body As String, id As Int) As Notification 'i
|
|||||||
notification.Notify(id)
|
notification.Notify(id)
|
||||||
' Log("notiLowReturn SetInfo")
|
' Log("notiLowReturn SetInfo")
|
||||||
Return notification
|
Return notification
|
||||||
|
|
||||||
' java.lang.SecurityException: Starting FGS with Type location callerApp=ProcessRecord{d39abd3 32668:gabinete.keymon.lat/u0a261}
|
|
||||||
' targetSDK=34 requires permissions: all of the permissions allOf=True [android.permission.FOREGROUND_SERVICE_LOCATION]
|
|
||||||
' any of the permissions allOf=False [android.permission.ACCESS_COARSE_LOCATION, android.permission.ACCESS_FINE_LOCATION]
|
|
||||||
' And the app must be in the eligible state/exemptions To access the foreground only permission
|
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub IsConnectedToInternet As Boolean 'ignore
|
Sub IsConnectedToInternet As Boolean 'ignore
|
||||||
@@ -88,15 +64,4 @@ Sub IsConnectedToInternet As Boolean 'ignore
|
|||||||
End If
|
End If
|
||||||
' If logger Then LogColor("Not connected", Colors.red)
|
' If logger Then LogColor("Not connected", Colors.red)
|
||||||
Return False
|
Return False
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Convierte una fecha al formato yyMMddHHmmss
|
|
||||||
Sub fechaKMT(fecha As String) As String 'ignore
|
|
||||||
' Log(fecha)
|
|
||||||
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format
|
|
||||||
DateTime.DateFormat="yyMMddHHmmss"
|
|
||||||
Dim nuevaFecha As String=DateTime.Date(fecha)
|
|
||||||
DateTime.DateFormat=OrigFormat 'return to orig date format
|
|
||||||
' Log(nuevaFecha)
|
|
||||||
Return nuevaFecha
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -58,8 +58,8 @@ Sub Service_Create
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub flp_ConnectionSuccess
|
Sub flp_ConnectionSuccess
|
||||||
' If logger Then Log("Connected to location provider")
|
If logger Then Log("Connected to location provider")
|
||||||
'FLP.GetLastKnownLocation
|
FLP.GetLastKnownLocation
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub flp_ConnectionFailed(ConnectionResult1 As Int)
|
Sub flp_ConnectionFailed(ConnectionResult1 As Int)
|
||||||
|
|||||||
@@ -1,167 +0,0 @@
|
|||||||
B4A=true
|
|
||||||
Group=Default Group
|
|
||||||
ModulesStructureVersion=1
|
|
||||||
Type=Activity
|
|
||||||
Version=10.2
|
|
||||||
@EndOfDesignText@
|
|
||||||
#Region Activity Attributes
|
|
||||||
#FullScreen: False
|
|
||||||
#IncludeTitle: True
|
|
||||||
#End Region
|
|
||||||
'******************************************************************************
|
|
||||||
'Este modulo intercepta los errores de la aplicación mediante "Starter.Application_Error" y muestra una pantalla
|
|
||||||
'con el log del error y lo manda al servidor con un query de DBRequestManager, se necesita que exista el query
|
|
||||||
'en el "config.properties" llamado "guardaErrores" y que tenga el siguiente texto:
|
|
||||||
'
|
|
||||||
'sql.guardaErrores=INSERT INTO KELLOGGS.PUSH_INFO (ID, RUTA, FECHA, DATOS) VALUES((?),(?),(?),(?))
|
|
||||||
'
|
|
||||||
'Agregar estas lineas a "Starter.Process_Globals"
|
|
||||||
' 'Para los Logs
|
|
||||||
' Dim logs As StringBuilder
|
|
||||||
' Private logcat As LogCat
|
|
||||||
'
|
|
||||||
'Agregar estas lineas a "Starter.Service_Create"
|
|
||||||
' 'Para los Logs
|
|
||||||
' #if RELEASE
|
|
||||||
' logcat.LogCatStart(Array As String("-v","raw","*:F","B4A:v"), "logcat")
|
|
||||||
' #end if
|
|
||||||
' logs.Initialize
|
|
||||||
'
|
|
||||||
'Agregar este Sub a "Starter"
|
|
||||||
'
|
|
||||||
'Return true to allow the OS default exceptions handler to handle the uncaught exception. 'Para los Logs
|
|
||||||
'Sub Application_Error (Error As Exception, StackTrace As String) As Boolean
|
|
||||||
' 'wait for 500ms to allow the logs to be updated.
|
|
||||||
' Dim jo As JavaObject
|
|
||||||
' Dim l As Long = 500: jo.InitializeStatic("java.lang.Thread").RunMethod("sleep", Array(l)) 'Sleep 500ms
|
|
||||||
' logcat.LogCatStop
|
|
||||||
' logs.Append(StackTrace)
|
|
||||||
' Subs.revisaBD
|
|
||||||
' Subs.errorLog.ExecNonQuery2("INSERT INTO errores(fecha, error) VALUES (?,?)", Array As Object (Subs.fechaKMT(DateTime.now), logs))
|
|
||||||
' StartActivity(errorManager)
|
|
||||||
' Return True
|
|
||||||
'End Sub
|
|
||||||
'******************************************************************************
|
|
||||||
|
|
||||||
Sub Process_Globals
|
|
||||||
'These global variables will be declared once when the application starts.
|
|
||||||
'These variables can be accessed from all modules.
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub Globals
|
|
||||||
'These global variables will be redeclared each time the activity is created.
|
|
||||||
'These variables can only be accessed from this module.
|
|
||||||
' Dim errorLog As SQL
|
|
||||||
Dim c As Cursor
|
|
||||||
Private p_principal As Panel
|
|
||||||
Private l_titulo As Label
|
|
||||||
Private svScroll As ScrollView
|
|
||||||
Private etText As EditText
|
|
||||||
Private c_continuar As Button
|
|
||||||
Private p_botones As Panel
|
|
||||||
Private b_salir As Button
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub Activity_Create(FirstTime As Boolean)
|
|
||||||
'Do not forget to load the layout file created with the visual designer. For example:
|
|
||||||
Activity.LoadLayout("errorManager")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub Activity_Resume
|
|
||||||
Dim elError As String = ""
|
|
||||||
Dim laFecha As String = ""
|
|
||||||
' svScroll.Initialize(500dip)
|
|
||||||
' Activity.AddView(svScroll, 0, 300, 100%x, 80%y)
|
|
||||||
p_principal.Height = Activity.Height
|
|
||||||
p_principal.Width = Activity.Width
|
|
||||||
svScroll.Width = Round(p_principal.Width * 0.9)
|
|
||||||
svScroll.Left = Round(p_principal.Width/2)-Round(svScroll.Width/2)
|
|
||||||
p_botones.Left = Round(p_principal.Width/2)-Round(p_botones.Width/2)
|
|
||||||
p_botones.Top = Activity.Height - (p_botones.Height + 80)
|
|
||||||
etText.Initialize("")
|
|
||||||
svScroll.Panel.AddView(etText, 0, 0, 90%x, 80%y)
|
|
||||||
etText.InputType = etText.INPUT_TYPE_NONE
|
|
||||||
etText.Gravity = Gravity.TOP
|
|
||||||
etText.SingleLine = False
|
|
||||||
etText.Wrap = False
|
|
||||||
' Dim lblText, edtText As StringBuilder
|
|
||||||
Dim lbl As Label
|
|
||||||
lbl.Initialize("")
|
|
||||||
Activity.AddView(lbl, 0, 300, 100%x, 100%y) 'ignore
|
|
||||||
etText.Text = ""
|
|
||||||
Subs.revisaBD
|
|
||||||
c = Subs.errorLog.ExecQuery("select * from errores order by fecha desc limit 1")
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position = 0
|
|
||||||
elError = c.GetString("error")
|
|
||||||
laFecha = c.GetString("fecha")
|
|
||||||
etText.Text = elError
|
|
||||||
End If
|
|
||||||
c.Close
|
|
||||||
Dim usuario As String = "XXXXX"
|
|
||||||
' c = Starter.skmt.ExecQuery("select usuario from usuarioa")
|
|
||||||
' If c.RowCount > 0 Then
|
|
||||||
' c.Position = 0
|
|
||||||
' usuario = c.GetString("USUARIO")
|
|
||||||
' End If
|
|
||||||
|
|
||||||
' Log("++++++" & Starter.logsStr)
|
|
||||||
' etText.Text = etText.Text & Starter.logsStr
|
|
||||||
' lbl.TextSize = etText.TextSize
|
|
||||||
' lbl.Text = etText.Text
|
|
||||||
' Dim su As StringUtils
|
|
||||||
' Dim edheight As Int = su.MeasureMultilineTextHeight(lbl, lbl.Text)
|
|
||||||
' lbl.RemoveView
|
|
||||||
' etText.Height = edheight
|
|
||||||
' svScroll.Panel.Height = edheight
|
|
||||||
svScroll.Height = Round(Activity.Height * 0.9)
|
|
||||||
' Log(edheight)
|
|
||||||
|
|
||||||
Dim cmd As DBCommand
|
|
||||||
cmd.Initialize
|
|
||||||
cmd.Name = "guardaErrores"
|
|
||||||
cmd.Parameters = Array As Object(laFecha, usuario, laFecha, elError)
|
|
||||||
Log($"Mandamos: ${Subs.fechaKMT(DateTime.Now)}, |${usuario}|, ${Subs.fechaKMT(DateTime.Now)}"$)
|
|
||||||
Starter.reqManager.ExecuteCommand(cmd,"guardaErrores")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub Activity_Pause (UserClosed As Boolean)
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub JobDone(Job As HttpJob)
|
|
||||||
Log("errorManager - JobDone")
|
|
||||||
If Job.Success = False Then
|
|
||||||
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
|
||||||
Else
|
|
||||||
LogColor("JobDone: '" & Starter.reqManager.HandleJob(Job).tag & "' - Registros: " & Starter.reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211110
|
|
||||||
If Job.JobName = "DBRequest" Then
|
|
||||||
Dim result As DBResult = Starter.reqManager.HandleJob(Job)
|
|
||||||
If result.Tag = "guardaErrores" Then 'query tag
|
|
||||||
For Each records() As Object In result.Rows
|
|
||||||
For Each k As String In result.Columns.Keys
|
|
||||||
Log("GuardaErrores: " & k & ": " & records(result.Columns.Get(k)))
|
|
||||||
Next
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Job.Release
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub c_continuar_Click
|
|
||||||
' Subs.iniciaActividad("Principal")
|
|
||||||
' B4XPages.ShowPage("Principal")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub b_salir_Click
|
|
||||||
cierraActividades
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub cierraActividades
|
|
||||||
Log("closing activities")
|
|
||||||
Dim jo As JavaObject
|
|
||||||
jo.InitializeContext
|
|
||||||
jo.RunMethod("finishAffinity", Null)
|
|
||||||
End Sub
|
|
||||||
145
B4A/login.bas
145
B4A/login.bas
@@ -39,7 +39,8 @@ Sub Class_Globals
|
|||||||
Dim horacomout As String
|
Dim horacomout As String
|
||||||
Private p_adorno As Panel
|
Private p_adorno As Panel
|
||||||
Private l_version As Label
|
Private l_version As Label
|
||||||
|
Public rp As RuntimePermissions
|
||||||
|
Dim tipoenvio As String
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'You can add more parameters here.
|
'You can add more parameters here.
|
||||||
@@ -58,6 +59,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub B4XPage_Appear
|
Sub B4XPage_Appear
|
||||||
|
|
||||||
If Starter.muestraProgreso = 1 Then
|
If Starter.muestraProgreso = 1 Then
|
||||||
muestraProgreso("Descargando actualización")
|
muestraProgreso("Descargando actualización")
|
||||||
Starter.muestraProgreso = 0
|
Starter.muestraProgreso = 0
|
||||||
@@ -68,7 +70,7 @@ Sub B4XPage_Appear
|
|||||||
p_adorno.Width = Root.Width * 0.85
|
p_adorno.Width = Root.Width * 0.85
|
||||||
p_adorno.Height = Root.Height * 0.80
|
p_adorno.Height = Root.Height * 0.80
|
||||||
Log("inicio1")
|
Log("inicio1")
|
||||||
' StartService(Tracker)
|
StartService(Tracker)
|
||||||
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
|
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
|
||||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||||
If Result Then
|
If Result Then
|
||||||
@@ -78,7 +80,8 @@ Sub B4XPage_Appear
|
|||||||
ToastMessageShow("Sin permisos para GPS", True)
|
ToastMessageShow("Sin permisos para GPS", True)
|
||||||
End If
|
End If
|
||||||
Log(Result)
|
Log(Result)
|
||||||
|
Log("latitud " &Starter.latitud)
|
||||||
|
Log("longitud " &Starter.longitud)
|
||||||
' Dim p As Period
|
' Dim p As Period
|
||||||
' p.Days = 0
|
' p.Days = 0
|
||||||
' p.Hours = 0
|
' p.Hours = 0
|
||||||
@@ -102,6 +105,8 @@ Sub B4XPage_Appear
|
|||||||
' Else If EsDomingo(newDate) Then
|
' Else If EsDomingo(newDate) Then
|
||||||
' Log("¡Hoy es Domingo!")
|
' Log("¡Hoy es Domingo!")
|
||||||
' End If
|
' End If
|
||||||
|
Log(Starter.latitud)
|
||||||
|
Log(Starter.longitud)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub b_inicio_Click
|
Private Sub b_inicio_Click
|
||||||
@@ -119,10 +124,6 @@ Private Sub b_inicio_Click
|
|||||||
' B4XPages.ShowPage ("Principal")
|
' B4XPages.ShowPage ("Principal")
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub b_inicio_LongClick
|
|
||||||
Private X As Int = "A"
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub JobDone (Job As HttpJob)
|
Sub JobDone (Job As HttpJob)
|
||||||
If Job.Success = False Then
|
If Job.Success = False Then
|
||||||
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
||||||
@@ -134,7 +135,7 @@ Sub JobDone (Job As HttpJob)
|
|||||||
If result.Tag = "usuario" Then 'query tag
|
If result.Tag = "usuario" Then 'query tag
|
||||||
For Each records() As Object In result.Rows
|
For Each records() As Object In result.Rows
|
||||||
For Each k As String In result.Columns.Keys
|
For Each k As String In result.Columns.Keys
|
||||||
' Log(result.Tag & ": " & k & ": " & records(result.Columns.Get(k)))
|
Log(result.Tag & ": " & k & ": " & records(result.Columns.Get(k)))
|
||||||
Next
|
Next
|
||||||
If records(result.Columns.Get ("USUARIO")) = "OKActivo" Then
|
If records(result.Columns.Get ("USUARIO")) = "OKActivo" Then
|
||||||
Starter.almacen = records(result.Columns.Get ("CAT_LO_AGENCIA"))
|
Starter.almacen = records(result.Columns.Get ("CAT_LO_AGENCIA"))
|
||||||
@@ -173,23 +174,28 @@ Sub JobDone (Job As HttpJob)
|
|||||||
Log(Starter.trabaja)
|
Log(Starter.trabaja)
|
||||||
If Starter.trabaja = 1 Then
|
If Starter.trabaja = 1 Then
|
||||||
If perfil = 3 Then
|
If perfil = 3 Then
|
||||||
|
tipoenvio = "Ingreso"
|
||||||
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
||||||
B4XPages.ShowPage("Principal")
|
B4XPages.ShowPage("Principal")
|
||||||
' Log("AQUI ANDO")
|
Log("AQUI ANDO")
|
||||||
Else If perfil = 2 Then
|
Else If perfil = 2 Then
|
||||||
|
tipoenvio = "Ingreso"
|
||||||
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
CallSubDelayed(Starter,"ENVIA_ULTIMA_GPS")
|
||||||
' Log("AQUI ACA")
|
Log("AQUI ACA")
|
||||||
B4XPages.ShowPage("Supervisor")
|
B4XPages.ShowPage("Supervisor")
|
||||||
End If
|
End If
|
||||||
Else If Starter.trabaja = 0 Then
|
Else If Starter.trabaja = 0 Then
|
||||||
B4XPages.ShowPage("Principal")
|
|
||||||
MsgboxAsync("Hoy es día de descanso","Atención")
|
MsgboxAsync("Hoy es día de descanso","Atención")
|
||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
|
' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub B4XPage_CloseRequest As ResumableSub
|
Private Sub B4XPage_CloseRequest As ResumableSub
|
||||||
@@ -198,6 +204,7 @@ Private Sub B4XPage_CloseRequest As ResumableSub
|
|||||||
Else
|
Else
|
||||||
B4XPages.ShowPage("login")
|
B4XPages.ShowPage("login")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
' Return True
|
' Return True
|
||||||
Return False
|
Return False
|
||||||
End Sub
|
End Sub
|
||||||
@@ -205,10 +212,12 @@ End Sub
|
|||||||
Private Sub ImageView5_Click
|
Private Sub ImageView5_Click
|
||||||
p_configuracion.Visible = True
|
p_configuracion.Visible = True
|
||||||
lv_server.Clear
|
lv_server.Clear
|
||||||
lv_server.AddSingleLine("http://keymon.lat:1783")
|
lv_server.AddSingleLine("http://keymon.net:1783")
|
||||||
If et_user.Text = "KMTS1" Then lv_server.AddSingleLine("http://11.0.0.196:1783")
|
If et_user.Text = "KMTS1" Then lv_server.AddSingleLine("http://11.0.0.196:1783")
|
||||||
' l_server.Text = Starter.server
|
' l_server.Text = Starter.server
|
||||||
et_server.Text = Starter.DBReqServer
|
et_server.Text = Starter.DBReqServer
|
||||||
|
Log("latitud " &Starter.latitud)
|
||||||
|
Log("longitud " &Starter.longitud)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub p_configuracion_Click
|
Private Sub p_configuracion_Click
|
||||||
@@ -285,108 +294,10 @@ Sub notiLowReturn(title As String, Body As String, id As Int) As Notification 'i
|
|||||||
Return notification
|
Return notification
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'' Función para verificar si la fecha actual es un lunes
|
Private Sub b_cambiaubi_Click
|
||||||
'Sub EsLunes(fecha As Long) As Boolean
|
rp.CheckAndRequest(rp.PERMISSION_ACCESS_FINE_LOCATION)
|
||||||
' ' Crear un objeto Calendar
|
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
||||||
' Dim cal As JavaObject
|
If Result Then
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
StartActivity(MAPA_RUTAS)
|
||||||
'
|
End If
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
End Sub
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 2
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub EsMartes(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 3
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub EsMiercoles(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 4
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub Esjueves(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 5
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub Esviernes(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 6
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub Essabado(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 7
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub EsDomingo(fecha As Long) As Boolean
|
|
||||||
' ' Crear un objeto Calendar
|
|
||||||
' Dim cal As JavaObject
|
|
||||||
' cal.InitializeNewInstance("java.util.GregorianCalendar", Null)
|
|
||||||
'
|
|
||||||
' ' Establecer la fecha actual en el objeto Calendar
|
|
||||||
' cal.RunMethod("setTimeInMillis", Array(fecha))
|
|
||||||
'
|
|
||||||
' ' Obtener el día de la semana (1 para domingo, 2 para lunes, ..., 7 para sábado)
|
|
||||||
' Dim diaSemana As Int = cal.RunMethod("get", Array(7))
|
|
||||||
'
|
|
||||||
' ' Verificar si es lunes (día de la semana = 2)
|
|
||||||
' Return diaSemana = 1
|
|
||||||
'End Sub
|
|
||||||
Reference in New Issue
Block a user