diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas
index 31a0be9..0894086 100644
--- a/B4A/B4XMainPage.bas
+++ b/B4A/B4XMainPage.bas
@@ -177,6 +177,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GIRO(GIRO TEXT)")
' Starter.skmt.ExecNonQuery("drop table kmt_info")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS kmt_info (CAT_CL_FOTO BLOB, CAT_CL_NUM_SERIEFISICO TEXT, CAT_CL_MTOCOMPRA TEXT, CAT_CL_CEDIS TEXT, CAT_CL_LAT TEXT, CAT_CL_LONG TEXT, CAT_CL_FBAJA TEXT, CAT_CL_FALTA TEXT, CAT_CL_CP TEXT, CAT_CL_EDO TEXT, CAT_CL_MUNI TEXT, CAT_CL_COLONIA TEXT, CAT_CL_CALLE2 TEXT, CAT_CL_CALLE1 TEXT, CAT_CL_NOINT TEXT, CAT_CL_NOEXT TEXT, CAT_CL_CALLE TEXT, CAT_CL_EMAIL TEXT, CAT_CL_TELEFONO TEXT, CAT_CL_ATIENTE2 TEXT, CAT_CL_ATIENDE1 TEXT, CAT_CL_NOMBRE TEXT, CAT_CL_GIRO TEXT, CAT_CL_DIAS_VISITA TEXT, CAT_CL_TIPO_RUTA TEXT, CAT_CL_RUTA TEXT, CAT_CL_CODIGO TEXT, gestion NUMERIC, CAT_CL_DIASEMANA TEXT, CAT_CL_SECUENCIA INT)")
+ Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VENDIDOS(ID TEXT)")
Subs.agregaColumna("PEDIDO", "PE_ENVIO_OK", "TEXT")
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "CAT_CL_DIASEMANA" en la tabla
c=Starter.skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('kmt_info') WHERE name='CAT_CL_DIASEMANA'")
@@ -281,6 +282,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End Sub
Sub B4XPage_Appear
+
If Starter.muestraProgreso = 1 Then
muestraProgreso("Descargando actualización")
Starter.muestraProgreso = 0
@@ -326,26 +328,26 @@ Sub B4XPage_Appear
'Obtenemos el usuario registrado
' CallSubDelayed(FirebaseMessaging, "SubscribeToTopics")
dameUsuario
- If Not(CheckNotificationAccess) Then
- Msgbox2Async($"Se necesita acceso a las notificaciones, haga clic en "Aceptar" y en la siguiente pantalla permita el acceso a la aplicación "${Application.LabelName}"."$, "Permisos necesarios", "Aceptar", "Cancelar", "", Null, True)
- Wait For Msgbox_Result (resultado As Int)
- If resultado = DialogResponse.POSITIVE Then
- Dim In As Intent
- In.Initialize("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS", "")
- StartActivity(In)
- End If
-' Private cd1 As ColorDrawable
-' cd1.Initialize(Colors.red, 10dip)
-' b_notifAccess.Background = cd1
-' b_notifAccess.TextColor = Colors.White
-' b_notifAccess.Text = "Activar Permisos"
- Else
-' Private cd1 As ColorDrawable
-' cd1.Initialize(Colors.RGB(109, 221, 101), 10dip)
-' b_notifAccess.Background = cd1
-' b_notifAccess.TextColor = Colors.White
-' b_notifAccess.Text = "Permisos Activos"
- End If
+' If Not(CheckNotificationAccess) Then
+' Msgbox2Async($"Se necesita acceso a las notificaciones, haga clic en "Aceptar" y en la siguiente pantalla permita el acceso a la aplicación "${Application.LabelName}"."$, "Permisos necesarios", "Aceptar", "Cancelar", "", Null, True)
+' Wait For Msgbox_Result (resultado As Int)
+' If resultado = DialogResponse.POSITIVE Then
+' Dim In As Intent
+' In.Initialize("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS", "")
+' StartActivity(In)
+' End If
+'' Private cd1 As ColorDrawable
+'' cd1.Initialize(Colors.red, 10dip)
+'' b_notifAccess.Background = cd1
+'' b_notifAccess.TextColor = Colors.White
+'' b_notifAccess.Text = "Activar Permisos"
+' Else
+'' Private cd1 As ColorDrawable
+'' cd1.Initialize(Colors.RGB(109, 221, 101), 10dip)
+'' b_notifAccess.Background = cd1
+'' b_notifAccess.TextColor = Colors.White
+'' b_notifAccess.Text = "Permisos Activos"
+' End If
' ks.Initialize(Me, "ks")
' ks.vacuum
' ks.centraEtiqueta(l_version, Root.Width)
@@ -664,20 +666,20 @@ Sub copiaDB
If Result Then
' Private x As String
' If File.ExternalWritable Then
-' x = File.DirRootExternal
+' x = File.DirInternal
' Else
' x = File.DirInternal
' End If
Dim theDir As String
Try
- File.MakeDir(File.DirRootExternal,"kmts")
+ File.MakeDir(File.DirInternal,"kmts")
theDir = "/kmts"
Catch
theDir = ""
End Try
Try
- File.Copy(File.DirInternal,"kmt.db",File.DirRootExternal&theDir, "mariana_kmt.db")
- ToastMessageShow("Listo, copiado a " & File.DirRootExternal&theDir & "/mariana_kmt.db", False)
+ File.Copy(File.DirInternal,"kmt.db",File.DirInternal&theDir, "mariana_kmt.db")
+ ToastMessageShow("Listo, copiado a " & File.DirInternal&theDir & "/mariana_kmt.db", False)
Catch
ToastMessageShow("No se pudo hacer la copia: "&LastException, True)
End Try
diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas
index 7f2198e..a4ecc76 100644
--- a/B4A/C_Cliente.bas
+++ b/B4A/C_Cliente.bas
@@ -150,7 +150,7 @@ End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
- B4XPages.SetTitle(Me, $"${subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
+ B4XPages.SetTitle(Me, $"${Subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
Root = Root1
'load the layout to Root
' Activity.RemoveAllViews
@@ -194,6 +194,13 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
+ Tels.Enabled = True
+ gest.Enabled = True
+ c = Starter.skmt.ExecQuery("SELECT ID FROM VENDIDOS WHERE ID IN (Select cuenta from cuentaa)")
+ If c.RowCount > 0 Then
+ Tels.Enabled = False
+ gest.Enabled = False
+ End If
reqManager.Initialize(Me, Starter.DBReqServer)
' Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
' Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
@@ -227,7 +234,12 @@ Sub B4XPage_Appear
Label20.Text = c.GetString("CAT_CL_CP")
l_calle1.Text = c.GetString("CAT_CL_CALLE1")
TELEFONO = c.GetString("CAT_CL_TELEFONO")
+ If s.GetString("TOTAL_CLIE") = Null Then
+ l_total.Text = "0"
+ Else
l_total.Text = s.GetString("TOTAL_CLIE")
+
+ End If
total_cliente = s.GetString("TOTAL_CLIE")
Private factura As String = 0
If s.GetString("PC_FACTURA") <> Null And IsNumber(s.GetString("PC_FACTURA")) Then factura = s.GetString("PC_FACTURA")
@@ -431,62 +443,76 @@ Sub DATOS_Click
B4XPages.ShowPage("telefonos")
End Sub
-Sub Guardar_Click
- DateTime.DateFormat = "MM/dd/yyyy"
- sDate=DateTime.Date(DateTime.Now)
- sTime=DateTime.Time(DateTime.Now)
- c=skmt.ExecQuery("Select CUENTA from cuentaa")
- c.Position=0
- clie_id = c.GetString("CUENTA")
- c.Close
- c=skmt.ExecQuery("select USUARIO from usuarioa")
- c.Position=0
- usuario = c.GetString("USUARIO")
- c.Close
- c = skmt.ExecQuery("Select sum(pe_costo_tot) As TOTAL_CLIE, SUM(PE_CANT) As CANT_CLIE, COUNT(*) As CUANTOS, PC_ENVIO_OK FROM PEDIDO left join PEDIDO_CLIENTE Where pc_cliente = pe_cliente And PE_CLIENTE IN (Select cuenta from cuentaa)")
- c.Position=0
- If c.GetString("CUANTOS") > 0 Then
- Private cbFactura As Int = 0
- If cb_factura.Checked Then cbFactura = 1
- skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
- skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
- skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_ENVIO_OK, PC_FACTURA) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"), c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps, c.GetString("PC_ENVIO_OK"), cbFactura))
- skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- End If
- c.Close
- DateTime.TimeFormat = "HHmmss"
- sTime=DateTime.Time(DateTime.Now)
- skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
- ' skmt.ExecNonQuery("UPDATE HIST_STAY_STORE set HSS_TOT = HSS_OUT - HSS_IN where HSS_CODIGO In (select cuenta from cuentaa)")
- Try
- c=skmt.ExecQuery("Select (substr(HSS_OUT,1,2) - substr(HSS_IN,1,2)) - Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then 1 Else 0 end HORAS_TOTALES, " & _
+Sub Guardar_Click
+ If l_total.Text = "0" Or l_total.Text = Null Then
+ B4XPages.ShowPage("Principal")
+ Else
+ c = Starter.skmt.ExecQuery("SELECT ID FROM VENDIDOS WHERE ID IN (Select cuenta from cuentaa)")
+ If c.RowCount > 0 Then
+ B4XPages.ShowPage("Principal")
+ Else
+
+ res = Msgbox2("Seguro que desea cerrar el pedido? no se podran hacer cambios una vez guardada la venta!!!","Atención", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
+ If res = DialogResponse.POSITIVE Then
+
+ DateTime.DateFormat = "MM/dd/yyyy"
+ sDate=DateTime.Date(DateTime.Now)
+ sTime=DateTime.Time(DateTime.Now)
+ c=skmt.ExecQuery("Select CUENTA from cuentaa")
+ c.Position=0
+ clie_id = c.GetString("CUENTA")
+ c.Close
+ c=skmt.ExecQuery("select USUARIO from usuarioa")
+ c.Position=0
+ usuario = c.GetString("USUARIO")
+ c.Close
+ c = skmt.ExecQuery("Select sum(pe_costo_tot) As TOTAL_CLIE, SUM(PE_CANT) As CANT_CLIE, COUNT(*) As CUANTOS, PC_ENVIO_OK FROM PEDIDO left join PEDIDO_CLIENTE Where pc_cliente = pe_cliente And PE_CLIENTE IN (Select cuenta from cuentaa)")
+ c.Position=0
+ If c.GetString("CUANTOS") > 0 Then
+ Private cbFactura As Int = 0
+ If cb_factura.Checked Then cbFactura = 1
+ skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
+ skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
+ skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_ENVIO_OK, PC_FACTURA) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"), c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps, c.GetString("PC_ENVIO_OK"), cbFactura))
+ skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ End If
+ c.Close
+ DateTime.TimeFormat = "HHmmss"
+ sTime=DateTime.Time(DateTime.Now)
+ skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_OUT = ? where HSS_OUT = 0 AND HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(sTime))
+ ' skmt.ExecNonQuery("UPDATE HIST_STAY_STORE set HSS_TOT = HSS_OUT - HSS_IN where HSS_CODIGO In (select cuenta from cuentaa)")
+ Try
+ c=skmt.ExecQuery("Select (substr(HSS_OUT,1,2) - substr(HSS_IN,1,2)) - Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then 1 Else 0 end HORAS_TOTALES, " & _
"Case when (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) < 0 Then (substr(HSS_OUT,3,2) + 60 - substr(HSS_IN,3,2)) " & _
" Else (substr(HSS_OUT,3,2) - substr(HSS_IN,3,2)) End - Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then 1 Else 0 end MINUTOS_TOTALES, " & _
"Case when (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) < 0 Then (substr(HSS_OUT,5,2) + 60 - substr(HSS_IN,5,2)) " & _
" Else (substr(HSS_OUT,5,2) - substr(HSS_IN,5,2)) end SEGUNDOS_TOTALES " & _
" from HIST_STAY_STORE where HSS_CODIGO In (Select cuenta from cuentaa) ")
- c.Position = 0
- stay_hh = c.GetString("HORAS_TOTALES") * 60 * 60
- stay_mi = c.GetString("MINUTOS_TOTALES") * 60
- stay_ss = c.GetString("SEGUNDOS_TOTALES")
- skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
- skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
- c.Close
- Catch
- ToastMessageShow(".",True)
- End Try
+ c.Position = 0
+ stay_hh = c.GetString("HORAS_TOTALES") * 60 * 60
+ stay_mi = c.GetString("MINUTOS_TOTALES") * 60
+ stay_ss = c.GetString("SEGUNDOS_TOTALES")
+ skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
+ skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
+ c.Close
+ Catch
+ ToastMessageShow(".",True)
+ End Try
- skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, la_cuenta.Text))
+ skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, la_cuenta.Text))
' LogColor($"actualizamos "${la_cuenta.text}, hora_final=${DateTime.now}"$,Colors.Red)
- Subs.actualizaTET(la_cuenta.text)
- DateTime.TimeFormat = "HH:mm:ss"
+ Subs.actualizaTET(la_cuenta.text)
+ DateTime.TimeFormat = "HH:mm:ss"
+ skmt.ExecNonQuery2("insert into VENDIDOS(ID) VALUES(?)",Array As String(clie_id))
+ mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
- mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
-
- B4XPages.MainPage.productos.reiniciarlistaProds = True
- B4XPages.MainPage.productos.prodsMap.Initialize
- B4XPages.MainPage.promos.promosMap.Initialize
- B4XPages.ShowPage("Principal")
+ B4XPages.MainPage.productos.reiniciarlistaProds = True
+ B4XPages.MainPage.productos.prodsMap.Initialize
+ B4XPages.MainPage.promos.promosMap.Initialize
+ B4XPages.ShowPage("Principal")
+ End If
+ End If
+ End If
End Sub
Sub NUEVO_Click
diff --git a/B4A/C_Nota.bas b/B4A/C_Nota.bas
index 95ad48f..8bc9c95 100644
--- a/B4A/C_Nota.bas
+++ b/B4A/C_Nota.bas
@@ -43,7 +43,7 @@ End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
- B4XPages.SetTitle(Me, $"${subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
+ B4XPages.SetTitle(Me, $"${Subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
Root = Root1
ruta = File.DirInternal
Root.LoadLayout("nota")
@@ -129,66 +129,77 @@ Private Sub B4XPage_CloseRequest As ResumableSub
End Sub
Sub borra_Click
- If folio <> "" Then
- result = Msgbox2("Seguro que desea borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
- If result = DialogResponse.POSITIVE Then
- c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ")
- If c.RowCount>0 Then
- For i=0 To c.RowCount -1
- c.Position=i
- Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID")))
- Starter.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
- Next
+ c = Starter.skmt.ExecQuery("SELECT ID FROM VENDIDOS WHERE ID IN (Select cuenta from cuentaa)")
+ If c.RowCount = 0 Then
+
+ If folio <> "" Then
+ result = Msgbox2("Seguro que desea borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
+ If result = DialogResponse.POSITIVE Then
+ c=Starter.skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ")
+ If c.RowCount>0 Then
+ For i=0 To c.RowCount -1
+ c.Position=i
+ Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID")))
+ Starter.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
+ Next
+ End If
+ Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
+ Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
+ Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ B4XPage_Appear
End If
- Starter.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
- Starter.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
- Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- B4XPage_Appear
+ Else
+ Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore
End If
Else
- Msgbox("CLIENTE YA SE TRANSMITIO, FAVOR DE LLAMAR A SOPORTE PARA ASISTENCIA","AVISO") 'ignore
+ MsgboxAsync("La venta fue enviada, no se puede eliminar","Atnción")
End If
End Sub
Sub ListView1_ItemLongClick (Position As Int, Value As Object)
- If Not(Subs.pedidoGuardado) Then
- result = Msgbox2("Seguro que desea borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
- If result = DialogResponse.POSITIVE Then
- c=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT FROM PEDIDO where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa) ", Array As String(Value))
- c.Position=0
- Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID")))
- Starter.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
- c.Close
- c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value))
- c.Position=0
- If c.GetString("CUANTOS") > 0 Then
- Starter.skmt.ExecNonQuery2("delete from pedido where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
- Else
- Starter.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
+ c = Starter.skmt.ExecQuery("SELECT ID FROM VENDIDOS WHERE ID IN (Select cuenta from cuentaa)")
+ If c.RowCount = 0 Then
+ If Not(Subs.pedidoGuardado) Then
+ result = Msgbox2("Seguro que desea borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
+ If result = DialogResponse.POSITIVE Then
+ c=Starter.skmt.ExecQuery2("select PE_PROID,PE_CANT FROM PEDIDO where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa) ", Array As String(Value))
+ c.Position=0
+ Starter.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(c.GetString("PE_CANT"),c.GetString("PE_PROID")))
+ Starter.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
+ c.Close
+ c=Starter.skmt.ExecQuery2("select count(*) AS CUANTOS from cat_gunaprod where CAT_GP_ID in (select pe_cedis from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)) and CAT_GP_CLASIF = 'PROMOS' AND CAT_GP_TIPO = 'PROMOS' AND CAT_GP_SUBTIPO = 'PROMOS'", Array As String(Value))
+ c.Position=0
+ If c.GetString("CUANTOS") > 0 Then
+ Starter.skmt.ExecNonQuery2("delete from pedido where pe_cedis in (select pe_cedis from pedido where pe_pronombre = ?) and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
+ Else
+ Starter.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
+ End If
+ DateTime.DateFormat = "MM/dd/yyyy"
+ sDate=DateTime.Date(DateTime.Now)
+ sTime=DateTime.Time(DateTime.Now)
+ c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa")
+ c.Position=0
+ clie_id = c.GetString("CUENTA")
+ c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
+ c.Position=0
+ usuario = c.GetString("USUARIO")
+ c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
+ c.Position=0
+ If c.GetString("CUANTOS") > 0 Then
+ Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
+ Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps))
+ Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ Else
+ Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
+ Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
+ End If
+ B4XPage_Appear
End If
- DateTime.DateFormat = "MM/dd/yyyy"
- sDate=DateTime.Date(DateTime.Now)
- sTime=DateTime.Time(DateTime.Now)
- c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa")
- c.Position=0
- clie_id = c.GetString("CUENTA")
- c=Starter.skmt.ExecQuery("select USUARIO from usuarioa")
- c.Position=0
- usuario = c.GetString("USUARIO")
- c=Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, count(*) as CUANTOS FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
- c.Position=0
- If c.GetString("CUANTOS") > 0 Then
- Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
- Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), B4XPages.MainPage.lon_gps, B4XPages.MainPage.lat_gps))
- Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- Else
- Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
- Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
- End If
- B4XPage_Appear
+ Else
+ ToastMessageShow("El pedido ya fue guardado, no se puden borrar productos.", True)
End If
Else
- ToastMessageShow("El pedido ya fue guardado, no se puden borrar productos.", True)
+ MsgboxAsync("La venta fue enviada, no se puede eliminar","Atnción")
End If
End Sub
diff --git a/B4A/C_NuevoCliente.bas b/B4A/C_NuevoCliente.bas
index 11531ed..e00c27b 100644
--- a/B4A/C_NuevoCliente.bas
+++ b/B4A/C_NuevoCliente.bas
@@ -52,7 +52,7 @@ End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
- B4XPages.SetTitle(Me, $"${subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
+ B4XPages.SetTitle(Me, $"${Subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
Root = Root1
'load the layout to Root
Root.LoadLayout("nuevocliente")
@@ -63,23 +63,37 @@ Private Sub B4XPage_Created (Root1 As B4XView)
' skmt.Initialize(ruta,"kmt.db", True)
' p_camara.Height = Root.Height
' p_camara.Width = Root.Width
+ Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
+ Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
+ If Result Then
+' camEx2.Initialize(p_cam, frontCamera, Me, "Camera1")
+' frontCamera = camEx2.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
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
- Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
- Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
- If Result Then
- camEx2.Initialize(p_cam, frontCamera, Me, "Camera1")
- frontCamera = camEx2.Front
- Log("inicializamos Camara")
- Else
- ToastMessageShow("No permission!!!", True)
- End If
E_NOMBRE.Text = ""
-
If Not(Starter.gps.GPSEnabled) Then
ToastMessageShow("Es necesario tener el GPS encendido", True)
StartActivity(Starter.gps.LocationSettingsIntent)
@@ -95,11 +109,10 @@ Sub B4XPage_Appear
Subs.centraEtiqueta(b_ubicacion, Root.Width)
Subs.centraPanel(p_botones, Root.Width)
E_NOMBRE.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
-
et_direccion.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
If B4XPages.MainPage.lat_gps <> "0.0" Then
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.
- l_sinUbicacion.Visible = False
+ l_sinUbicacion.Visible = True
End If
If Not(Starter.GPS.GPSEnabled) Then
@@ -124,7 +137,6 @@ Sub B4XPage_Appear
End If
giros = "SELECCIONA UNA OPCIÓN"
c.Close
-
End Sub
Sub GPS_LocationChanged (Location1 As Location)
@@ -156,7 +168,7 @@ Sub GUARDA_Click
Else
If et_direccion.Text.Length > 3 Then
If lat <> 0 Then
- If fototomada <> "0" Then
+' If fototomada <> "0" Then
If giros <> "SELECCIONA UNA OPCIÓN" Or cb_giro.SelectedItem <> "SELECCIONA UNA OPCIÓN" Then
DateTime.DateFormat = "MM/dd/yyyy"
DateTime.Timeformat = "HHmmss"
@@ -189,7 +201,7 @@ Sub GUARDA_Click
c.Position = 0
usuario = c.GetString("USUARIO")
c.Close
- Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA, NOM_FOTO) VALUES(?,?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta, fototomada))
+ Starter.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA) VALUES(?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta))
Starter.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_LAT,NV_LON,NV_NOMBRE,NV_DIRECCION) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (no_cliente,sDate & sTime, usuario, "NUEVO CLIENTE", lat, lon, E_NOMBRE.Text,et_direccion.Text))
DateTime.DateFormat = "dd/MM/yyyy"
@@ -197,8 +209,8 @@ Sub GUARDA_Click
sDate2=DateTime.Date(DateTime.Now)
sTime2=DateTime.Time(DateTime.Now)
- Starter.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_ALMACEN, CN_RUTA, CN_GIRO) VALUES (?,?,?,?,?,?,?,?,?,?,?)",Array As String(no_cliente,sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text,et_direccion.Text, fototomada, ALMACEN, no_ruta,cb_giro.SelectedItem))
- fototomada = "0"
+ Starter.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_RUTA, CN_GIRO) VALUES (?,?,?,?,?,?,?,?,?,?)",Array As String(no_cliente,sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text,et_direccion.Text, ALMACEN, no_ruta,cb_giro.SelectedItem))
+' fototomada = "0"
B4XPages.ShowPage("Principal")
CallSubDelayed(Tracker, "StartFLP")
@@ -206,9 +218,9 @@ Sub GUARDA_Click
MsgboxAsync("Por favor captura el giro del cliente","Atención")
End If
- Else
- MsgboxAsync("Por favor captura la foto del cliente","Atención")
- End If
+' Else
+' MsgboxAsync("Por favor captura la foto del cliente","Atención")
+' End If
Else
MsgboxAsync("Por favor revisa que tengas señal GPS","Atención")
End If
@@ -219,6 +231,7 @@ Sub GUARDA_Click
End Sub
+
Private Sub p_nuevoCliente_Click
End Sub
diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas
index 45ecb06..ca57fab 100644
--- a/B4A/C_Principal.bas
+++ b/B4A/C_Principal.bas
@@ -518,7 +518,7 @@ Sub Subir_Click
PASO = 1
'End If
If PASO =1 Then
- Starter.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") )
+ Starter.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As String("N/A") )
Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)")
c=Starter.skmt.ExecQuery("select usuario from usuarioa")
c.Position = 0
@@ -650,10 +650,24 @@ Sub Subir_Click
c.Position = i
Log(File.Exists(Dirp&Dir&Dir2,c.GetString("CN_FOTO")))
If File.Exists(Dirp&Dir&Dir2,c.GetString("CN_FOTO")) Then fotocn = Bit.InputStreamToBytes(File.OpenInput(Dirp&Dir,c.GetString("CN_FOTO")))
+ Dim dia As Int = DateTime.GetDayOfWeek(DateTime.Now)
+ If dia = 2 Then
+ Dim dialetra As String = "LUNES"
+ Else If dia = 3 Then
+ Dim dialetra As String = "MARTES"
+ Else If dia = 4 Then
+ Dim dialetra As String = "MIERCOLES"
+ Else If dia = 5 Then
+ Dim dialetra As String = "JUEVES"
+ Else If dia = 6 Then
+ Dim dialetra As String = "VIERNES"
+ Else If dia = 7 Then
+ Dim dialetra As String = "SABADO"
+ End If
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "insert_clientesnuevos_MARDS"
- cmd.Parameters = Array As Object(c.GetString("CN_ID"), c.GetString("CN_FECHA"), c.GetString("CN_USER"), c.GetString("CN_LAT"), c.GetString("CN_LON"), c.GetString("CN_NOMBRE"), c.GetString("CN_DIRECCION"),c.GetString("CN_ALMACEN"), c.GetString("CN_RUTA"), fotocn, "EN ESPERA",c.GetString("CN_GIRO"))
+ cmd.Parameters = Array As Object(c.GetString("CN_ID"), c.GetString("CN_FECHA"), c.GetString("CN_USER"), c.GetString("CN_LAT"), c.GetString("CN_LON"), c.GetString("CN_NOMBRE"), c.GetString("CN_DIRECCION"),ALMACEN, c.GetString("CN_RUTA"), fotocn, "En espera",c.GetString("CN_GIRO"),dialetra)
reqManager.ExecuteCommand(cmd , "inst_clientesn")
Next
End If
@@ -1870,6 +1884,7 @@ Sub e_ruta_EnterPressed
Starter.skmt.ExecNonQuery("DELETE FROM HIST_CODIGO_BARRAS")
Starter.skmt.ExecNonQuery("DELETE FROM HIST_FOTO_CLIENTE")
Starter.skmt.ExecNonQuery("DELETE FROM CLIENTES_NUEVOS")
+ Starter.skmt.ExecNonQuery("DELETE FROM VENDIDOS")
B4XPage_Appear
End If
End If
diff --git a/B4A/C_Productos.bas b/B4A/C_Productos.bas
index 59a74ae..ed1eecc 100644
--- a/B4A/C_Productos.bas
+++ b/B4A/C_Productos.bas
@@ -91,7 +91,7 @@ End Sub
'This event will be called once, before the page becomes visible.
Private Sub B4XPage_Created (Root1 As B4XView)
- B4XPages.SetTitle(Me, $"${subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
+ B4XPages.SetTitle(Me, $"${Subs.capitalizar(B4XPages.GetPageId(Me))} - ${Application.VersionName}"$)
Root = Root1
'load the layout to Root
' Activity.RemoveAllViews
@@ -491,7 +491,7 @@ Sub b_prodMenos_Click
Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id")
Private tmpMap As Map = CreateMap("precio":precio, "cant":laCant.Text, "almacen":Subs.traeAlmacen)
' Log(tmpMap)
- prodsMap.Put(id, tmpMap)
+' prodsMap.Put(id, tmpMap)
If laCant.Text = 0 Then prodsMap.Remove(id)
' LogColor("prodsMap="&prodsMap, Colors.blue)
' (Subs.traeAlmacen, p1.Get("precio"), p1.Get("cant"), pn, p, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, B4XPages.MainPage.tipo_venta)
@@ -513,7 +513,7 @@ Sub b_prodMas_Click
If laCant.Text = "" Then laCant.Text = 0
If laCant.Text + 1 <= inv Then
- Log(NumberFormat2(laCant.Text+1,0,0,0,False))
+' Log(NumberFormat2(laCant.Text+1,0,0,0,False))
laCant.Text = $"${NumberFormat2(laCant.Text+1,0,0,0,False)}"$
' Private precio As String=clv_prods_ll.GetValue(index).As(Map).Get("precio")
Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id")
@@ -585,7 +585,7 @@ End Sub
Sub b_terminar1_Click
' Log("b_terminar1_Click")
' ya_entro = "0" : Log("ya_entro=1")
- Starter.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") )
+ Starter.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As String("N/A") )
lv_promos.Visible = False
clv_prods_ll.AsView.Visible = False
diff --git a/B4A/C_RespaldoDiario.bas b/B4A/C_RespaldoDiario.bas
index cf0baaf..787fc0c 100644
--- a/B4A/C_RespaldoDiario.bas
+++ b/B4A/C_RespaldoDiario.bas
@@ -17,7 +17,7 @@ End Sub
'You can add more parameters here.
Public Sub Initialize As Object
' Log("************************** " & safePath)
- Dim Dirp As String = File.DirRootExternal
+ Dim Dirp As String = File.DirInternal
Dim Dir As String
' Dim Dir2 As String
Try
diff --git a/B4A/C_Subs.bas b/B4A/C_Subs.bas
index 9d45150..7e65b43 100644
--- a/B4A/C_Subs.bas
+++ b/B4A/C_Subs.bas
@@ -155,7 +155,7 @@ Sub guardaInfoEnArchivo(coords As String) 'ignore
DateTime.DateFormat=OrigFormat 'return to orig date format
Dim ubic As String = coords&","&lastUpdate
- Dim out As OutputStream = File.OpenOutput(File.DirRootExternal, "gps.txt", True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal, "gps.txt", True)
Dim s As String = ubic & CRLF
Dim t() As Byte = s.GetBytes("UTF-8")
out.WriteBytes(t, 0, t.Length)
@@ -315,7 +315,7 @@ Sub copiaDB(result As Boolean) 'ignore
If result Then
Dim p As String
If File.ExternalWritable Then
- p = File.DirRootExternal
+ p = File.DirInternal
' Log("Externo")
Else
p = File.DirInternal
@@ -323,21 +323,21 @@ Sub copiaDB(result As Boolean) 'ignore
End If
Dim theDir As String
Try
- File.MakeDir(File.DirRootExternal,"kmts")
+ File.MakeDir(File.DirInternal,"kmts")
theDir = "/kmts"
Catch
theDir = ""
End Try
Try
- File.Copy(File.DirInternal,"kmt.db",File.DirRootExternal&theDir,"cedex_kmt.db")
- File.Copy(File.DirInternal,"errorLog.db",File.DirRootExternal&theDir,"cedex_errorLog.db")
+ File.Copy(File.DirInternal,"kmt.db",File.DirInternal&theDir,"cedex_kmt.db")
+ File.Copy(File.DirInternal,"errorLog.db",File.DirInternal&theDir,"cedex_errorLog.db")
ToastMessageShow("BD copiada!", False)
Catch
ToastMessageShow("No se pudo hacer la copia: "&LastException, True)
End Try
Log("rootExternal="&p)
Log("File.DirInternal="&File.DirInternal)
- Log("File.DirRootExternal="&File.DirRootExternal)
+ Log("File.DirInternal="&File.DirInternal)
Else
ToastMessageShow("Sin permisos", False)
End If
diff --git a/B4A/CameraExClass2.bas b/B4A/CameraExClass2.bas
index 76b54bc..cf3a43e 100644
--- a/B4A/CameraExClass2.bas
+++ b/B4A/CameraExClass2.bas
@@ -51,7 +51,7 @@ Private Sub FindCamera (frontCamera As Boolean) As CameraInfoAndId
Array As String("java.lang.int", "android.hardware.Camera$CameraInfo"))
r.target = cameraInfo
Log("facing: " & r.GetField("facing") & ", " & cameraValue)
- If r.GetField("facing") = cameraValue Then 'ignore
+ If r.GetField("facing") = cameraValue Then
ci.cameraInfo = r.target
ci.Id = i
Return ci
@@ -144,8 +144,8 @@ End Sub
Public Sub CommitParameters
'Try
- r.target = nativeCam
- r.RunMethod4("setParameters", Array As Object(parameters), Array As String("android.hardware.Camera$Parameters"))
+ r.target = nativeCam
+ r.RunMethod4("setParameters", Array As Object(parameters), Array As String("android.hardware.Camera$Parameters"))
'Catch
' ToastMessageShow("Error setting parameters.", True)
' Log(LastException)
@@ -277,24 +277,24 @@ Public Sub PreviewImageToJpeg(data() As Byte, quality As Int) As Byte()
End Sub
Public Sub GetSupportedFocusModes As List
- r.target = parameters
- Return r.RunMethod("getSupportedFocusModes")
+ r.target = parameters
+ Return r.RunMethod("getSupportedFocusModes")
End Sub
Public Sub SetContinuousAutoFocus
- Dim modes As List = GetSupportedFocusModes
- If modes.IndexOf("continuous-picture") > -1 Then
- SetFocusMode("continuous-picture")
- Else If modes.IndexOf("continuous-video") > -1 Then
- SetFocusMode("continuous-video")
- Else
- Log("Continuous focus mode is not available")
- End If
+ Dim modes As List = GetSupportedFocusModes
+ If modes.IndexOf("continuous-picture") > -1 Then
+ SetFocusMode("continuous-picture")
+ Else If modes.IndexOf("continuous-video") > -1 Then
+ SetFocusMode("continuous-video")
+ Else
+ Log("Continuous focus mode is not available")
+ End If
End Sub
Public Sub SetFocusMode(Mode As String)
- r.target = parameters
- r.RunMethod2("setFocusMode", Mode, "java.lang.String")
+ r.target = parameters
+ r.RunMethod2("setFocusMode", Mode, "java.lang.String")
End Sub
Public Sub GetFocusDistances As Float()
@@ -306,7 +306,7 @@ End Sub
Public Sub GetSupportedPictureFormats As List
r.target = parameters
- Return r.RunMethod("getSupportedPictureFormats")
+ Return r.RunMethod("getSupportedPictureFormats")
End Sub
'This method should only be called if you need to immediately release the camera.
'For example if you need to start another application that depends on the camera.
@@ -330,23 +330,23 @@ Private Sub Camera_FocusDone (Success As Boolean)
End Sub
Public Sub IsZoomSupported As Boolean
- r.target = parameters
- Return r.RunMethod("isZoomSupported")
+ r.target = parameters
+ Return r.RunMethod("isZoomSupported")
End Sub
Public Sub GetMaxZoom As Int
- r.target = parameters
- Return r.RunMethod("getMaxZoom")
+ r.target = parameters
+ Return r.RunMethod("getMaxZoom")
End Sub
Public Sub getZoom() As Int
- r.target = parameters
- Return r.RunMethod("getZoom")
+ r.target = parameters
+ Return r.RunMethod("getZoom")
End Sub
Public Sub setZoom(ZoomValue As Int)
- r.target = parameters
- r.RunMethod2("setZoom", ZoomValue, "java.lang.int")
+ r.target = parameters
+ r.RunMethod2("setZoom", ZoomValue, "java.lang.int")
End Sub
Public Sub getExposureCompensation As Int
diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal
index 3b951bb..8e250a7 100644
Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ
diff --git a/B4A/Files/nuevocliente.bal b/B4A/Files/nuevocliente.bal
index 7743568..0852a50 100644
Binary files a/B4A/Files/nuevocliente.bal and b/B4A/Files/nuevocliente.bal differ
diff --git a/B4A/Files/principal.bal b/B4A/Files/principal.bal
index d8da171..0adc930 100644
Binary files a/B4A/Files/principal.bal and b/B4A/Files/principal.bal differ
diff --git a/B4A/Mariana.b4a b/B4A/Mariana.b4a
index 79a573d..9fed810 100644
--- a/B4A/Mariana.b4a
+++ b/B4A/Mariana.b4a
@@ -996,33 +996,42 @@ FileGroup97=Default Group
FileGroup98=Default Group
FileGroup99=Default Group
Group=Default Group
-Library1=appupdating
-Library10=fileprovider
-Library11=fusedlocationprovider
-Library12=googlemaps
-Library13=googlemapsextras
-Library14=gps
-Library15=javaobject
-Library16=json
-Library17=phone
-Library18=preoptimizedclv
-Library19=randomaccessfile
-Library2=b4xpages
-Library20=replyauto
-Library21=serial
-Library22=sql
-Library23=togglelibrary
-Library24=xcustomlistview
-Library25=xui
-Library26=contentresolver
-Library3=baqrcode
-Library4=batteryprogressview
-Library5=bitmapcreator
-Library6=byteconverter
-Library7=camera
-Library8=compressstrings
-Library9=core
-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~AddApplicationText(~\n~)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddApplicationText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\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~'//////////////////////////////////////////////////////~\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~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~AddApplicationText(~\n~~\n~ ~\n~ )~\n~ ~\n~ AddManifestText(~\n~ ~\n~ )~\n~ ~\n~
+Library1=accessibility
+Library10=compressstrings
+Library11=contentresolver
+Library12=core
+Library13=fileprovider
+Library14=firebaseadmob
+Library15=firebasenotifications
+Library16=fusedlocationprovider
+Library17=googlemaps
+Library18=googlemapsextras
+Library19=gps
+Library2=appupdating
+Library20=javaobject
+Library21=json
+Library22=okhttputils2
+Library23=phone
+Library24=preoptimizedclv
+Library25=randomaccessfile
+Library26=reflection
+Library27=replyauto
+Library28=runtimepermissions
+Library29=serial
+Library3=b4xpages
+Library30=sql
+Library31=togglelibrary
+Library32=xcustomlistview
+Library33=xui
+Library34=xui views
+Library35=rspopupmenu
+Library4=baqrcode
+Library5=batteryprogressview
+Library6=bctoast
+Library7=bitmapcreator
+Library8=byteconverter
+Library9=camera
+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~'AddApplicationText(~\n~')~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~''''' CAMBIA LA CLAVE API~\n~AddApplicationText(~\n~~\n~ ~\n~)~\n~AddApplicationText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~)~\n~''CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~ 'End of default text.~\n~ ~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~ AddManifestText(~\n~~\n~)~\n~AddPermission(android.permission.ACCESS_BACKGROUND_LOCATION)~\n~AddManifestText(~\n~~\n~)~\n~AddManifestText(~\n~~\n~) 'in order to access the device non-resettable identifiers such as IMEI and serial number.~\n~~\n~'///////////////////////// FLP Y PUSH /////////////~\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~'//////////////////////////////////////////////////////~\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~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~SetApplicationAttribute(android:largeHeap, "true")~\n~AddPermission("android.permission.MANAGE_EXTERNAL_STORAGE")~\n~AddApplicationText(~\n~~\n~ ~\n~ )~\n~ ~\n~ AddManifestText(~\n~ ~\n~ )~\n~ ~\n~
Module1=appUpdater
Module10=C_NuevoCliente
Module11=C_Pedidos
@@ -1051,14 +1060,14 @@ Module7=C_Mapas
Module8=C_Nota
Module9=C_NoVenta
NumberOfFiles=498
-NumberOfLibraries=26
+NumberOfLibraries=35
NumberOfModules=27
Version=12.5
@EndOfDesignText@
#Region Project Attributes
#ApplicationLabel: Mariana
#VersionCode: 1
- #VersionName: 3.10.24
+ #VersionName: 4.01.29
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False
diff --git a/B4A/Mariana.b4a.meta b/B4A/Mariana.b4a.meta
index e90c2c1..3eec7e0 100644
--- a/B4A/Mariana.b4a.meta
+++ b/B4A/Mariana.b4a.meta
@@ -59,7 +59,7 @@ ModuleClosedNodes1=
ModuleClosedNodes10=
ModuleClosedNodes11=1
ModuleClosedNodes12=
-ModuleClosedNodes13=1
+ModuleClosedNodes13=
ModuleClosedNodes14=2
ModuleClosedNodes15=
ModuleClosedNodes16=
@@ -82,6 +82,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
-NavigationStack=B4XMainPage,i_engrane_Click,699,0,Starter,Process_Globals,17,0,C_Principal,Class_Globals,6,0,B4XMainPage,B4XPage_Created,275,0,C_RespaldoDiario,Initialize,25,0,B4XMainPage,B4XPage_Appear,296,0,B4XMainPage,Entrar_Click,378,0,C_Principal,B4XPage_Created,236,0,B4XMainPage,Class_Globals,22,0,C_Principal,B4XPage_Appear,312,0
+NavigationStack=C_Cliente,B4XPage_Created,176,0,Main,Activity_Create,27,0,C_Clientes,Mods,0,0,C_Cliente,Guardar_Click,466,6,C_Cliente,B4XPage_Appear,191,6,C_Nota,borra_Click,126,0,C_Nota,ListView1_ItemLongClick,159,0,C_Productos,et_pCant_FocusChanged,577,0,C_Productos,b_terminar1_Click,581,1,C_Principal,Subir_Click,514,6
SelectedBuild=0
-VisibleModules=1,2,3,4,5,6,7,8,9,10,12
+VisibleModules=1,2,3,4,5,6,7,8,9,10,12,13
diff --git a/B4A/Subs.bas b/B4A/Subs.bas
index bee5fa7..7516119 100644
--- a/B4A/Subs.bas
+++ b/B4A/Subs.bas
@@ -113,7 +113,7 @@ Sub guardaInfoEnArchivo(coords As String) 'ignore
DateTime.DateFormat=OrigFormat 'return to orig date format
Dim ubic As String = coords&","&lastUpdate
- Dim out As OutputStream = File.OpenOutput(File.DirRootExternal, "gps.txt", True)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal, "gps.txt", True)
Dim s As String = ubic & CRLF
Dim t() As Byte = s.GetBytes("UTF-8")
out.WriteBytes(t, 0, t.Length)
@@ -179,7 +179,7 @@ End Sub
'Borramos el archio "gps.txt"
Sub borramosArchivoGPS 'ignore
- Dim out As OutputStream = File.OpenOutput(File.DirRootExternal, "gps.txt", False)
+ Dim out As OutputStream = File.OpenOutput(File.DirInternal, "gps.txt", False)
Dim s As String = ""
Dim t() As Byte = s.GetBytes("UTF-8")
out.WriteBytes(t, 0, t.Length)
@@ -591,7 +591,7 @@ Sub copiaDB(result As Boolean) 'ignore
If result Then
Dim p As String
If File.ExternalWritable Then
- p = File.DirRootExternal
+ p = File.DirInternal
' Log("Externo")
Else
p = File.DirInternal
@@ -599,21 +599,21 @@ Sub copiaDB(result As Boolean) 'ignore
End If
Dim theDir As String
Try
- File.MakeDir(File.DirRootExternal,"kmts")
+ File.MakeDir(File.DirInternal,"kmts")
theDir = "/kmts"
Catch
theDir = ""
End Try
Try
- File.Copy(File.DirInternal,"kmt.db",File.DirRootExternal&theDir,"cedex_kmt.db")
- File.Copy(File.DirInternal,"errorLog.db",File.DirRootExternal&theDir,"cedex_errorLog.db")
+ File.Copy(File.DirInternal,"kmt.db",File.DirInternal&theDir,"cedex_kmt.db")
+ File.Copy(File.DirInternal,"errorLog.db",File.DirInternal&theDir,"cedex_errorLog.db")
ToastMessageShow("BD copiada!", False)
Catch
ToastMessageShow("No se pudo hacer la copia: "&LastException, True)
End Try
Log("rootExternal="&p)
Log("File.DirInternal="&File.DirInternal)
- Log("File.DirRootExternal="&File.DirRootExternal)
+ Log("File.DirInternal="&File.DirInternal)
Else
ToastMessageShow("Sin permisos", False)
End If