checklist
268
B4A/C_Cheklist.bas
Normal file
@@ -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
|
||||||
@@ -1332,3 +1332,7 @@ End Sub
|
|||||||
Private Sub b_tabulador_Click
|
Private Sub b_tabulador_Click
|
||||||
B4XPages.ShowPage("tabulador")
|
B4XPages.ShowPage("tabulador")
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Private Sub b_check_Click
|
||||||
|
B4XPages.ShowPage("checklist")
|
||||||
|
End Sub
|
||||||
BIN
B4A/Files/atras.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
B4A/Files/atras1.png
Normal file
|
After Width: | Height: | Size: 6.2 KiB |
BIN
B4A/Files/check.bal
Normal file
BIN
B4A/Files/checklist.bal
Normal file
BIN
B4A/Files/derecha.png
Normal file
|
After Width: | Height: | Size: 8.4 KiB |
BIN
B4A/Files/derecha1.png
Normal file
|
After Width: | Height: | Size: 5.8 KiB |
BIN
B4A/Files/frintal.png
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
B4A/Files/frontal1.gif
Normal file
|
After Width: | Height: | Size: 4.9 KiB |
BIN
B4A/Files/frontal1.png
Normal file
|
After Width: | Height: | Size: 7.3 KiB |
BIN
B4A/Files/izquierda.png
Normal file
|
After Width: | Height: | Size: 8.4 KiB |
BIN
B4A/Files/izquierda1.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
81
B4A/ManageExternalStorage.bas
Normal file
@@ -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
|
||||||
|
|
||||||
@@ -1,33 +1,43 @@
|
|||||||
Build1=Default,reparto_mariana.keymon.lat,HU2_PUBLIC
|
Build1=Default,reparto_mariana.keymon.lat,HU2_PUBLIC
|
||||||
File1=alert2.png
|
File1=alert2.png
|
||||||
File10=guna_viejo.png
|
File10=derecha1.png
|
||||||
File11=guna_viejo2.png
|
File11=detalleVenta.bal
|
||||||
File12=historico.bal
|
File12=durakelo1.png
|
||||||
File13=intmex_logo_192x192.jpg
|
File13=engrane.jpg
|
||||||
File14=itembuttonblue.png
|
File14=fondo_kmt.jpg
|
||||||
File15=kelloggs.png
|
File15=foto.bal
|
||||||
File16=login.bal
|
File16=frintal.png
|
||||||
File17=logo_mariana.jpeg
|
File17=frontal1.png
|
||||||
File18=logo_mariana.jpg
|
File18=guna_viejo.png
|
||||||
File19=MainPage.bal
|
File19=guna_viejo2.png
|
||||||
File2=cliente.bal
|
File2=atras.png
|
||||||
File20=mapa_cliente.bal
|
File20=historico.bal
|
||||||
File21=mariana_logo_192x192.jpg
|
File21=intmex_logo_192x192.jpg
|
||||||
File22=no_venta.bal
|
File22=itembuttonblue.png
|
||||||
File23=planfia_logo.png
|
File23=izquierda.png
|
||||||
File24=principal.bal
|
File24=izquierda1.png
|
||||||
File25=proditem.bal
|
File25=kelloggs.png
|
||||||
File26=productos.bal
|
File26=login.bal
|
||||||
File27=profina.jpg
|
File27=logo_mariana.jpeg
|
||||||
File28=PROFINA.png
|
File28=logo_mariana.jpg
|
||||||
File29=sync.png
|
File29=MainPage.bal
|
||||||
File3=clientes.bal
|
File3=atras1.png
|
||||||
File4=dbc.png
|
File30=mapa_cliente.bal
|
||||||
File5=detalleVenta.bal
|
File31=mariana_logo_192x192.jpg
|
||||||
File6=durakelo1.png
|
File32=no_venta.bal
|
||||||
File7=engrane.jpg
|
File33=planfia_logo.png
|
||||||
File8=fondo_kmt.jpg
|
File34=principal.bal
|
||||||
File9=foto.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
|
FileGroup1=Default Group
|
||||||
FileGroup10=Default Group
|
FileGroup10=Default Group
|
||||||
FileGroup11=Default Group
|
FileGroup11=Default Group
|
||||||
@@ -51,6 +61,16 @@ FileGroup27=Default Group
|
|||||||
FileGroup28=Default Group
|
FileGroup28=Default Group
|
||||||
FileGroup29=Default Group
|
FileGroup29=Default Group
|
||||||
FileGroup3=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
|
FileGroup4=Default Group
|
||||||
FileGroup5=Default Group
|
FileGroup5=Default Group
|
||||||
FileGroup6=Default Group
|
FileGroup6=Default Group
|
||||||
@@ -59,61 +79,65 @@ FileGroup8=Default Group
|
|||||||
FileGroup9=Default Group
|
FileGroup9=Default Group
|
||||||
Group=Default Group
|
Group=Default Group
|
||||||
Library1=appupdating
|
Library1=appupdating
|
||||||
Library10=googlemapsextras
|
Library10=googlemaps
|
||||||
Library11=gps
|
Library11=googlemapsextras
|
||||||
Library12=ime
|
Library12=gps
|
||||||
Library13=javaobject
|
Library13=ime
|
||||||
Library14=json
|
Library14=javaobject
|
||||||
Library15=okhttputils2
|
Library15=json
|
||||||
Library16=phone
|
Library16=okhttputils2
|
||||||
Library17=randomaccessfile
|
Library17=phone
|
||||||
Library18=reflection
|
Library18=randomaccessfile
|
||||||
Library19=runtimepermissions
|
Library19=reflection
|
||||||
Library2=b4xpages
|
Library2=b4xpages
|
||||||
Library20=serial
|
Library20=runtimepermissions
|
||||||
Library21=sql
|
Library21=serial
|
||||||
Library22=togglelibrary
|
Library22=sql
|
||||||
Library23=xcustomlistview
|
Library23=togglelibrary
|
||||||
Library24=zxing_scanner
|
Library24=xcustomlistview
|
||||||
Library25=fileprovider
|
Library25=xui
|
||||||
|
Library26=zxing_scanner
|
||||||
|
Library27=xui views
|
||||||
Library3=baqrcode
|
Library3=baqrcode
|
||||||
Library4=byteconverter
|
Library4=byteconverter
|
||||||
Library5=camera
|
Library5=camera
|
||||||
Library6=compressstrings
|
Library6=compressstrings
|
||||||
Library7=core
|
Library7=core
|
||||||
Library8=fusedlocationprovider
|
Library8=fileprovider
|
||||||
Library9=googlemaps
|
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~<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~'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~~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText(<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:maxSdkVersion="33" />)~\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" />) '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~'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(<uses-library android:name="org.apache.http.legacy" android:required="false"/>)~\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~ )~\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~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddManifestText(<queries>~\n~ <package android:name="com.google.android.apps.maps" />~\n~ </queries>)~\n~ ~\n~ SetApplicationAttribute(android:allowBackup, "false")
|
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~'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~~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~AddManifestText(<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" android:maxSdkVersion="33" />)~\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" />) '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~'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(<uses-library android:name="org.apache.http.legacy" android:required="false"/>)~\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~ )~\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~ ~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~~\n~AddManifestText(<queries>~\n~ <package android:name="com.google.android.apps.maps" />~\n~ </queries>)~\n~ AddPermission(android.permission.MANAGE_EXTERNAL_STORAGE)~\n~ SetApplicationAttribute(android:allowBackup, "false")
|
||||||
Module1=appUpdater
|
Module1=appUpdater
|
||||||
Module10=C_Historico
|
Module10=C_Foto
|
||||||
Module11=C_Mapas
|
Module11=C_Historico
|
||||||
Module12=C_NoVenta
|
Module12=C_Mapas
|
||||||
Module13=C_NuevoCliente
|
Module13=C_NoVenta
|
||||||
Module14=C_Pedidos
|
Module14=C_NuevoCliente
|
||||||
Module15=C_Principal
|
Module15=C_Pedidos
|
||||||
Module16=C_Productos
|
Module16=C_Principal
|
||||||
Module17=C_tabulador
|
Module17=C_Productos
|
||||||
Module18=C_TicketsDia
|
Module18=C_tabulador
|
||||||
Module19=C_UpdateAvailable
|
Module19=C_TicketsDia
|
||||||
Module2=|relative|..\B4XMainPage
|
Module2=|relative|..\B4XMainPage
|
||||||
Module20=CameraExClass
|
Module20=C_UpdateAvailable
|
||||||
Module21=DBRequestManager
|
Module21=CameraExClass
|
||||||
Module22=foto
|
Module22=DBRequestManager
|
||||||
Module23=MAPA_CLIENTE
|
Module23=foto
|
||||||
Module24=MAPA_RUTAS
|
Module24=ManageExternalStorage
|
||||||
Module25=Starter
|
Module25=MAPA_CLIENTE
|
||||||
Module26=Subs
|
Module26=MAPA_RUTAS
|
||||||
Module27=Tracker
|
Module27=Starter
|
||||||
|
Module28=Subs
|
||||||
|
Module29=Tracker
|
||||||
Module3=BatteryUtilities
|
Module3=BatteryUtilities
|
||||||
Module4=C_Buscar
|
Module4=C_Buscar
|
||||||
Module5=C_Cliente
|
Module5=C_Cheklist
|
||||||
Module6=C_Clientes
|
Module6=C_Cliente
|
||||||
Module7=C_Detalle_Promo
|
Module7=C_Clientes
|
||||||
Module8=C_DetalleVenta
|
Module8=C_Detalle_Promo
|
||||||
Module9=C_Foto
|
Module9=C_DetalleVenta
|
||||||
NumberOfFiles=29
|
NumberOfFiles=39
|
||||||
NumberOfLibraries=25
|
NumberOfLibraries=27
|
||||||
NumberOfModules=27
|
NumberOfModules=29
|
||||||
Version=12.5
|
Version=12.5
|
||||||
@EndOfDesignText@
|
@EndOfDesignText@
|
||||||
#Region Project Attributes
|
#Region Project Attributes
|
||||||
|
|||||||
@@ -19,6 +19,8 @@ ModuleBookmarks24=
|
|||||||
ModuleBookmarks25=
|
ModuleBookmarks25=
|
||||||
ModuleBookmarks26=
|
ModuleBookmarks26=
|
||||||
ModuleBookmarks27=
|
ModuleBookmarks27=
|
||||||
|
ModuleBookmarks28=
|
||||||
|
ModuleBookmarks29=
|
||||||
ModuleBookmarks3=
|
ModuleBookmarks3=
|
||||||
ModuleBookmarks4=
|
ModuleBookmarks4=
|
||||||
ModuleBookmarks5=
|
ModuleBookmarks5=
|
||||||
@@ -47,6 +49,8 @@ ModuleBreakpoints24=
|
|||||||
ModuleBreakpoints25=
|
ModuleBreakpoints25=
|
||||||
ModuleBreakpoints26=
|
ModuleBreakpoints26=
|
||||||
ModuleBreakpoints27=
|
ModuleBreakpoints27=
|
||||||
|
ModuleBreakpoints28=
|
||||||
|
ModuleBreakpoints29=
|
||||||
ModuleBreakpoints3=
|
ModuleBreakpoints3=
|
||||||
ModuleBreakpoints4=
|
ModuleBreakpoints4=
|
||||||
ModuleBreakpoints5=
|
ModuleBreakpoints5=
|
||||||
@@ -56,32 +60,34 @@ ModuleBreakpoints8=
|
|||||||
ModuleBreakpoints9=
|
ModuleBreakpoints9=
|
||||||
ModuleClosedNodes0=
|
ModuleClosedNodes0=
|
||||||
ModuleClosedNodes1=
|
ModuleClosedNodes1=
|
||||||
ModuleClosedNodes10=5,6,7,8,9
|
ModuleClosedNodes10=1,3,7,12,13,14,15
|
||||||
ModuleClosedNodes11=
|
ModuleClosedNodes11=5,6,7,8,9
|
||||||
ModuleClosedNodes12=
|
ModuleClosedNodes12=
|
||||||
ModuleClosedNodes13=
|
ModuleClosedNodes13=
|
||||||
ModuleClosedNodes14=
|
ModuleClosedNodes14=
|
||||||
ModuleClosedNodes15=
|
ModuleClosedNodes15=
|
||||||
ModuleClosedNodes16=5,6,7,8,10,12,13,14,15,16,17,19,23,24
|
ModuleClosedNodes16=
|
||||||
ModuleClosedNodes17=4
|
ModuleClosedNodes17=5,6,7,8,10,12,13,14,15,16,17,19,23,24
|
||||||
ModuleClosedNodes18=
|
ModuleClosedNodes18=4
|
||||||
ModuleClosedNodes19=
|
ModuleClosedNodes19=
|
||||||
ModuleClosedNodes2=
|
ModuleClosedNodes2=
|
||||||
ModuleClosedNodes20=
|
ModuleClosedNodes20=
|
||||||
ModuleClosedNodes21=
|
ModuleClosedNodes21=
|
||||||
ModuleClosedNodes22=4
|
ModuleClosedNodes22=
|
||||||
ModuleClosedNodes23=
|
ModuleClosedNodes23=4
|
||||||
ModuleClosedNodes24=
|
ModuleClosedNodes24=
|
||||||
ModuleClosedNodes25=
|
ModuleClosedNodes25=
|
||||||
ModuleClosedNodes26=45,46,47,48,49,50,53,54
|
ModuleClosedNodes26=
|
||||||
ModuleClosedNodes27=2
|
ModuleClosedNodes27=
|
||||||
|
ModuleClosedNodes28=45,46,47,48,49,50,53,54
|
||||||
|
ModuleClosedNodes29=2
|
||||||
ModuleClosedNodes3=
|
ModuleClosedNodes3=
|
||||||
ModuleClosedNodes4=3,4,5,7,8
|
ModuleClosedNodes4=3,4,5,7,8
|
||||||
ModuleClosedNodes5=
|
ModuleClosedNodes5=
|
||||||
ModuleClosedNodes6=2
|
ModuleClosedNodes6=
|
||||||
ModuleClosedNodes7=1,3
|
ModuleClosedNodes7=2
|
||||||
ModuleClosedNodes8=12,13
|
ModuleClosedNodes8=1,3
|
||||||
ModuleClosedNodes9=1,3,7,12,13,14,15
|
ModuleClosedNodes9=12,13
|
||||||
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
|
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
|
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
|
||||||
|
|||||||
24
B4A/cheklist.bas
Normal file
@@ -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.
|
||||||
@@ -69,6 +69,7 @@ Sub Class_Globals
|
|||||||
Dim server As String
|
Dim server As String
|
||||||
Private p_principal As Panel
|
Private p_principal As Panel
|
||||||
Private Entrar As Button
|
Private Entrar As Button
|
||||||
|
Public checklist As C_Cheklist
|
||||||
Public tabulador As C_tabulador
|
Public tabulador As C_tabulador
|
||||||
Dim batt As Int
|
Dim batt As Int
|
||||||
Dim porVisitar, entregas, rechazos, montoEntregado, montoRechazado As String
|
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)
|
B4XPages.AddPage("Detalle_Promo", detalle_promo)
|
||||||
tabulador.Initialize
|
tabulador.Initialize
|
||||||
B4XPages.AddPage("tabulador", tabulador)
|
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_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 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)")
|
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)")
|
||||||
|
|||||||