diff --git a/B4A/C_Cheklist.bas b/B4A/C_Cheklist.bas
new file mode 100644
index 0000000..b3bdd7f
--- /dev/null
+++ b/B4A/C_Cheklist.bas
@@ -0,0 +1,268 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Class
+Version=12.5
+@EndOfDesignText@
+Sub Class_Globals
+ Private Root As B4XView 'ignore
+ Private xui As XUI 'ignore
+ Private p_check As Panel
+ Private sv_datos As ScrollView
+
+ Private camEx As CameraExClass
+ Dim frontCamera As Boolean = False
+ Private p_cam As Panel
+ Dim nombrefoto As String = "0"
+ Dim nombrefoto1 As String = "0"
+ Dim nombrefoto2 As String = "0"
+ Dim nombrefoto3 As String = "0"
+ Private p_camara As Panel
+ Private teclado As IME
+ Dim fototomada As String
+ Private ImageView1 As ImageView
+ Private ImageView3 As ImageView
+ Private ImageView2 As ImageView
+ Private ImageView4 As ImageView
+ Private b_foto As Button
+ Dim device As Phone
+ Dim MES1 As ManageExternalStorage
+ Dim x As Int = 0
+End Sub
+
+'You can add more parameters here.
+Public Sub Initialize As Object
+ Return Me
+End Sub
+
+'This event will be called once, before the page becomes visible.
+Private Sub B4XPage_Created (Root1 As B4XView)
+ Root = Root1
+ Root.LoadLayout("checklist")
+
+ sv_datos.Height = Root.Height
+ sv_datos.Width = Root.Width
+ sv_datos.Panel.LoadLayout("check")
+ sv_datos.Panel.Height = p_check.Height
+ p_check.Width = Root.Width
+ p_camara.Width = Root.Width
+ p_camara.Height = Root.Height
+End Sub
+
+Private Sub B4XPage_Appear
+ MES1.Initialize(Me, "MES1")
+
+ ' get the device SDK version
+ Dim SdkVersion As Int = device.SdkVersion
+
+ ' Choose which permission to request in order to access external storgage
+ If SdkVersion < 30 Then
+ Log("SDK = " & SdkVersion & " : Requesting WRITE_EXTERNAL_STORAGE permission")
+ Dim rp As RuntimePermissions
+ rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE) ' Implicit read capability if granted
+ Wait For Activity_PermissionResult (Permission As String, Result As Boolean)
+ Log($"PERMISSION_WRITE_EXTERNAL_STORAGE = ${Result}"$)
+ Else
+ Log("SDK = " & SdkVersion & " : Requesting MANAGE_EXTERNAL_STORAGE permission")
+ Log("On Entry MANAGE_EXTERNAL_STORAGE = " & MES1.HasPermission)
+ If Not(MES1.HasPermission) Then
+ MsgboxAsync("This app requires access to all files, please enable the option", "Manage All Files")
+ Wait For Msgbox_Result(Res As Int)
+ Log("Getting permission")
+ MES1.GetPermission
+ Wait For MES_StorageAvailable
+ End If
+ End If
+
+ p_camara.Visible = False
+End Sub
+
+Private Sub InitializeCamera2
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
+ Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
+ If Result Then
+ camEx.Initialize(p_cam, frontCamera, Me, "Camera1")
+ frontCamera = camEx.Front
+ Log("inicializamos Camara")
+ Else
+ ToastMessageShow("No permission!!!", True)
+ End If
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
+ Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
+ If Result Then
+ Log("conpermisos para escritura")
+ Else
+ ToastMessageShow("No permission!!!", True)
+ End If
+
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_READ_EXTERNAL_STORAGE)
+ Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
+ If Result Then
+ Log("conpermisos para escritura")
+ Else
+ ToastMessageShow("No permission!!!", True)
+ End If
+End Sub
+
+Sub Camera1_Ready (Success As Boolean)
+ Log("Camara ready")
+ If Success Then
+ camEx.SetJpegQuality(90)
+ camEx.SetContinuousAutoFocus
+ camEx.CommitParameters
+ camEx.StartPreview
+ Log(camEx.GetPreviewSize)
+ Else
+ ToastMessageShow("Cannot open camera.", True)
+ Log("Cannot open camera")
+ End If
+End Sub
+
+Sub Camera1_PictureTaken (Data()As Byte)
+ If x = 1 Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ nombrefoto = DateTime.Now & "_FOTO1.jpg"
+ teclado.HideKeyboard
+ fototomada = nombrefoto
+
+ Else If x = 2 Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ nombrefoto1 = DateTime.Now & "_FOTO2.jpg"
+ teclado.HideKeyboard
+ fototomada = nombrefoto1
+
+ Else If x = 3 Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ nombrefoto2 = DateTime.Now & "_FOTO3.jpg"
+ teclado.HideKeyboard
+ fototomada = nombrefoto2
+
+ Else If x = 4 Then
+ DateTime.DateFormat="ddMMyyyyHHmmss"
+ nombrefoto3 = DateTime.Now & "_FOTO4.jpg"
+ teclado.HideKeyboard
+ fototomada = nombrefoto3
+
+ End If
+ Log("tome foto")
+ Dim filename As String = fototomada
+ Dim Dirp As String = File.DirRootExternal
+ Dim Dir As String
+ Dim Dir2 As String
+ Try
+ File.MakeDir(Dirp,"/md")
+ Dir = "/md"
+ Log("creado en promotoria " & Dirp & Dir)
+ Catch
+ Dir = ""
+ Log("creado en raiz")
+ End Try
+
+ Try
+ File.MakeDir(Dirp & Dir,"/reduccion")
+ Dir2 = "/reduccion"
+ Log("creado en promotoria " & Dirp & Dir & Dir2)
+ Catch
+ Dir = ""
+ Log("creado en raiz")
+ End Try
+
+ camEx.SavePictureToFile(Data, Dirp&Dir, filename)
+ camEx.StartPreview 'restart preview
+' ToastMessageShow("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename, True)
+ Log("Picture saved." & CRLF & "File size: " & File.Size(Dir, filename) & Dir &"," & filename)
+ p_camara.Visible = False
+
+ Log(nombrefoto)
+ Log(nombrefoto1)
+ Log(nombrefoto2)
+ Log(nombrefoto3)
+
+ If nombrefoto <> "0" Then
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirRootExternal & Dir, filename, 300, 450, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirRootExternal & Dir & Dir2, filename, True)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ ImageView1.Bitmap = LoadBitmap(File.DirRootExternal & Dir & Dir2,nombrefoto)
+ End If
+
+ If nombrefoto1 <> "0" Then
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirRootExternal & Dir, filename, 300, 450, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirRootExternal & Dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ ImageView2.Bitmap = LoadBitmap(File.DirRootExternal & Dir& Dir2,nombrefoto1)
+ End If
+
+ If nombrefoto2 <> "0" Then
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirRootExternal & Dir, filename, 300, 450, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirRootExternal & Dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ ImageView3.Bitmap = LoadBitmap(File.DirRootExternal & Dir& Dir2,nombrefoto2)
+ End If
+
+ If nombrefoto3 <> "0" Then
+ Dim img As B4XBitmap = xui.LoadBitmapResize(File.DirRootExternal & Dir, filename, 300, 450, True)
+ Dim out As OutputStream = File.OpenOutput(File.DirRootExternal & Dir & Dir2, filename, False)
+ img.WriteToStream(out, 100, "PNG")
+ out.Close
+ ImageView4.Bitmap = LoadBitmap(File.DirRootExternal & Dir & Dir2,nombrefoto3)
+ End If
+
+ StopCamera2
+
+End Sub
+
+Private Sub p_camara_Click
+
+End Sub
+
+Private Sub b_foto_Click
+ camEx.TakePicture
+ p_camara.Visible = False
+' StopCamera2
+End Sub
+
+Private Sub StopCamera2
+' Capturing = False
+ If camEx.IsInitialized Then
+ camEx.Release
+ End If
+End Sub
+
+Private Sub ImageView1_Click
+
+ x = 1
+ InitializeCamera2
+ p_camara.Visible = True
+
+End Sub
+
+Private Sub ImageView2_Click
+
+ x = 2
+ InitializeCamera2
+ p_camara.Visible = True
+
+End Sub
+
+Private Sub ImageView3_Click
+
+ x = 3
+ InitializeCamera2
+ p_camara.Visible = True
+
+End Sub
+
+Private Sub ImageView4_Click
+
+ x = 4
+ InitializeCamera2
+ p_camara.Visible = True
+
+End Sub
+
+Private Sub b_guardar_Click
+ B4XPages.ShowPage("Principal")
+End Sub
\ No newline at end of file
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index b967290..6ea2ee6 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -1331,4 +1331,8 @@ End Sub
Private Sub b_tabulador_Click
B4XPages.ShowPage("tabulador")
+End Sub
+
+Private Sub b_check_Click
+ B4XPages.ShowPage("checklist")
End Sub
\ No newline at end of file
diff --git a/B4A/Files/atras.png b/B4A/Files/atras.png
new file mode 100644
index 0000000..1a5af22
Binary files /dev/null and b/B4A/Files/atras.png differ
diff --git a/B4A/Files/atras1.png b/B4A/Files/atras1.png
new file mode 100644
index 0000000..25e195c
Binary files /dev/null and b/B4A/Files/atras1.png differ
diff --git a/B4A/Files/check.bal b/B4A/Files/check.bal
new file mode 100644
index 0000000..6f7f90e
Binary files /dev/null and b/B4A/Files/check.bal differ
diff --git a/B4A/Files/checklist.bal b/B4A/Files/checklist.bal
new file mode 100644
index 0000000..9462b17
Binary files /dev/null and b/B4A/Files/checklist.bal differ
diff --git a/B4A/Files/derecha.png b/B4A/Files/derecha.png
new file mode 100644
index 0000000..58a1e82
Binary files /dev/null and b/B4A/Files/derecha.png differ
diff --git a/B4A/Files/derecha1.png b/B4A/Files/derecha1.png
new file mode 100644
index 0000000..ed3087b
Binary files /dev/null and b/B4A/Files/derecha1.png differ
diff --git a/B4A/Files/frintal.png b/B4A/Files/frintal.png
new file mode 100644
index 0000000..b0c6420
Binary files /dev/null and b/B4A/Files/frintal.png differ
diff --git a/B4A/Files/frontal1.gif b/B4A/Files/frontal1.gif
new file mode 100644
index 0000000..06306db
Binary files /dev/null and b/B4A/Files/frontal1.gif differ
diff --git a/B4A/Files/frontal1.png b/B4A/Files/frontal1.png
new file mode 100644
index 0000000..5ed81e3
Binary files /dev/null and b/B4A/Files/frontal1.png differ
diff --git a/B4A/Files/izquierda.png b/B4A/Files/izquierda.png
new file mode 100644
index 0000000..bb268dc
Binary files /dev/null and b/B4A/Files/izquierda.png differ
diff --git a/B4A/Files/izquierda1.png b/B4A/Files/izquierda1.png
new file mode 100644
index 0000000..20b1534
Binary files /dev/null and b/B4A/Files/izquierda1.png differ
diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal
index 3b489da..0d11491 100644
Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ
diff --git a/B4A/ManageExternalStorage.bas b/B4A/ManageExternalStorage.bas
new file mode 100644
index 0000000..7f0a197
--- /dev/null
+++ b/B4A/ManageExternalStorage.bas
@@ -0,0 +1,81 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Class
+Version=10.7
+@EndOfDesignText@
+' Version 1.00
+#Event: StorageAvailable
+Sub Class_Globals
+ Private ion As Object
+ Private mCallback As Object
+ Private mEventName As String
+
+End Sub
+
+
+' This pretty trivial class is modelled on (plagiarised from!) Erel's ExternalStorage class
+' It applies to devices implementing SDK30 and later
+' It allows apps to access the internal 'external' storage as was possible on earlier Android versions ussing traditional file I/O
+' You must manually add 'AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)' to the manifest
+' You must ensure that you provide the package name of your app in Sub GetPermission
+' This class uses the MANAGE_APP_ALL_FILES_ACCESS_PERMISSION intent action to direct users to a system settings page
+' They must enable the option on that page to give permission
+
+
+
+'Initializes the object
+Public Sub Initialize (Callback As Object, EventName As String)
+ mCallback = Callback
+ mEventName = EventName
+End Sub
+
+
+' Determine if the app already has MANAGE_EXTERNAL_STORAGE call Environment.isExternalStorageManager()
+' Return True if this app already has MANAGE_EXTERNAL_STORAGE permission
+Public Sub HasPermission As Boolean
+ Dim has As Boolean
+ Dim jo As JavaObject
+ jo.InitializeStatic("android.os.Environment")
+ has = jo.RunMethod("isExternalStorageManager", Null)
+ Return has
+End Sub
+
+' Check whether this app has MANAGE_EXTERNAL_STORAGE permission
+' If not show the user a dialog to enable MANAGE_EXTERNAL_STORAGE permission for this app
+' Raises the StorageAvailable event in the calling activity when complete
+Public Sub GetPermission
+ If HasPermission Then
+ RaiseEvent
+ Return
+ End If
+ Dim in As Intent
+ ' Be sure to reference your app package name in "pakageg:xxx"
+ in.Initialize("android.settings.MANAGE_APP_ALL_FILES_ACCESS_PERMISSION", $"package:${Application.PackageName}"$)
+ StartActivityForResult(in)
+End Sub
+
+
+Private Sub RaiseEvent
+ Log("Calling : " & mEventName & "_StorageAvailable")
+ CallSubDelayed(mCallback, mEventName & "_StorageAvailable")
+End Sub
+
+
+Private Sub ion_Event (MethodName As String, Args() As Object) As Object
+ RaiseEvent
+ Return Null
+End Sub
+
+
+Private Sub StartActivityForResult(i As Intent)
+ Dim jo As JavaObject = GetBA
+ ion = jo.CreateEvent("anywheresoftware.b4a.IOnActivityResult", "ion", Null)
+ jo.RunMethod("startActivityForResult", Array As Object(ion, i))
+End Sub
+
+Private Sub GetBA As Object
+ Dim jo As JavaObject = Me
+ Return jo.RunMethod("getBA", Null)
+End Sub
+
diff --git a/B4A/Mariana_Reparto.b4a b/B4A/Mariana_Reparto.b4a
index 501b9f5..bf019af 100644
--- a/B4A/Mariana_Reparto.b4a
+++ b/B4A/Mariana_Reparto.b4a
@@ -1,33 +1,43 @@
Build1=Default,reparto_mariana.keymon.lat,HU2_PUBLIC
File1=alert2.png
-File10=guna_viejo.png
-File11=guna_viejo2.png
-File12=historico.bal
-File13=intmex_logo_192x192.jpg
-File14=itembuttonblue.png
-File15=kelloggs.png
-File16=login.bal
-File17=logo_mariana.jpeg
-File18=logo_mariana.jpg
-File19=MainPage.bal
-File2=cliente.bal
-File20=mapa_cliente.bal
-File21=mariana_logo_192x192.jpg
-File22=no_venta.bal
-File23=planfia_logo.png
-File24=principal.bal
-File25=proditem.bal
-File26=productos.bal
-File27=profina.jpg
-File28=PROFINA.png
-File29=sync.png
-File3=clientes.bal
-File4=dbc.png
-File5=detalleVenta.bal
-File6=durakelo1.png
-File7=engrane.jpg
-File8=fondo_kmt.jpg
-File9=foto.bal
+File10=derecha1.png
+File11=detalleVenta.bal
+File12=durakelo1.png
+File13=engrane.jpg
+File14=fondo_kmt.jpg
+File15=foto.bal
+File16=frintal.png
+File17=frontal1.png
+File18=guna_viejo.png
+File19=guna_viejo2.png
+File2=atras.png
+File20=historico.bal
+File21=intmex_logo_192x192.jpg
+File22=itembuttonblue.png
+File23=izquierda.png
+File24=izquierda1.png
+File25=kelloggs.png
+File26=login.bal
+File27=logo_mariana.jpeg
+File28=logo_mariana.jpg
+File29=MainPage.bal
+File3=atras1.png
+File30=mapa_cliente.bal
+File31=mariana_logo_192x192.jpg
+File32=no_venta.bal
+File33=planfia_logo.png
+File34=principal.bal
+File35=proditem.bal
+File36=productos.bal
+File37=profina.jpg
+File38=PROFINA.png
+File39=sync.png
+File4=check.bal
+File5=checklist.bal
+File6=cliente.bal
+File7=clientes.bal
+File8=dbc.png
+File9=derecha.png
FileGroup1=Default Group
FileGroup10=Default Group
FileGroup11=Default Group
@@ -51,6 +61,16 @@ 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
FileGroup5=Default Group
FileGroup6=Default Group
@@ -59,61 +79,65 @@ FileGroup8=Default Group
FileGroup9=Default Group
Group=Default Group
Library1=appupdating
-Library10=googlemapsextras
-Library11=gps
-Library12=ime
-Library13=javaobject
-Library14=json
-Library15=okhttputils2
-Library16=phone
-Library17=randomaccessfile
-Library18=reflection
-Library19=runtimepermissions
+Library10=googlemaps
+Library11=googlemapsextras
+Library12=gps
+Library13=ime
+Library14=javaobject
+Library15=json
+Library16=okhttputils2
+Library17=phone
+Library18=randomaccessfile
+Library19=reflection
Library2=b4xpages
-Library20=serial
-Library21=sql
-Library22=togglelibrary
-Library23=xcustomlistview
-Library24=zxing_scanner
-Library25=fileprovider
+Library20=runtimepermissions
+Library21=serial
+Library22=sql
+Library23=togglelibrary
+Library24=xcustomlistview
+Library25=xui
+Library26=zxing_scanner
+Library27=xui views
Library3=baqrcode
Library4=byteconverter
Library5=camera
Library6=compressstrings
Library7=core
-Library8=fusedlocationprovider
-Library9=googlemaps
-ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText()~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~'AddManifestText()~\n~'AddManifestText()~\n~'AddManifestText() 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~AddManifestText()~\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~'Si al cargar un mapa de google mande este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText()~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(~\n~ )~\n~ AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~CreateResourceFromFile(Macro, JhsIceZxing1.CaturePortrait)~\n~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddManifestText(~\n~ ~\n~ )~\n~ ~\n~ SetApplicationAttribute(android:allowBackup, "false")
+Library8=fileprovider
+Library9=fusedlocationprovider
+ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText()~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~'AddManifestText()~\n~'AddManifestText()~\n~'AddManifestText() 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~AddManifestText()~\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~'Si al cargar un mapa de google mande este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText()~\n~~\n~'/////////////////////// App Updating ////////////////~\n~ AddManifestText(~\n~ )~\n~ AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~AddManifestText()~\n~~\n~AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~AddPermission(android.permission.INTERNET)~\n~AddPermission(android.permission.INSTALL_PACKAGES)~\n~AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~AddPermission(android.permission.READ_PHONE_STATE)~\n~AddPermission(android.permission.WAKE_LOCK)~\n~CreateResourceFromFile(Macro, JhsIceZxing1.CaturePortrait)~\n~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddManifestText(~\n~ ~\n~ )~\n~ AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)~\n~ SetApplicationAttribute(android:allowBackup, "false")
Module1=appUpdater
-Module10=C_Historico
-Module11=C_Mapas
-Module12=C_NoVenta
-Module13=C_NuevoCliente
-Module14=C_Pedidos
-Module15=C_Principal
-Module16=C_Productos
-Module17=C_tabulador
-Module18=C_TicketsDia
-Module19=C_UpdateAvailable
+Module10=C_Foto
+Module11=C_Historico
+Module12=C_Mapas
+Module13=C_NoVenta
+Module14=C_NuevoCliente
+Module15=C_Pedidos
+Module16=C_Principal
+Module17=C_Productos
+Module18=C_tabulador
+Module19=C_TicketsDia
Module2=|relative|..\B4XMainPage
-Module20=CameraExClass
-Module21=DBRequestManager
-Module22=foto
-Module23=MAPA_CLIENTE
-Module24=MAPA_RUTAS
-Module25=Starter
-Module26=Subs
-Module27=Tracker
+Module20=C_UpdateAvailable
+Module21=CameraExClass
+Module22=DBRequestManager
+Module23=foto
+Module24=ManageExternalStorage
+Module25=MAPA_CLIENTE
+Module26=MAPA_RUTAS
+Module27=Starter
+Module28=Subs
+Module29=Tracker
Module3=BatteryUtilities
Module4=C_Buscar
-Module5=C_Cliente
-Module6=C_Clientes
-Module7=C_Detalle_Promo
-Module8=C_DetalleVenta
-Module9=C_Foto
-NumberOfFiles=29
-NumberOfLibraries=25
-NumberOfModules=27
+Module5=C_Cheklist
+Module6=C_Cliente
+Module7=C_Clientes
+Module8=C_Detalle_Promo
+Module9=C_DetalleVenta
+NumberOfFiles=39
+NumberOfLibraries=27
+NumberOfModules=29
Version=12.5
@EndOfDesignText@
#Region Project Attributes
diff --git a/B4A/Mariana_Reparto.b4a.meta b/B4A/Mariana_Reparto.b4a.meta
index db6447c..10d1b8e 100644
--- a/B4A/Mariana_Reparto.b4a.meta
+++ b/B4A/Mariana_Reparto.b4a.meta
@@ -19,6 +19,8 @@ ModuleBookmarks24=
ModuleBookmarks25=
ModuleBookmarks26=
ModuleBookmarks27=
+ModuleBookmarks28=
+ModuleBookmarks29=
ModuleBookmarks3=
ModuleBookmarks4=
ModuleBookmarks5=
@@ -47,6 +49,8 @@ ModuleBreakpoints24=
ModuleBreakpoints25=
ModuleBreakpoints26=
ModuleBreakpoints27=
+ModuleBreakpoints28=
+ModuleBreakpoints29=
ModuleBreakpoints3=
ModuleBreakpoints4=
ModuleBreakpoints5=
@@ -56,32 +60,34 @@ ModuleBreakpoints8=
ModuleBreakpoints9=
ModuleClosedNodes0=
ModuleClosedNodes1=
-ModuleClosedNodes10=5,6,7,8,9
-ModuleClosedNodes11=
+ModuleClosedNodes10=1,3,7,12,13,14,15
+ModuleClosedNodes11=5,6,7,8,9
ModuleClosedNodes12=
ModuleClosedNodes13=
ModuleClosedNodes14=
ModuleClosedNodes15=
-ModuleClosedNodes16=5,6,7,8,10,12,13,14,15,16,17,19,23,24
-ModuleClosedNodes17=4
-ModuleClosedNodes18=
+ModuleClosedNodes16=
+ModuleClosedNodes17=5,6,7,8,10,12,13,14,15,16,17,19,23,24
+ModuleClosedNodes18=4
ModuleClosedNodes19=
ModuleClosedNodes2=
ModuleClosedNodes20=
ModuleClosedNodes21=
-ModuleClosedNodes22=4
-ModuleClosedNodes23=
+ModuleClosedNodes22=
+ModuleClosedNodes23=4
ModuleClosedNodes24=
ModuleClosedNodes25=
-ModuleClosedNodes26=45,46,47,48,49,50,53,54
-ModuleClosedNodes27=2
+ModuleClosedNodes26=
+ModuleClosedNodes27=
+ModuleClosedNodes28=45,46,47,48,49,50,53,54
+ModuleClosedNodes29=2
ModuleClosedNodes3=
ModuleClosedNodes4=3,4,5,7,8
ModuleClosedNodes5=
-ModuleClosedNodes6=2
-ModuleClosedNodes7=1,3
-ModuleClosedNodes8=12,13
-ModuleClosedNodes9=1,3,7,12,13,14,15
-NavigationStack=C_Clientes,Mods,0,0,C_Cliente,JobDone,485,2,C_Cliente,mandaPendientesreparto,442,0,C_Cliente,B_PASO2_Click,437,0,C_Cliente,gest_Click,202,0,Starter,Service_Create,41,0,Starter,ENVIA_ULTIMA_GPS,112,0,Starter,JobDone,149,0,B4XMainPage,Class_Globals,28,0
+ModuleClosedNodes6=
+ModuleClosedNodes7=2
+ModuleClosedNodes8=1,3
+ModuleClosedNodes9=12,13
+NavigationStack=C_Cheklist,B4XPage_Appear,48,0,ManageExternalStorage,GetPermission,47,0,ManageExternalStorage,Class_Globals,19,0,Diseñador Visual,checklist.bal,-100,2,ManageExternalStorage,HasPermission,31,0,ManageExternalStorage,Initialize,26,0,C_tabulador,Class_Globals,16,0,C_Cheklist,Class_Globals,21,0,Diseñador Visual,check.bal,-100,6,C_Cheklist,b_guardar_Click,260,6
SelectedBuild=0
-VisibleModules=2,25,15,26,1,19,17,23,6,12
+VisibleModules=2,27,16,28,1,20,18,25,7,13,21,5,24
diff --git a/B4A/cheklist.bas b/B4A/cheklist.bas
new file mode 100644
index 0000000..b955c0b
--- /dev/null
+++ b/B4A/cheklist.bas
@@ -0,0 +1,24 @@
+B4A=true
+Group=Default Group
+ModulesStructureVersion=1
+Type=Class
+Version=12.5
+@EndOfDesignText@
+Sub Class_Globals
+ Private Root As B4XView 'ignore
+ Private xui As XUI 'ignore
+End Sub
+
+'You can add more parameters here.
+Public Sub Initialize As Object
+ Return Me
+End Sub
+
+'This event will be called once, before the page becomes visible.
+Private Sub B4XPage_Created (Root1 As B4XView)
+ Root = Root1
+ 'load the layout to Root
+
+End Sub
+
+'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
\ No newline at end of file
diff --git a/B4XMainPage.bas b/B4XMainPage.bas
index 8609298..9a39ea0 100644
--- a/B4XMainPage.bas
+++ b/B4XMainPage.bas
@@ -61,7 +61,7 @@ Sub Class_Globals
Dim user As EditText
Dim pass As EditText
Dim c As Cursor
- Dim existe As String
+ Dim existe As String
Dim paso1 As String
Private IMEN As Label
Dim IMEI As String
@@ -69,6 +69,7 @@ Sub Class_Globals
Dim server As String
Private p_principal As Panel
Private Entrar As Button
+ Public checklist As C_Cheklist
Public tabulador As C_tabulador
Dim batt As Int
Dim porVisitar, entregas, rechazos, montoEntregado, montoRechazado As String
@@ -129,6 +130,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
B4XPages.AddPage("Detalle_Promo", detalle_promo)
tabulador.Initialize
B4XPages.AddPage("tabulador", tabulador)
+ checklist.Initialize
+ B4XPages.AddPage("checklist",checklist)
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS TABULADOR_MONEDAS(VEINTE TEXT, DIEZ TEXT, CINCO TEXT, DOS TEXT, PESO TEXT, CENTAVO TEXT, TOTAL TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS TABULADOR_BILLETES(MIL TEXT, QUINIENTOS TEXT, DOCIENTOS TEXT, CIEN TEXT, CINCUENTA TEXT, VEINTE TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_VENTAS2 (HVD_PARCIAL TEXT, HVD_RECHAZO TEXT, HVD_NUM_REGISTRO TEXT, HVD_NUM_TICKET TEXT, HVD_PROID TEXT, HVD_CODPROMO TEXT, HVD_FECHA TEXT, HVD_ESTATUS TEXT, HVD_CLIENTE TEXT, HVD_PRONOMBRE TEXT, HVD_CANT TEXT, HVD_COSTO_TOT TEXT)")