Files
Intmex_Reparto_Vieja/intmex_reparto.b4a
Jose Alberto Guerra Ugalde a533f7b8e3 - VERSION 5.06.13.1
- Se cambio el SDK a 28 para que corra en Android 15.
- Se puso el nuevo servidor.
- Se corrigio que no guardaba el servidor.
2025-06-13 22:27:31 -06:00

464 lines
18 KiB
Plaintext

Build1=Default,intmex_rep.keymon.com.mx,HU2_PUBLIC
File1=alert2.png
File10=foto.bal
File11=guardagestion.bal
File12=guna_viejo.png
File13=guna_viejo2.png
File14=info_gral.bal
File15=infonavit1.jpg
File16=intmex_logo_192x192.jpg
File17=itembuttonblue.png
File18=kelloggs.png
File19=keymon_logo.png
File2=alerta.jpg
File20=kmt.db
File21=login.bal
File22=LOGO SANFER.jpg
File23=Logo.jpg
File24=logo_exitus1.jpg
File25=Malo.jpg
File26=mapa.bal
File27=mapa_cliente.bal
File28=mapa_rutas.bal
File29=nopago.bal
File3=buscar.bal
File30=nuevocliente.bal
File31=pedido.bal
File32=planfia_logo.png
File33=planfia_logo_old.png
File34=planfia_logo_old2.png
File35=productos.bal
File36=profina.jpg
File37=PROFINA.png
File38=seleccion.bal
File39=sync.png
File4=dbc.png
File40=tarjeta.bal
File41=telefonos.bal
File5=detalle_promo.bal
File6=durakelo1.png
File7=engrane.jpg
File8=fila.bal
File9=fondo_kmt.jpg
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup11=Default Group
FileGroup12=Default Group
FileGroup13=Default Group
FileGroup14=Default Group
FileGroup15=Default Group
FileGroup16=Default Group
FileGroup17=Default Group
FileGroup18=Default Group
FileGroup19=Default Group
FileGroup2=Default Group
FileGroup20=Default Group
FileGroup21=Default Group
FileGroup22=Default Group
FileGroup23=Default Group
FileGroup24=Default Group
FileGroup25=Default Group
FileGroup26=Default Group
FileGroup27=Default Group
FileGroup28=Default Group
FileGroup29=Default Group
FileGroup3=Default Group
FileGroup30=Default Group
FileGroup31=Default Group
FileGroup32=Default Group
FileGroup33=Default Group
FileGroup34=Default Group
FileGroup35=Default Group
FileGroup36=Default Group
FileGroup37=Default Group
FileGroup38=Default Group
FileGroup39=Default Group
FileGroup4=Default Group
FileGroup40=Default Group
FileGroup41=Default Group
FileGroup5=Default Group
FileGroup6=Default Group
FileGroup7=Default Group
FileGroup8=Default Group
FileGroup9=Default Group
Group=Default Group
Library1=b4xcollections
Library10=gps
Library11=javaobject
Library12=json
Library13=okhttputils2
Library14=phone
Library15=randomaccessfile
Library16=reflection
Library17=runtimepermissions
Library18=serial
Library19=sql
Library2=baqrcode
Library20=togglelibrary
Library21=zxing_scanner
Library22=fileprovider
Library3=byteconverter
Library4=camera
Library5=compressstrings
Library6=core
Library7=fusedlocationprovider
Library8=googlemaps
Library9=googlemapsextras
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: http://www.basic4ppc.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="29"/>~\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~'End of default text.~\n~~\n~''''' CAMBIA LA CLAVE API~\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~'End of default text.~\n~ ~\n~ '''''''''''PUSH~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText(<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:maxSdkVersion="23" />)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" android:maxSdkVersion="23" />)~\n~AddManifestText(<uses-permission android:name="android.permission.READ_PHONE_STATE" android:maxSdkVersion="19" />)~\n~AddManifestText(<uses-permission android:name="android.permission.READ_PRIVILEGED_PHONE_STATE" android:maxSdkVersion="19" />~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~AddManifestText(<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />)~\n~'/////////////// FLP y FBMessageing MOD Inicia /////////////////////~\n~'CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~'CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~'CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~'CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'/////////////// FLP y FBMessageing MOD Termina /////////////////////~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(<uses-permission~\n~ android:name="android.permission.WRITE_EXTERNAL_STORAGE" 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~ )
Module1=BatteryUtilities
Module10=gestion
Module11=Historico
Module12=MAPA_CLIENTE
Module13=MAPA_RUTAS
Module14=mapas
Module15=nopago
Module16=nuevocliente
Module17=pedidos
Module18=seleccion
Module19=Starter
Module2=BUSCAR
Module20=Subs
Module21=tarjeta
Module22=telefonos
Module23=Tracker
Module3=CameraExClass
Module4=colonia
Module5=colonia2
Module6=DBRequestManager
Module7=detalle_promo
Module8=fila
Module9=foto
NumberOfFiles=41
NumberOfLibraries=22
NumberOfModules=23
Version=12.8
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: Intmex-Reparto
#VersionCode: 1
#VersionName: 5.06.13.1
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False
#AdditionalJar: com.android.support:support-v4
#AdditionalJar: com.google.android.gms:play-services-location
#BridgeLogger: True
'###########################################################################################################
'###################### PULL #############################################################
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=git&Args=pull
'###########################################################################################################
'###################### PUSH #############################################################
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=github&Args=..\..\
'###########################################################################################################
'###################### PUSH TORTOISE GIT #########################################################
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=TortoiseGitProc&Args=/command:commit&Args=/path:"./../"&Args=/closeonend:2
'###########################################################################################################
#End Region
#Region Activity Attributes
#FullScreen: False
#IncludeTitle: True
#End Region
#Region Service Attributes
#End Region
Sub Process_Globals
'These global variables will be declared once when the application starts.
'These variables can be accessed from all modules.
Dim reqManager As DBRequestManager
' Dim ruta As String
Dim usuario As String
Dim logger As Boolean = True
Dim batt As Int
Dim lat_gps, lon_gps As String
' Dim skmt As SQL
Dim usuario As String
Dim server As String
Dim montoActual, clientesTotal, clientesVenta, clientesVisitados,almacen, rutaPreventa, CANTIDADPROD As String
Dim ultimaActualizacionGPS As String = 235959
Dim logger As Boolean = True
Dim fechaRuta As String
' Public wsServerLink As String = "ws://187.189.244.154:51042/push/b4a_ws2"
' Public wsServerLink As String = "ws://10.0.0.214:51042/push/b4a_ws2"
Dim srvIp As String
Dim phn As Phone
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 skmt As SQL
Dim user As EditText
Dim pass As EditText
Dim c As Cursor
Dim existe As String
Dim paso1 As String
Private IMEN As Label
Dim IMEI As String
Private Label1 As Label
Dim server As String
Private p_principal As Panel
Private p_appUpdate As Panel
Private lv_server As ListView
Private et_server As EditText
Private b_server As Button
Private b_apk As Button
Private b_envioBD As Button
Private b_regesar As Button
Private p_serverList As Panel
Public Provider As FileProvider
Private l_version As Label
End Sub
Sub Activity_Create(FirstTime As Boolean)
' If File.ExternalWritable Then
' ruta = Starter.rp.GetSafeDirDefaultExternal("")
' Else
' ruta = File.DirInternal
' End If
' se crea o no el archivo de la base de datos de kmt
'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE
'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA
'SI SE REGRESA A ESTE ACTIVIDAD.
' If File.Exists(Starter.ruta, "kmt.db") = False Then
' File.Copy(File.DirAssets, "kmt.db", Starter.ruta, "kmt.db")
' End If
' Starter.skmt.Initialize(Starter.ruta,"kmt.db", True)
' LogColor("Revisamos BD RUTAA", Colors.Magenta)
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTAA (RUTAA TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PAGARES (PA_ALMACEN TEXT, PA_RUTA_REP TEXT, PA_RUTAPREV TEXT, PA_FECHA_PREV TEXT, PA_CAPTURA TEXT, PA_MONTO TEXT, PA_USUARIO TEXT, PA_CLIENTE TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS wayPoints (codigo TEXT, indice INT)")
Dim server As String = "http://keymon.net:1781"
Private s As Cursor = Starter.skmt.ExecQuery("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'SERVER'")
Log(s.RowCount)
If s.RowCount > 0 Then
s.Position = 0
Log("Ponemos el servidor desde CAT_VARIABLES: " & s.GetString("CAT_VA_VALOR"))
server = s.GetString("CAT_VA_VALOR")
End If
' Dim server As String = "http://11.0.0.107:1781"
' server = "http://10.0.0.205:1782"
' server = "http://11.0.0.44:1782"
If FirstTime Then
reqManager.Initialize(Me, server)
'reqManager.Initialize(Me,"http://201.99.139.28:1782")
'reqManager.Initialize(Me,"http://177.244.63.54:1782")
'reqManager.Initialize(Me,"http://keymon.com.mx:1782")
End If
Activity.LoadLayout("login")
Label1.Text = Application.VersionName
Dim P As PhoneId
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_PHONE_STATE)
Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
If Result Then
IMEN.Text = P.GetDeviceId
IMEI = P.GetDeviceId
End If
End Sub
Sub Activity_Resume
Log("provider")
Provider.Initialize
Subs.centraPanel(p_principal, Activity.Width)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_ACCESS_FINE_LOCATION)
Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
If Result Then
StartService(Tracker)
Log("Start Tracker")
Else
ToastMessageShow("No permission", True)
End If
c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
If c.RowCount > 0 Then
' c.Position=0
' c=skmt.ExecQuery("select USUARIO from usuarioa")
c.Position=0
usuario = c.GetString("USUARIO")
End If
c.Close
' usuario=Subs.dameUsuarioDeDB
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
Wait For Activity_PermissionResult (Permission As String, resultC As Boolean)
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
Wait For Activity_PermissionResult (Permission As String, resultC As Boolean)
' CallSubDelayed(FirebaseMessaging, "SubscribeToTopics")
End Sub
Sub Activity_Pause (UserClosed As Boolean)
End Sub
Sub Entrar_Click
If pass.Text = "YA" Then
Starter.skmt.ExecNonQuery("delete from usuarioa")
Starter.skmt.ExecNonQuery("delete from VERSION")
Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object("ROOT", "ROOT"))
Starter.skmt.ExecNonQuery("delete from cat_almacen")
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (user.Text))
Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object ("2.1"))
StartActivity(seleccion)
Else
c=Starter.skmt.ExecQuery2("select count(*) as EXISTE1 from usuarioa where usuario = ?", Array As String(user.Text))
c.Position=0
existe = c.GetString("EXISTE1")
c.Close
'existe = 1
If existe = 0 Then
'skmt.ExecNonQuery("delete from usuarioa")
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "select_usuario_INTMEX_REPG"
cmd.Parameters = Array As Object(user.Text, pass.Text)
reqManager.ExecuteQuery(cmd , 0, "usuario")
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "select_version_INTMEX"
reqManager.ExecuteQuery(cmd , 0, "version")
Else
StartActivity(seleccion)
End If
End If
End Sub
Sub JobDone(Job As HttpJob)
If Job.Success = False Then
ToastMessageShow("Error: " & Job.ErrorMessage, True)
Else
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "version" Then 'query tag
For Each records() As Object In result.Rows
Starter.skmt.ExecNonQuery("delete from VERSION")
Dim CAT_VE_VERSION As String = records(result.Columns.Get("CAT_VE_VERSION"))
Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "agencia" Then 'query tag
For Each records() As Object In result.Rows
Dim ID_ALMACEN As String = records(result.Columns.Get("ID_ALMACEN"))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim result As DBResult = reqManager.HandleJob(Job)
If result.Tag = "usuario" Then 'query tag
For Each records() As Object In result.Rows
Dim name As String = records(result.Columns.Get("USUARIO"))
Dim ID_ALMACEN As String = records(result.Columns.Get("CAT_LO_AGENCIA"))
Dim IMEI_BASE As String = records(result.Columns.Get("CAT_LO_IDTELEFONO"))
Next
paso1 = 1
End If
End If
Job.Release
End If
If paso1 = 1 Then
If name = "OKActivo" Then
Starter.skmt.ExecNonQuery("delete from usuarioa")
Starter.skmt.ExecNonQuery2("INSERT INTO USUARIOA VALUES (?,?)", Array As Object(user.Text, pass.Text))
Starter.skmt.ExecNonQuery("delete from cat_almacen")
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ALMACEN(ID_ALMACEN) VALUES (?)", Array As Object (ID_ALMACEN))
StartActivity(seleccion)
Else If name = "OKExpirado"& IMEI Then
Msgbox("Usuario Expirado llamar al administrador","") 'ignore
Else If name = "OKCancelado"& IMEI Then
Msgbox("Usuario Cancelado llamar al administrador","") 'ignore
Else
Msgbox("Usuario o password No validos","") 'ignore
End If
paso1 = 0
End If
End Sub
Sub Activity_KeyPress (key As Int) As Boolean
' BACK key pressed
If key=KeyCodes.KEYCODE_BACK Then
' I want to capture the key here so I return True
'StartActivity(Main)
ExitApplication
'Return True
End If
' Returning False signals the system to handle the key
Return False
End Sub
Private Sub i_engrane_Click
Private s As Cursor = Starter.skmt.ExecQuery("select * from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'SERVER'")
Log(s.RowCount)
If s.RowCount > 0 Then
s.Position = 0
Log(s.GetString("CAT_VA_VALOR"))
et_server.Text = s.GetString("CAT_VA_VALOR")
End If
p_appUpdate.Width = Activity.Width
p_appUpdate.Height = Activity.Height
Subs.centraPanel(p_serverList, Activity.Width)
Subs.centraBoton(b_server, Activity.Width)
Subs.centraBoton(b_apk, Activity.Width)
Subs.centraBoton(b_envioBD, Activity.Width)
Subs.centraBoton(b_regesar, Activity.Width)
Subs.centraBoton(b_server, p_serverList.Width)
lv_server.Clear
lv_server.AddSingleLine("http://keymon.net:1781")
If user.Text = "KMTS1" Then lv_server.AddSingleLine("http://192.99.93.204:1781")
' l_server.Text = Starter.server
et_server.Text = server
Subs.panelVisible(p_appUpdate, 0, 0)
End Sub
Private Sub b_regesar_Click
p_principal.Visible = True
p_appUpdate.Visible = False
End Sub
Private Sub b_envioBD_Click
' copiaDB
' Sleep(1000)
Dim FileName As String = "kmt.db"
'copy the shared file to the shared folder
Log("xxxxxx:"&Provider.SharedFolder)
Sleep(1000)
File.Copy(File.DirInternal, FileName, Provider.SharedFolder, FileName)
Dim email As Email
email.To.Add("soporte@keymonsoft.com")
email.Subject = "Base de datos para revisión"
email.Attachments.Add(Provider.GetFileUri(FileName))
' email.Attachments.Add(Provider.GetFileUri(FileName)) 'second attachment
Dim in As Intent = email.GetIntent
in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION
StartActivity(in)
End Sub
Private Sub b_apk_Click
End Sub
Private Sub b_server_Click
Log("Guardar servidor")
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("SERVER"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SERVER",et_server.text))
Log(et_server.text)
Starter.server = et_server.text
server = et_server.text
If logger Then Log("Inicializamos reqManager con " & server)
reqManager.Initialize(Me, server)
LogColor($"ReqServer = ${server}"$, Colors.red)
' reinicializaReqManager
p_appUpdate.Visible = False
' Entrar.Visible = True
End Sub
Private Sub lv_server_ItemClick (Position As Int, Value As Object)
Log(Value)
et_server.text = Value
End Sub