mirror of
https://github.com/KeymonSoft/Guna_Preventa.git
synced 2026-04-20 22:29:21 +00:00
v4.01.09ENC
This commit is contained in:
@@ -5,7 +5,7 @@ Type=Class
|
|||||||
Version=9.85
|
Version=9.85
|
||||||
@EndOfDesignText@
|
@EndOfDesignText@
|
||||||
#Region Shared Files
|
#Region Shared Files
|
||||||
'#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
|
'#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
|
||||||
'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True
|
'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True
|
||||||
'###########################################################################################################
|
'###########################################################################################################
|
||||||
'###################### PULL #############################################################
|
'###################### PULL #############################################################
|
||||||
@@ -94,8 +94,6 @@ Sub Class_Globals
|
|||||||
Private b_envioBD As Button
|
Private b_envioBD As Button
|
||||||
Public Provider As FileProvider
|
Public Provider As FileProvider
|
||||||
Public rutaBDBackup = ""
|
Public rutaBDBackup = ""
|
||||||
Private b_importarBD As Button
|
|
||||||
Private p_botones As Panel
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Public Sub Initialize
|
Public Sub Initialize
|
||||||
@@ -143,8 +141,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
ruta = Starter.ruta
|
ruta = Starter.ruta
|
||||||
Provider.Initialize
|
Provider.Initialize
|
||||||
|
|
||||||
' Subs.borraArribaDe100Errores ' Para Websockets
|
Subs.borraArribaDe100Errores ' Para Websockets
|
||||||
' Subs.borraArribaDe600RenglonesBitacora ' Para Websockets
|
Subs.borraArribaDe600RenglonesBitacora ' Para Websockets
|
||||||
If File.Exists(ruta, "kmt.db") = False Then
|
If File.Exists(ruta, "kmt.db") = False Then
|
||||||
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
|
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
|
||||||
End If
|
End If
|
||||||
@@ -165,14 +163,45 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CODIGO_BARRAS(CODIGOKMTS TEXT, CODIGOB TEXT, LAT TEXT, LON TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CODIGO_BARRAS(CODIGOKMTS TEXT, CODIGOB TEXT, LAT TEXT, LON TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO1(CLIENTE TEXT,ALMACEN TEXT, P1 TEXT, P2 TEXT, P3 TEXT, P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO1(CLIENTE TEXT,ALMACEN TEXT, P1 TEXT, P2 TEXT, P3 TEXT, P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO2 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO2 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO3(CLIENTE TEXT,ALMACEN TEXT, P1 TEXT, P2 TEXT, P3 TEXT, P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT)")
|
|
||||||
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO3(CLIENTE TEXT,ALMACEN TEXT, P1 TEXT, P2 TEXT, P3 TEXT, P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT, P10 TEXT, P11 TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO4 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO4 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO5 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ENCUESTA_MODULO5 (CLIENTE TEXT, ALMACEN TEXT,P1 TEXT, P2 TEXT, P3 TEXT , P4 TEXT, P5 TEXT, P6 TEXT, P7 TEXT, P8 TEXT, P9 TEXT)")
|
||||||
|
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_CLIENTE (HEC_CLIENTE TEXT, HEC_MODULO TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_CLIENTE (HEC_CLIENTE TEXT, HEC_MODULO TEXT)")
|
||||||
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PROMOXRUTA (PR_PROMOID TEXT, PR_CANT TEXT)")
|
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_AVISO_GIRO (HEAV_CLIENTE TEXT, HEAV_MODULO TEXT, HEAV_AVISO TEXT, HEAV_GIRO TEXT)")
|
||||||
|
|
||||||
c = skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_STAY_OUT ")
|
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "P10" en la tabla
|
||||||
|
c=skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('ENCUESTA_MODULO3') WHERE name='P10'")
|
||||||
|
c.Position = 0
|
||||||
|
If c.GetString("fCol") = 0 Then 'Si no esta la columna FECHA la agregamos
|
||||||
|
skmt.ExecNonQuery("ALTER TABLE ENCUESTA_MODULO3 ADD COLUMN P10 TEXT")
|
||||||
|
End If
|
||||||
|
Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch
|
||||||
|
Try
|
||||||
|
skmt.ExecNonQuery("ALTER TABLE ENCUESTA_MODULO3 ADD COLUMN P10 TEXT")
|
||||||
|
Catch
|
||||||
|
Log(LastException)
|
||||||
|
End Try
|
||||||
|
End Try
|
||||||
|
|
||||||
|
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "P11" en la tabla
|
||||||
|
c=skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('ENCUESTA_MODULO3') WHERE name='P11'")
|
||||||
|
c.Position = 0
|
||||||
|
If c.GetString("fCol") = 0 Then 'Si no esta la columna FECHA la agregamos
|
||||||
|
skmt.ExecNonQuery("ALTER TABLE ENCUESTA_MODULO3 ADD COLUMN P11 TEXT")
|
||||||
|
End If
|
||||||
|
Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch
|
||||||
|
Try
|
||||||
|
skmt.ExecNonQuery("ALTER TABLE ENCUESTA_MODULO3 ADD COLUMN P11 TEXT")
|
||||||
|
Catch
|
||||||
|
Log(LastException)
|
||||||
|
End Try
|
||||||
|
End Try
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
c=skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_STAY_OUT ")
|
||||||
C.Position = 0
|
C.Position = 0
|
||||||
If c.GetString("CUANTOS") = 0 Then
|
If c.GetString("CUANTOS") = 0 Then
|
||||||
skmt.ExecNonQuery("INSERT INTO HIST_STAY_OUT(HSO_INI, HSO_FIN) VALUES (0,0)")
|
skmt.ExecNonQuery("INSERT INTO HIST_STAY_OUT(HSO_INI, HSO_FIN) VALUES (0,0)")
|
||||||
@@ -196,8 +225,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
almacen = 0
|
almacen = 0
|
||||||
rutaPreventa = 0
|
rutaPreventa = 0
|
||||||
p_appUpdate.Visible = False
|
p_appUpdate.Visible = False
|
||||||
Subs.centraPanel(p_botones, Root.Width)
|
|
||||||
Subs.guardaAppInfo(skmt)
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub B4XPage_Appear
|
Sub B4XPage_Appear
|
||||||
@@ -607,12 +635,7 @@ Sub i_engrane_Click
|
|||||||
p_appUpdate.Left = (Root.Width/2) - (p_appUpdate.Width/2)
|
p_appUpdate.Left = (Root.Width/2) - (p_appUpdate.Width/2)
|
||||||
lv_server.Clear
|
lv_server.Clear
|
||||||
lv_server.AddSingleLine("http://keymon.lat:1782")
|
lv_server.AddSingleLine("http://keymon.lat:1782")
|
||||||
If user.Text = "KMTS1" Then
|
If user.Text = "KMTS1" Then lv_server.AddSingleLine("http://10.0.0.205:1782")
|
||||||
lv_server.AddSingleLine("http://10.0.0.205:1782")
|
|
||||||
b_importarBD.Visible = True
|
|
||||||
Else
|
|
||||||
b_importarBD.Visible = False
|
|
||||||
End If
|
|
||||||
l_server.Text = Starter.server
|
l_server.Text = Starter.server
|
||||||
Subs.panelVisible(p_appUpdate,0,0)
|
Subs.panelVisible(p_appUpdate,0,0)
|
||||||
p_appUpdate.Height = Root.Height
|
p_appUpdate.Height = Root.Height
|
||||||
@@ -655,18 +678,3 @@ Private Sub b_envioBD_Click
|
|||||||
in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION
|
in.Flags = 1 'FLAG_GRANT_READ_URI_PERMISSION
|
||||||
StartActivity(in)
|
StartActivity(in)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Private Sub b_importarBD_Click
|
|
||||||
Private FH As FileHandler
|
|
||||||
FH.Initialize
|
|
||||||
Wait For (FH.Load) Complete (Result As LoadResult) 'Abre un fileManager para seleccionar la base de datos a importar.
|
|
||||||
File.Copy(Result.Dir, Result.FileName, File.DirInternal, "kmt.db") 'Copia la base de datos seleccionada al directorio interno.
|
|
||||||
skmt.Initialize(Starter.ruta,"kmt.db", True) 'Reiniciliza la base de datos con la recien importada.
|
|
||||||
Private c As Cursor = skmt.ExecQuery("select CAT_VA_VALOR from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'APP_NAME'")
|
|
||||||
If c.RowCount > 1 Then
|
|
||||||
c.Position = 0
|
|
||||||
ToastMessageShow($"BD de ${c.GetString("APP_NAME")} importada!"$, True)
|
|
||||||
Else
|
|
||||||
ToastMessageShow($"¡BD importada!"$, True)
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
1014
B4A/C_Cliente.bas
1014
B4A/C_Cliente.bas
File diff suppressed because it is too large
Load Diff
@@ -132,19 +132,14 @@ Sub borra_Click
|
|||||||
If folio <> "" Then
|
If folio <> "" Then
|
||||||
result = Msgbox2("Seguro que desa borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
|
result = Msgbox2("Seguro que desa borrar el pedido?","Cancelar pedido", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
|
||||||
If result = DialogResponse.POSITIVE Then
|
If result = DialogResponse.POSITIVE Then
|
||||||
c=B4XPages.MainPage.skmt.ExecQuery("select PE_PROID, PE_CANT, PE_CEDIS FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ")
|
c=B4XPages.MainPage.skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ")
|
||||||
If c.RowCount > 0 Then
|
If c.RowCount>0 Then
|
||||||
For i = 0 To c.RowCount -1
|
For i=0 To c.RowCount -1
|
||||||
c.Position=i
|
c.Position=i
|
||||||
B4XPages.MainPage.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")))
|
B4XPages.MainPage.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")))
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
|
||||||
|
|
||||||
'Si es promo, actualizamos la cantidad en PROMOXRUTA.
|
|
||||||
If c.GetString("PE_CEDIS") = c.GetString("PE_PROID") Then B4XPages.MainPage.skmt.ExecNonQuery($"update PROMOXRUTA set PR_CANT = PR_CANT + ${c.GetString("PE_CANT")} where PR_PROMOID = '${c.GetString("PE_PROID")}'"$)
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
|
B4XPages.MainPage.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
|
||||||
@@ -158,45 +153,28 @@ End Sub
|
|||||||
Sub ListView1_ItemLongClick (Position As Int, Value As Object)
|
Sub ListView1_ItemLongClick (Position As Int, Value As Object)
|
||||||
result = Msgbox2("Seguro que desea borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
|
result = Msgbox2("Seguro que desea borrar este articulo?","Borrar Articulo", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
|
||||||
If result = DialogResponse.POSITIVE Then
|
If result = DialogResponse.POSITIVE Then
|
||||||
c = B4XPages.MainPage.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=B4XPages.MainPage.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
|
c.Position=0
|
||||||
B4XPages.MainPage.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")))
|
B4XPages.MainPage.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")))
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN, PROID, CANTIDAD ) VALUES(?,?,?) ", Array As Object (almacen,c.GetString("PE_PROID"),c.GetString("PE_CANT")* -1))
|
B4XPages.MainPage.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.Close
|
||||||
Private cx As Cursor = B4XPages.MainPage.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=B4XPages.MainPage.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))
|
||||||
cx.Position = 0
|
c.Position=0
|
||||||
If cx.GetString("CUANTOS") > 0 Then
|
If c.GetString("CUANTOS") > 0 Then
|
||||||
|
|
||||||
|
|
||||||
Private cy As Cursor = B4XPages.MainPage.skmt.ExecQuery($"SELECT PE_CLIENTE, PE_CEDIS, PE_CANT from PEDIDO where pe_proid in (Select pe_cedis from pedido where pe_proid = '${c.GetString("PE_PROID")}') and pe_cliente in (Select cuenta from cuentaa)"$)
|
|
||||||
Log("------------ PROMOS EN PEDIDO:" & cy.RowCount & " - " & c.GetString("PE_PROID") & " - Value= " & Value)
|
|
||||||
If cy.RowCount > 0 Then
|
|
||||||
cy.Position = 0
|
|
||||||
Subs.guardaPromoXruta(cy.GetString("PE_CEDIS"), (cy.GetString("PE_CANT") * -1))
|
|
||||||
End If
|
|
||||||
|
|
||||||
' Private pc As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select PE_CANT from PEDIDO where PE_CEDIS = '${c.GetString("PE_PROID")}' and PE_PROID = '${c.GetString("PE_PROID")}' and pe_cliente in (Select CUENTA from cuentaa)"$)
|
|
||||||
' Log("------------ PROMOS EN PEDIDO:" & pc.RowCount & " - " & c.GetString("PE_PROID") & " - Value= " & Value)
|
|
||||||
' If pc.RowCount > 0 Then 'Si hay promoXruta, actualizamos la cantidad en PROMOXRUTA.
|
|
||||||
' pc.Position = 0
|
|
||||||
' B4XPages.MainPage.skmt.ExecNonQuery($"update PROMOXRUTA set PR_CANT = PR_CANT + ${pc.GetString("PE_CANT")} where PR_PROMOID = '${c.GetString("PROID")}'"$)
|
|
||||||
' End If
|
|
||||||
|
|
||||||
B4XPages.MainPage.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))
|
B4XPages.MainPage.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
|
Else
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
|
B4XPages.MainPage.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value))
|
||||||
End If
|
End If
|
||||||
DateTime.DateFormat = "MM/dd/yyyy"
|
DateTime.DateFormat = "MM/dd/yyyy"
|
||||||
sDate = DateTime.Date(DateTime.Now)
|
sDate=DateTime.Date(DateTime.Now)
|
||||||
sTime = DateTime.Time(DateTime.Now)
|
sTime=DateTime.Time(DateTime.Now)
|
||||||
c = B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
|
c=B4XPages.MainPage.skmt.ExecQuery("Select CUENTA from cuentaa")
|
||||||
c.Position=0
|
c.Position=0
|
||||||
clie_id = c.GetString("CUENTA")
|
clie_id = c.GetString("CUENTA")
|
||||||
c = B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa")
|
c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO from usuarioa")
|
||||||
c.Position = 0
|
c.Position=0
|
||||||
usuario = c.GetString("USUARIO")
|
usuario = c.GetString("USUARIO")
|
||||||
c = B4XPages.MainPage.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=B4XPages.MainPage.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
|
c.Position=0
|
||||||
If c.GetString("CUANTOS") > 0 Then
|
If c.GetString("CUANTOS") > 0 Then
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
|
||||||
|
|||||||
@@ -7,9 +7,7 @@ Version=11.5
|
|||||||
Sub Class_Globals
|
Sub Class_Globals
|
||||||
Private Root As B4XView 'ignore
|
Private Root As B4XView 'ignore
|
||||||
Private xui As XUI 'ignore
|
Private xui As XUI 'ignore
|
||||||
Dim kh As kms_helperSubs
|
|
||||||
Dim conectado As String
|
Dim conectado As String
|
||||||
Dim reqManager As DBRequestManager
|
|
||||||
Dim t1 As Timer
|
Dim t1 As Timer
|
||||||
Dim sb As StringBuilder
|
Dim sb As StringBuilder
|
||||||
Dim PHONE As Phone
|
Dim PHONE As Phone
|
||||||
@@ -225,7 +223,6 @@ Sub Class_Globals
|
|||||||
Private panel_5 As Panel
|
Private panel_5 As Panel
|
||||||
Private p_marcasRes As Panel
|
Private p_marcasRes As Panel
|
||||||
Private p_sombra As Panel
|
Private p_sombra As Panel
|
||||||
Private l_version As Label
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'You can add more parameters here.
|
'You can add more parameters here.
|
||||||
@@ -238,9 +235,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
Root = Root1
|
Root = Root1
|
||||||
'load the layout to Root
|
'load the layout to Root
|
||||||
Root.LoadLayout("principal")
|
Root.LoadLayout("principal")
|
||||||
kh.Initialize(Me, "kh")
|
|
||||||
kh.RD_Init
|
|
||||||
l_version.Text = Application.VersionName
|
|
||||||
SCROLL_RESDIA.Width = Root.Width
|
SCROLL_RESDIA.Width = Root.Width
|
||||||
SCROLL_RESDIA.Height = Root.Height
|
SCROLL_RESDIA.Height = Root.Height
|
||||||
B_OK_RES.color = Colors.Red
|
B_OK_RES.color = Colors.Red
|
||||||
@@ -309,16 +303,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub B4XPage_Appear
|
Sub B4XPage_Appear
|
||||||
If kh.RD_Init_IsInitialized Then
|
|
||||||
kh.RD_respalda_cat_detalle_paq
|
|
||||||
kh.RD_respalda_cat_gunaprod
|
|
||||||
kh.RD_respalda_kmt_info
|
|
||||||
kh.RD_respalda_pedido
|
|
||||||
Else
|
|
||||||
Log("****** RD NO INICIALIZADO ********")
|
|
||||||
End If
|
|
||||||
p_principal.Visible = True
|
p_principal.Visible = True
|
||||||
reqManager.Initialize(Me, Starter.server)
|
|
||||||
HORAINGRESO ="000000"
|
HORAINGRESO ="000000"
|
||||||
Btn_Ubicar.Left = (Root.Width/2) - (Btn_Ubicar.Width/2)
|
Btn_Ubicar.Left = (Root.Width/2) - (Btn_Ubicar.Width/2)
|
||||||
' B4XPages.MainPage.reqManager.Initialize(Me, B4XPages.MainPage.SERVER)
|
' B4XPages.MainPage.reqManager.Initialize(Me, B4XPages.MainPage.SERVER)
|
||||||
@@ -401,7 +386,7 @@ Sub B4XPage_Appear
|
|||||||
l_cuantosn.Text = b.GetString("CUANTOS")
|
l_cuantosn.Text = b.GetString("CUANTOS")
|
||||||
b.close
|
b.close
|
||||||
Else
|
Else
|
||||||
c=B4XPages.MainPage.skmt.ExecQuery("select ifnull(SUM(PE_COSTO_TOT), 0) as MONTO_DIA, COUNT(DISTINCT(PE_CLIENTE)) AS CLIENTES_DIA from PEDIDO ")
|
c=B4XPages.MainPage.skmt.ExecQuery("select SUM(PE_COSTO_TOT) as MONTO_DIA, COUNT(DISTINCT(PE_CLIENTE)) AS CLIENTES_DIA from PEDIDO ")
|
||||||
b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa")
|
b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa")
|
||||||
c.Position=0
|
c.Position=0
|
||||||
b.Position=0
|
b.Position=0
|
||||||
@@ -698,30 +683,31 @@ Sub Subir_Click
|
|||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
x.Close
|
x.Close
|
||||||
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6 from ENCUESTA_MODULO2")
|
Private x1 As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6 from ENCUESTA_MODULO2")
|
||||||
If x.RowCount>0 Then
|
If x1.RowCount>0 Then
|
||||||
For i=0 To x.RowCount -1
|
For i=0 To x1.RowCount -1
|
||||||
x.Position=i
|
x1.Position=i
|
||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "insert_ENCUESTA_MODULO2"
|
cmd.Name = "insert_ENCUESTA_MODULO2"
|
||||||
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"))
|
cmd.Parameters = Array As Object(x1.GetString("CLIENTE"), x1.GetString("ALMACEN"),x1.GetString("P1"), x1.GetString("P2"), x1.GetString("P3"), x1.GetString("P4"), x1.GetString("P5"), x1.GetString("P6"))
|
||||||
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO2")
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO2")
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
x.Close
|
x1.Close
|
||||||
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO3")
|
Private x2 As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9, P10, P11 from ENCUESTA_MODULO3")
|
||||||
If x.RowCount>0 Then
|
If x2.RowCount>0 Then
|
||||||
For i=0 To x.RowCount -1
|
For i=0 To x2.RowCount -1
|
||||||
x.Position=i
|
x2.Position=i
|
||||||
|
LogColor(x2.GetString("CLIENTE"),Colors.Red)
|
||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "insert_ENCUESTA_MODULO3"
|
cmd.Name = "insert_ENCUESTA_MODULO3"
|
||||||
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9"))
|
cmd.Parameters = Array As Object(x2.GetString("CLIENTE"), x2.GetString("ALMACEN"),x2.GetString("P1"), x2.GetString("P2"), x2.GetString("P3"), x2.GetString("P4"), x2.GetString("P5"), x2.GetString("P6"), x2.GetString("P7"), x2.GetString("P8"), x2.GetString("P9"), x2.GetString("P10"), x2.GetString("P11"))
|
||||||
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO3")
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO3")
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
x.Close
|
x2.Close
|
||||||
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8 from ENCUESTA_MODULO4")
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8 from ENCUESTA_MODULO4")
|
||||||
If x.RowCount>0 Then
|
If x.RowCount>0 Then
|
||||||
For i=0 To x.RowCount -1
|
For i=0 To x.RowCount -1
|
||||||
@@ -798,7 +784,6 @@ Sub cargar_Click
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GEOCERCA")
|
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GEOCERCA")
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_MARCAS_CUOTAS")
|
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_MARCAS_CUOTAS")
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA_CLIENTE")
|
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_ENCUESTA_CLIENTE")
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM PROMOXRUTA")
|
|
||||||
|
|
||||||
c = B4XPages.MainPage.skmt.ExecQuery2("select count(CAT_VA_DESCRIPCION) as HoraIngreso from cat_variables where CAT_VA_DESCRIPCION = ? ", Array As String("HoraIngreso"))
|
c = B4XPages.MainPage.skmt.ExecQuery2("select count(CAT_VA_DESCRIPCION) as HoraIngreso from cat_variables where CAT_VA_DESCRIPCION = ? ", Array As String("HoraIngreso"))
|
||||||
c.Position = 0
|
c.Position = 0
|
||||||
@@ -823,9 +808,6 @@ Sub cargar_Click
|
|||||||
|
|
||||||
Dim P As PhoneId
|
Dim P As PhoneId
|
||||||
imei = P.GetDeviceId
|
imei = P.GetDeviceId
|
||||||
|
|
||||||
B4XPages.MainPage.reqManager.reqsList.Initialize 'inicializamos lista de requests.
|
|
||||||
|
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name ="insert_drop_GV2_2"
|
cmd.Name ="insert_drop_GV2_2"
|
||||||
cmd.Parameters = Array As Object(usuario,e_ruta.text,sDate,imei,sTime,"","","","","CARGA",ALMACEN)
|
cmd.Parameters = Array As Object(usuario,e_ruta.text,sDate,imei,sTime,"","","","","CARGA",ALMACEN)
|
||||||
@@ -836,10 +818,10 @@ Sub cargar_Click
|
|||||||
cmd.Parameters = Array As Object(ALMACEN)
|
cmd.Parameters = Array As Object(ALMACEN)
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "gunaprod")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "gunaprod")
|
||||||
|
|
||||||
' cmd.Initialize
|
cmd.Initialize
|
||||||
' cmd.Name = "select_resum_apk_guna" ''' va el nombre de archivo de config
|
cmd.Name = "select_resum_apk_guna" ''' va el nombre de archivo de config
|
||||||
' cmd.Parameters = Array As Object(ALMACEN)
|
cmd.Parameters = Array As Object(ALMACEN)
|
||||||
' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "resum_apk") ''' donde regresa la info ver job_done
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "resum_apk") ''' donde regresa la info ver job_done
|
||||||
|
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_cat_paquetes_GV3"
|
cmd.Name = "select_cat_paquetes_GV3"
|
||||||
@@ -908,20 +890,20 @@ Sub cargar_Click
|
|||||||
cmd.Parameters = Array As Object(ALMACEN)
|
cmd.Parameters = Array As Object(ALMACEN)
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_comp_promos")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_comp_promos")
|
||||||
|
|
||||||
' cmd.Initialize
|
cmd.Initialize
|
||||||
' cmd.Name = "select_verificacion_GV2"
|
cmd.Name = "select_verificacion_GV2"
|
||||||
' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
||||||
' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "cat_verificacion")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "cat_verificacion")
|
||||||
|
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_fecha"
|
cmd.Name = "select_fecha"
|
||||||
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "fecha")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "fecha")
|
||||||
|
|
||||||
' cmd.Initialize
|
cmd.Initialize
|
||||||
' cmd.Name = "select_folio_GV2"
|
cmd.Name = "select_folio_GV2"
|
||||||
' cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
||||||
' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "folio")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "folio")
|
||||||
|
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_marcas_rutas"
|
cmd.Name = "select_marcas_rutas"
|
||||||
@@ -938,6 +920,7 @@ Sub cargar_Click
|
|||||||
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ENCUESTA_CLIENTE")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ENCUESTA_CLIENTE")
|
||||||
|
|
||||||
|
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_HIST_CUOTAS"
|
cmd.Name = "select_HIST_CUOTAS"
|
||||||
cmd.Parameters = Array As Object( ALMACEN,e_ruta.text )
|
cmd.Parameters = Array As Object( ALMACEN,e_ruta.text )
|
||||||
@@ -948,11 +931,6 @@ Sub cargar_Click
|
|||||||
cmd.Parameters = Array As Object( ALMACEN,e_ruta.text )
|
cmd.Parameters = Array As Object( ALMACEN,e_ruta.text )
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "COMISIONES")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "COMISIONES")
|
||||||
|
|
||||||
cmd.Initialize
|
|
||||||
cmd.Name = "select_promos_ruta_GV2"
|
|
||||||
cmd.Parameters = Array As Object(ALMACEN, e_ruta.text )
|
|
||||||
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "promosXruta")
|
|
||||||
|
|
||||||
cargar.Visible = False
|
cargar.Visible = False
|
||||||
Subir.Visible = False
|
Subir.Visible = False
|
||||||
inv.Visible = False
|
inv.Visible = False
|
||||||
@@ -960,7 +938,11 @@ Sub cargar_Click
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub JobDone(Job As HttpJob)
|
Sub JobDone(Job As HttpJob)
|
||||||
Log("JOBDONE PRINCIPAL")
|
' If Job.JobName = "DBRequest" Then
|
||||||
|
' Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
|
' Log($"Tag: ${RESULT.tag}, success=${Job.Success}"$)
|
||||||
|
' End If
|
||||||
|
|
||||||
If Job.Success = False Then
|
If Job.Success = False Then
|
||||||
'ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
'ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
||||||
If Job.ErrorMessage = "STREAM" Then
|
If Job.ErrorMessage = "STREAM" Then
|
||||||
@@ -974,14 +956,9 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
Else 'If Job Success then ...
|
Else 'If Job Success then ...
|
||||||
LogColor("JobDone: '" & B4XPages.MainPage.reqManager.HandleJob(Job).tag & "' - Registros: " & B4XPages.MainPage.reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
|
LogColor("JobDone: '" & B4XPages.MainPage.reqManager.HandleJob(Job).tag & "' - Registros: " & B4XPages.MainPage.reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
|
||||||
|
'Verificamos que el usuario guardado en BD sea VALIDO.
|
||||||
If Job.JobName = "DBRequest" Then
|
If Job.JobName = "DBRequest" Then
|
||||||
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If B4XPages.MainPage.reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos.
|
|
||||||
If B4XPages.MainPage.reqManager.reqsList.IndexOf(RESULT.tag) <> -1 Then
|
|
||||||
B4XPages.MainPage.reqManager.reqsList.RemoveAt(B4XPages.MainPage.reqManager.reqsList.IndexOf(RESULT.tag))
|
|
||||||
End If
|
|
||||||
LogColor(">>>>>> " & B4XPages.MainPage.reqManager.reqsList.Size & " - " & B4XPages.MainPage.reqManager.reqsList, Colors.red)
|
|
||||||
End If
|
|
||||||
If RESULT.Tag = "usuarioA" Then 'query tag
|
If RESULT.Tag = "usuarioA" Then 'query tag
|
||||||
Private n As String = "Sin Usuario"
|
Private n As String = "Sin Usuario"
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
@@ -1002,7 +979,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
Log("***************** "&n)
|
Log("***************** "&n)
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "kmt_datos" Then 'query tag
|
If RESULT.Tag = "kmt_datos" Then 'query tag
|
||||||
S_CC.TEXT = "CARGANDO"
|
S_CC.TEXT = "CARGANDO"
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
@@ -1038,7 +1018,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
EJECUTANDO=0
|
EJECUTANDO=0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "resum_apk" Then 'query tag
|
If RESULT.Tag = "resum_apk" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HIST_RA_OBJMES As String = records(RESULT.Columns.Get("HIST_RA_OBJMES"))
|
Dim HIST_RA_OBJMES As String = records(RESULT.Columns.Get("HIST_RA_OBJMES"))
|
||||||
@@ -1095,7 +1078,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
S_CC.Text = "LISTO"
|
S_CC.Text = "LISTO"
|
||||||
If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Resumen Actualizado." , True)
|
If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Resumen Actualizado." , True)
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "hist_promos" Then 'query tag
|
If RESULT.Tag = "hist_promos" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HP_CLIENTE As String = records(RESULT.Columns.Get("HP_CLIENTE"))
|
Dim HP_CLIENTE As String = records(RESULT.Columns.Get("HP_CLIENTE"))
|
||||||
@@ -1113,7 +1099,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
S_CH.Text = "LISTO"
|
S_CH.Text = "LISTO"
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "hist_cliente_promos" Then 'query tag
|
If RESULT.Tag = "hist_cliente_promos" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HCCP_CLIENTE As String = records(RESULT.Columns.Get("HCCP_CLIENTE"))
|
Dim HCCP_CLIENTE As String = records(RESULT.Columns.Get("HCCP_CLIENTE"))
|
||||||
@@ -1123,7 +1112,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
Next
|
Next
|
||||||
If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
|
If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "HIST_MARCAS_CUOTAS" Then 'query tag
|
If RESULT.Tag = "HIST_MARCAS_CUOTAS" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HMC_MARCA As String = records(RESULT.Columns.Get("HMC_MARCA"))
|
Dim HMC_MARCA As String = records(RESULT.Columns.Get("HMC_MARCA"))
|
||||||
@@ -1132,7 +1124,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
Next
|
Next
|
||||||
If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Marcas" , True)
|
If Starter.marcaCel <> "Sony" Then ToastMessageShow(" Historico Marcas" , True)
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "hist_comp_promos" Then 'query tag
|
If RESULT.Tag = "hist_comp_promos" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim CAT_PA_ID As String = records(RESULT.Columns.Get("CAT_PA_ID"))
|
Dim CAT_PA_ID As String = records(RESULT.Columns.Get("CAT_PA_ID"))
|
||||||
@@ -1151,7 +1146,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
S_CH.Text = "LISTO"
|
S_CH.Text = "LISTO"
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "cat_verificacion" Then 'query tag
|
If RESULT.Tag = "cat_verificacion" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD"))
|
Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD"))
|
||||||
@@ -1160,7 +1158,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "marcas_rutas" Then 'query tag
|
If RESULT.Tag = "marcas_rutas" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HVD_MARCA As String = records(RESULT.Columns.Get("HVD_MARCA"))
|
Dim HVD_MARCA As String = records(RESULT.Columns.Get("HVD_MARCA"))
|
||||||
@@ -1168,8 +1169,11 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO MARCAS_RUTAS(HVD_MARCA, CLIENTES) VALUES (?,?)", Array As Object (HVD_MARCA, CLIENTES))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO MARCAS_RUTAS(HVD_MARCA, CLIENTES) VALUES (?,?)", Array As Object (HVD_MARCA, CLIENTES))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
'CUOTAS
|
'CUOTAS
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "CUOTAS" Then 'query tag
|
If RESULT.Tag = "CUOTAS" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA"))
|
Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA"))
|
||||||
@@ -1189,8 +1193,11 @@ Sub JobDone(Job As HttpJob)
|
|||||||
Next
|
Next
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
'COMISIONES
|
'COMISIONES
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "COMISIONES" Then 'query tag
|
If RESULT.Tag = "COMISIONES" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HCM_TOTAL_V As String = records(RESULT.Columns.Get("HCM_TOTAL_V"))
|
Dim HCM_TOTAL_V As String = records(RESULT.Columns.Get("HCM_TOTAL_V"))
|
||||||
@@ -1200,7 +1207,11 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_COMISIONES_MOVIL (HCM_TOTAL_V , HCM_TOTAL_VIVE , HCM_TOTAL_GUNA , HCM_TOTAL_BEB) VALUES (?,?,?,?)", Array As Object (HCM_TOTAL_V , HCM_TOTAL_VIVE , HCM_TOTAL_GUNA , HCM_TOTAL_BEB))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_COMISIONES_MOVIL (HCM_TOTAL_V , HCM_TOTAL_VIVE , HCM_TOTAL_GUNA , HCM_TOTAL_BEB) VALUES (?,?,?,?)", Array As Object (HCM_TOTAL_V , HCM_TOTAL_VIVE , HCM_TOTAL_GUNA , HCM_TOTAL_BEB))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "ENCUESTA_CLIENTE" Then 'query tag
|
If RESULT.Tag = "ENCUESTA_CLIENTE" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HEC_CLIENTE As String = records(RESULT.Columns.Get("HEC_CLIENTE"))
|
Dim HEC_CLIENTE As String = records(RESULT.Columns.Get("HEC_CLIENTE"))
|
||||||
@@ -1208,7 +1219,11 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_ENCUESTA_CLIENTE (HEC_CLIENTE , HEC_MODULO) VALUES (?,?)", Array As Object (HEC_CLIENTE , HEC_MODULO ))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_ENCUESTA_CLIENTE (HEC_CLIENTE , HEC_MODULO) VALUES (?,?)", Array As Object (HEC_CLIENTE , HEC_MODULO ))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "gunaprod" Then 'query tag
|
If RESULT.Tag = "gunaprod" Then 'query tag
|
||||||
If PB2.Progress < 30 Then S_CP.Text = "CARGANDO" 'Mod por CHV - 20211028 Agregue el "If PB2.Progress < 30 then"
|
If PB2.Progress < 30 Then S_CP.Text = "CARGANDO" 'Mod por CHV - 20211028 Agregue el "If PB2.Progress < 30 then"
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
@@ -1247,7 +1262,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
EJECUTANDO=0
|
EJECUTANDO=0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "gunaprodp" Then 'query tag
|
If RESULT.Tag = "gunaprodp" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID"))
|
Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID"))
|
||||||
@@ -1289,9 +1307,13 @@ Sub JobDone(Job As HttpJob)
|
|||||||
EJECUTANDO=0
|
EJECUTANDO=0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "gunaprodps" Then 'query tag
|
If RESULT.Tag = "gunaprodps" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
|
|
||||||
Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID"))
|
Dim CAT_GP_ID As String = records(RESULT.Columns.Get("CAT_GP_ID"))
|
||||||
Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE"))
|
Dim CAT_GP_NOMBRE As String = records(RESULT.Columns.Get("CAT_GP_NOMBRE"))
|
||||||
Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1"))
|
Dim CAT_GP_IMP1 As String = records(RESULT.Columns.Get("CAT_GP_IMP1"))
|
||||||
@@ -1319,6 +1341,7 @@ Sub JobDone(Job As HttpJob)
|
|||||||
Log("3")
|
Log("3")
|
||||||
End If
|
End If
|
||||||
If Starter.marcaCel <> "Sony" Then ToastMessageShow("Promociones especiales Actualizados." , True)
|
If Starter.marcaCel <> "Sony" Then ToastMessageShow("Promociones especiales Actualizados." , True)
|
||||||
|
|
||||||
Listo4=1
|
Listo4=1
|
||||||
If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then
|
If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then
|
||||||
B4XPage_Appear
|
B4XPage_Appear
|
||||||
@@ -1330,7 +1353,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
EJECUTANDO=0
|
EJECUTANDO=0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "detallepaq" Then 'query tag
|
If RESULT.Tag = "detallepaq" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim CAT_DP_ALMACEN As String = records(RESULT.Columns.Get("CAT_DP_ALMACEN"))
|
Dim CAT_DP_ALMACEN As String = records(RESULT.Columns.Get("CAT_DP_ALMACEN"))
|
||||||
@@ -1367,7 +1393,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "hist_datos" Then 'query tag
|
If RESULT.Tag = "hist_datos" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE"))
|
Dim HVD_CLIENTE As String = records(RESULT.Columns.Get("HVD_CLIENTE"))
|
||||||
@@ -1393,7 +1422,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
EJECUTANDO=0
|
EJECUTANDO=0
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "variables" Then 'query tag
|
If RESULT.Tag = "variables" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim Cat_Va_Descripcion As String = records(RESULT.Columns.Get("CAT_VA_DESCRIPCION"))
|
Dim Cat_Va_Descripcion As String = records(RESULT.Columns.Get("CAT_VA_DESCRIPCION"))
|
||||||
@@ -1401,7 +1433,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object (Cat_Va_Descripcion, Cat_Va_Valor))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object (Cat_Va_Descripcion, Cat_Va_Valor))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "CUESTIONARIO" Then 'query tag
|
If RESULT.Tag = "CUESTIONARIO" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_VALOR"))
|
Dim Cat_Va_Valor As String = records(RESULT.Columns.Get("CAT_VALOR"))
|
||||||
@@ -1409,10 +1444,15 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CUESTIONARIO", Cat_Va_Valor))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CUESTIONARIO", Cat_Va_Valor))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "valida_pedido" Then 'query tag
|
If RESULT.Tag = "valida_pedido" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
|
|
||||||
Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP"))
|
Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP"))
|
||||||
|
|
||||||
If cuantos_pedido < = CUANTOSP Then
|
If cuantos_pedido < = CUANTOSP Then
|
||||||
' ToastMessageShow("rojo val ok 1 cuantosp." , True)
|
' ToastMessageShow("rojo val ok 1 cuantosp." , True)
|
||||||
datos_iguales = "ok"
|
datos_iguales = "ok"
|
||||||
@@ -1421,12 +1461,19 @@ Sub JobDone(Job As HttpJob)
|
|||||||
If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True)
|
If Starter.marcaCel <> "Sony" Then ToastMessageShow("No se cargo bien la info P. Sync Nuevamente" & CUANTOSP & " " & cuantos_pedido, True)
|
||||||
S_CP.Text = "ENVIAR DATOS (K-2)"
|
S_CP.Text = "ENVIAR DATOS (K-2)"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "valida_pedidoc" Then 'query tag
|
If RESULT.Tag = "valida_pedidoc" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
|
|
||||||
Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC"))
|
Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC"))
|
||||||
|
|
||||||
If cuantos_pedidosc = CUANTOSC Then
|
If cuantos_pedidosc = CUANTOSC Then
|
||||||
' ToastMessageShow("rojo val ok 1 cuantosp." , True)
|
' ToastMessageShow("rojo val ok 1 cuantosp." , True)
|
||||||
datos_iguales = "ok"
|
datos_iguales = "ok"
|
||||||
@@ -1435,7 +1482,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "valida_noventa" Then 'query tag
|
If RESULT.Tag = "valida_noventa" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN"))
|
Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN"))
|
||||||
@@ -1447,7 +1497,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "ins_pedido" Then 'query tag
|
If RESULT.Tag = "ins_pedido" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
PB2.Progress = PB2.Progress + 5
|
PB2.Progress = PB2.Progress + 5
|
||||||
@@ -1457,7 +1510,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
S_CP.Text = "LISTO"
|
S_CP.Text = "LISTO"
|
||||||
Log("5")
|
Log("5")
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "version" Then 'query tag
|
If RESULT.Tag = "version" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery("delete from VERSION")
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from VERSION")
|
||||||
@@ -1465,13 +1521,19 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "count_cli" Then 'query tag
|
If RESULT.Tag = "count_cli" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
COUNT_CLIE = records(RESULT.Columns.Get("COUNT_CLIE"))
|
COUNT_CLIE = records(RESULT.Columns.Get("COUNT_CLIE"))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "ruta" Then 'query tag
|
If RESULT.Tag = "ruta" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim VALIDO As String = records(RESULT.Columns.Get("VALIDO"))
|
Dim VALIDO As String = records(RESULT.Columns.Get("VALIDO"))
|
||||||
@@ -1492,7 +1554,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "usuario" Then 'query tag
|
If RESULT.Tag = "usuario" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim name2 As String = records(RESULT.Columns.Get("VALIDO"))
|
Dim name2 As String = records(RESULT.Columns.Get("VALIDO"))
|
||||||
@@ -1502,7 +1567,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
End If
|
End If
|
||||||
P1.Visible = False
|
P1.Visible = False
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "fecha" Then 'query tag
|
If RESULT.Tag = "fecha" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim FECHA_HOY As String = records(RESULT.Columns.Get("FECHA"))
|
Dim FECHA_HOY As String = records(RESULT.Columns.Get("FECHA"))
|
||||||
@@ -1510,7 +1578,10 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",FECHA_HOY))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",FECHA_HOY))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If Job.JobName = "DBRequest" Then
|
||||||
|
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
|
||||||
If RESULT.Tag = "folio" Then 'query tag
|
If RESULT.Tag = "folio" Then 'query tag
|
||||||
For Each records() As Object In RESULT.Rows
|
For Each records() As Object In RESULT.Rows
|
||||||
Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO"))
|
Dim FOLIO As String = records(RESULT.Columns.Get("FOLIO"))
|
||||||
@@ -1518,13 +1589,6 @@ Sub JobDone(Job As HttpJob)
|
|||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO))
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO))
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If RESULT.Tag = "promosXruta" Then
|
|
||||||
' Subs.logJobDoneResultados(RESULT)
|
|
||||||
For Each records() As Object In RESULT.Rows
|
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PROMOXRUTA(PR_PROMOID, PR_CANT) VALUES (?,?)", Array As Object (records(RESULT.Columns.Get("CAT_RP_IDPROMO")), records(RESULT.Columns.Get("CAT_RP_CANTIDAD"))))
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
Job.Release
|
Job.Release
|
||||||
@@ -1543,6 +1607,7 @@ Private Sub B4XPage_CloseRequest As ResumableSub
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub connecta_Click
|
Sub connecta_Click
|
||||||
|
B4XPages.MainPage.reqManager.Initialize(Me, Starter.server)
|
||||||
teclado.HideKeyboard
|
teclado.HideKeyboard
|
||||||
connecta1 = connecta1 + 1
|
connecta1 = connecta1 + 1
|
||||||
'imei = p.GetDeviceId
|
'imei = p.GetDeviceId
|
||||||
@@ -1550,7 +1615,7 @@ Sub connecta_Click
|
|||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_version_GV2"
|
cmd.Name = "select_version_GV2"
|
||||||
reqManager.ExecuteQuery(cmd , 0, "version")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "version")
|
||||||
' Cuando nos conectamos verificamos que el usuario guardado en BD sea VALIDO.
|
' Cuando nos conectamos verificamos que el usuario guardado en BD sea VALIDO.
|
||||||
c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO, PASS from usuarioa")
|
c=B4XPages.MainPage.skmt.ExecQuery("select USUARIO, PASS from usuarioa")
|
||||||
c.Position=0
|
c.Position=0
|
||||||
@@ -1558,9 +1623,9 @@ Sub connecta_Click
|
|||||||
Private usrT As String = c.GetString("USUARIO")
|
Private usrT As String = c.GetString("USUARIO")
|
||||||
Private passT As String = c.GetString("PASS")
|
Private passT As String = c.GetString("PASS")
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_usuario_guna_GV2_10"
|
cmd.Name = "select_usuario_guna_GV2_1"
|
||||||
cmd.Parameters = Array As Object(usrT, passT)
|
cmd.Parameters = Array As Object(usrT, passT)
|
||||||
reqManager.ExecuteQuery(cmd , 0, "usuarioA")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "usuarioA")
|
||||||
End If
|
End If
|
||||||
c.Close
|
c.Close
|
||||||
|
|
||||||
@@ -1568,13 +1633,13 @@ Sub connecta_Click
|
|||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_ruta_GV2_70"
|
cmd.Name = "select_ruta_GV2_70"
|
||||||
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei)
|
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei)
|
||||||
reqManager.ExecuteQuery(cmd , 0, "ruta")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta")
|
||||||
Else
|
Else
|
||||||
Dim cmd As DBCommand
|
Dim cmd As DBCommand
|
||||||
cmd.Initialize
|
cmd.Initialize
|
||||||
cmd.Name = "select_ruta_GV2_70"
|
cmd.Name = "select_ruta_GV2_70"
|
||||||
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei)
|
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei)
|
||||||
reqManager.ExecuteQuery(cmd , 0, "ruta")
|
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta")
|
||||||
End If
|
End If
|
||||||
|
|
||||||
If e_ruta.Text = "KMTS1" Then
|
If e_ruta.Text = "KMTS1" Then
|
||||||
|
|||||||
@@ -455,7 +455,7 @@ Sub b_prodMenos_Click
|
|||||||
Dim laCant As B4XView = pnl.GetView(2).GetView(3)
|
Dim laCant As B4XView = pnl.GetView(2).GetView(3)
|
||||||
' Log($"precio|stock:${laCant.tag}"$)
|
' Log($"precio|stock:${laCant.tag}"$)
|
||||||
If laCant.Text = "" Then laCant.Text = 0
|
If laCant.Text = "" Then laCant.Text = 0
|
||||||
laCant.Text = NumberFormat2(laCant.Text - 1, 1, 0, 0, False)
|
laCant.Text = $"$1.0{laCant.Text-1}"$
|
||||||
If laCant.Text < 0 Then laCant.Text = 0
|
If laCant.Text < 0 Then laCant.Text = 0
|
||||||
' Dim chk As B4XView = pnl.GetView(2)
|
' Dim chk As B4XView = pnl.GetView(2)
|
||||||
cuentaProds
|
cuentaProds
|
||||||
@@ -474,7 +474,7 @@ Sub b_prodMas_Click
|
|||||||
' Log(laCant.Tag&"|"&esteTag)
|
' Log(laCant.Tag&"|"&esteTag)
|
||||||
If laCant.Text = "" Then laCant.Text = 0
|
If laCant.Text = "" Then laCant.Text = 0
|
||||||
If laCant.Text + 1 <= esteTag.get(1) Then
|
If laCant.Text + 1 <= esteTag.get(1) Then
|
||||||
laCant.Text = NumberFormat2(laCant.Text + 1, 1, 0, 0, False)
|
laCant.Text = $"$1.0{laCant.Text+1}"$
|
||||||
cuentaProds
|
cuentaProds
|
||||||
End If
|
End If
|
||||||
' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$)
|
' Log($"Total Prods: ${totalProds}, Total Compra: $$1.2{totalCompra}"$)
|
||||||
@@ -496,7 +496,7 @@ Sub cuentaProds
|
|||||||
If cant1.Text = "" Then cant1.Text = 0
|
If cant1.Text = "" Then cant1.Text = 0
|
||||||
' Private cant2 As Int = 0
|
' Private cant2 As Int = 0
|
||||||
' If cant1.Text <> "" Then cant2 = cant1.Text
|
' If cant1.Text <> "" Then cant2 = cant1.Text
|
||||||
totalProds = totalProds + NumberFormat2(cant1.Text, 1, 0, 0, False)
|
totalProds = totalProds + cant1.Text
|
||||||
Private esteTag As List = Regex.Split("\|", cant1.Tag)
|
Private esteTag As List = Regex.Split("\|", cant1.Tag)
|
||||||
If cant1.Text > esteTag.Get(1) Then cant1.Text = esteTag.Get(1)
|
If cant1.Text > esteTag.Get(1) Then cant1.Text = esteTag.Get(1)
|
||||||
If cant1.Text > 0 Then
|
If cant1.Text > 0 Then
|
||||||
|
|||||||
@@ -340,14 +340,10 @@ End Sub
|
|||||||
Private Sub b_terminar1_Click
|
Private Sub b_terminar1_Click
|
||||||
cuentaProds
|
cuentaProds
|
||||||
Log("====================================================================")
|
Log("====================================================================")
|
||||||
Log($"${prodsIds}${CRLF}${prodsCants}${CRLF}${prodsPrecios}"$)
|
' Log($"${prodsIds}${CRLF}${prodsCants}${CRLF}${prodsPrecios}"$)
|
||||||
Log(laPromo)
|
|
||||||
For t = 0 To prodsIds.Size - 1 'Guardamos los productos fijos de la promocion en pedido.
|
For t = 0 To prodsIds.Size - 1 'Guardamos los productos fijos de la promocion en pedido.
|
||||||
Private pn As String = Subs.traeProdNombre(prodsIds.Get(t))
|
Private pn As String = Subs.traeProdNombre(prodsIds.Get(t))
|
||||||
If prodsCants.Get(t) > 0 Then Subs.guardaProducto(estaPromo, prodsPrecios.Get(t), prodsCants.Get(t), pn, prodsIds.Get(t), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta)
|
If prodsCants.Get(t) > 0 Then Subs.guardaProducto(estaPromo, prodsPrecios.Get(t), prodsCants.Get(t), pn, prodsIds.Get(t), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta)
|
||||||
|
|
||||||
If laPromo = prodsIds.Get(t) Then Subs.guardaPromoXruta(laPromo, prodsCants.Get(t))
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
For t = 0 To prodsIds2.Size - 1 'Guardamos los productos variables de la promocion en pedido.
|
For t = 0 To prodsIds2.Size - 1 'Guardamos los productos variables de la promocion en pedido.
|
||||||
Private pn As String = Subs.traeProdNombre(prodsIds2.Get(t))
|
Private pn As String = Subs.traeProdNombre(prodsIds2.Get(t))
|
||||||
@@ -361,13 +357,10 @@ End Sub
|
|||||||
Private Sub b_continuar_Click
|
Private Sub b_continuar_Click
|
||||||
cuentaProds
|
cuentaProds
|
||||||
Log("====================================================================")
|
Log("====================================================================")
|
||||||
Log($"${prodsIds}${CRLF}${prodsCants}${CRLF}${prodsPrecios}"$)
|
' Log($"${prodsIds}${CRLF}${prodsCants}${CRLF}${prodsPrecios}"$)
|
||||||
For t = 0 To prodsIds.Size - 1 'Guardamos los productos fijos de la promocion en pedido.
|
For t = 0 To prodsIds.Size - 1 'Guardamos los productos fijos de la promocion en pedido.
|
||||||
Private pn As String = Subs.traeProdNombre(prodsIds.Get(t))
|
Private pn As String = Subs.traeProdNombre(prodsIds.Get(t))
|
||||||
Subs.guardaProducto(estaPromo, prodsPrecios.Get(t), prodsCants.Get(t), pn, prodsIds.Get(t), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta)
|
Subs.guardaProducto(estaPromo, prodsPrecios.Get(t), prodsCants.Get(t), pn, prodsIds.Get(t), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, B4XPages.MainPage.tipo_venta)
|
||||||
|
|
||||||
If laPromo = prodsIds.Get(t) Then Subs.guardaPromoXruta(laPromo, prodsCants.Get(t))
|
|
||||||
|
|
||||||
Next
|
Next
|
||||||
For t = 0 To prodsIds2.Size - 1 'Guardamos los productos variables de la promocion en pedido.
|
For t = 0 To prodsIds2.Size - 1 'Guardamos los productos variables de la promocion en pedido.
|
||||||
Private pn As String = Subs.traeProdNombre(prodsIds2.Get(t))
|
Private pn As String = Subs.traeProdNombre(prodsIds2.Get(t))
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ Sub Class_Globals
|
|||||||
Private VERSION As Float = 0.9
|
Private VERSION As Float = 0.9
|
||||||
Private tempArray(1) As Object
|
Private tempArray(1) As Object
|
||||||
Dim jobTagAnterior As String = "" 'Mod por CHV - 211027
|
Dim jobTagAnterior As String = "" 'Mod por CHV - 211027
|
||||||
Dim reqsList As List
|
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'Target - The module that handles JobDone (usually Me).
|
'Target - The module that handles JobDone (usually Me).
|
||||||
@@ -36,7 +35,6 @@ Public Sub ExecuteQuery(Command As DBCommand, Limit As Int, Tag As Object)
|
|||||||
Dim j As HttpJob
|
Dim j As HttpJob
|
||||||
Dim ms As OutputStream
|
Dim ms As OutputStream
|
||||||
Dim out2 As OutputStream = StartJob(j,ms, Tag)
|
Dim out2 As OutputStream = StartJob(j,ms, Tag)
|
||||||
If reqsList.IsInitialized Then reqsList.Add(Tag)
|
|
||||||
|
|
||||||
WriteObject(Command.Name, out2)
|
WriteObject(Command.Name, out2)
|
||||||
WriteInt(Limit, out2)
|
WriteInt(Limit, out2)
|
||||||
@@ -63,7 +61,6 @@ End Sub
|
|||||||
|
|
||||||
'Similar to ExecuteBatch. Sends a single command.
|
'Similar to ExecuteBatch. Sends a single command.
|
||||||
Public Sub ExecuteCommand(Command As DBCommand, Tag As Object)
|
Public Sub ExecuteCommand(Command As DBCommand, Tag As Object)
|
||||||
If reqsList.IsInitialized Then reqsList.Add(Tag)
|
|
||||||
ExecuteBatch(Array As DBCommand(Command), Tag)
|
ExecuteBatch(Array As DBCommand(Command), Tag)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
|||||||
@@ -1,162 +0,0 @@
|
|||||||
B4A=true
|
|
||||||
Group=Default Group
|
|
||||||
ModulesStructureVersion=1
|
|
||||||
Type=Class
|
|
||||||
Version=11
|
|
||||||
@EndOfDesignText@
|
|
||||||
'Requiere la librería "ContentResolver" y "FileProvider" o "AppUpdating"
|
|
||||||
'
|
|
||||||
'Copiar este codigo al boton_Click que se quiere que importe la base de datos.
|
|
||||||
'
|
|
||||||
' Private Sub b_importarBD_Click
|
|
||||||
' Private FH As FileHandler
|
|
||||||
' FH.Initialize
|
|
||||||
' Wait For (FH.Load) Complete (Result As LoadResult) 'Abre un fileManager para seleccionar la base de datos a importar.
|
|
||||||
' File.Copy(Result.Dir, Result.FileName, File.DirInternal, "kmt.db") 'Copia la base de datos seleccionada al directorio interno.
|
|
||||||
' Starter.skmt.Initialize(Starter.ruta,"kmt.db", True) 'Reiniciliza la base de datos con la recien importada.
|
|
||||||
' ToastMessageShow("¡BD importada!", False)
|
|
||||||
' End Sub
|
|
||||||
|
|
||||||
Sub Class_Globals
|
|
||||||
#if B4A
|
|
||||||
Private ion As Object
|
|
||||||
Private OldIntent As Intent
|
|
||||||
#end if
|
|
||||||
Type LoadResult (Success As Boolean, Dir As String, FileName As String, RealName As String, Size As Long, Modified As Long, MimeType As String)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Sub Initialize
|
|
||||||
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
#if B4A
|
|
||||||
Public Sub SaveAs (Source As InputStream, MimeType As String, Title As String) As ResumableSub
|
|
||||||
Dim intent As Intent
|
|
||||||
intent.Initialize("android.intent.action.CREATE_DOCUMENT", "")
|
|
||||||
intent.AddCategory("android.intent.category.OPENABLE")
|
|
||||||
intent.PutExtra("android.intent.extra.TITLE", Title)
|
|
||||||
intent.SetType(MimeType)
|
|
||||||
StartActivityForResult(intent)
|
|
||||||
Wait For ion_Event (MethodName As String, Args() As Object)
|
|
||||||
If -1 = Args(0) Then 'resultCode = RESULT_OK
|
|
||||||
Dim result As Intent = Args(1)
|
|
||||||
Dim jo As JavaObject = result
|
|
||||||
Dim ctxt As JavaObject
|
|
||||||
Dim out As OutputStream = ctxt.InitializeContext.RunMethodJO("getContentResolver", Null).RunMethod("openOutputStream", Array(jo.RunMethod("getData", Null)))
|
|
||||||
File.Copy2(Source, out)
|
|
||||||
out.Close
|
|
||||||
Return True
|
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Sub Load As ResumableSub
|
|
||||||
Dim cc As ContentChooser
|
|
||||||
cc.Initialize("cc")
|
|
||||||
cc.Show("application/octet-stream", "Choose text file")
|
|
||||||
Wait For CC_Result (Success As Boolean, Dir As String, FileName As String)
|
|
||||||
Log($"***************************${CRLF}${Dir}${CRLF} ${FileName}"$)
|
|
||||||
Dim res As LoadResult = CreateLoadResult(Success, Dir, FileName)
|
|
||||||
Log($"***************************${CRLF}${res.FileName}${CRLF} ${res}"$)
|
|
||||||
If res.Success Then ExtractInformationFromURI(res.FileName, res)
|
|
||||||
Return res
|
|
||||||
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(ion, i))
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub GetBA As Object
|
|
||||||
Return Me.As(JavaObject).RunMethod("getBA", Null)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub ExtractInformationFromURI (Uri As String, res As LoadResult)
|
|
||||||
Try
|
|
||||||
|
|
||||||
Dim resolver As ContentResolver
|
|
||||||
resolver.Initialize("")
|
|
||||||
Dim u As Uri
|
|
||||||
u.Parse(Uri)
|
|
||||||
Dim rs As ResultSet = resolver.Query(u, Null, "", Null, "")
|
|
||||||
If rs.NextRow Then
|
|
||||||
Dim columns As B4XSet = B4XCollections.CreateSet
|
|
||||||
For i = 0 To rs.ColumnCount - 1
|
|
||||||
columns.Add(rs.GetColumnName(i))
|
|
||||||
Next
|
|
||||||
If columns.Contains("_display_name") Then res.RealName = rs.GetString("_display_name")
|
|
||||||
If columns.Contains("_size") Then res.Size = rs.GetLong("_size")
|
|
||||||
If columns.Contains("last_modified") Then res.Modified = rs.GetLong("last_modified")
|
|
||||||
If columns.Contains("mime_type") Then res.MimeType = rs.GetString("mime_type")
|
|
||||||
End If
|
|
||||||
rs.Close
|
|
||||||
|
|
||||||
Catch
|
|
||||||
Log("error extracting information from file provider")
|
|
||||||
Log(LastException)
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Sub CheckForReceivedFiles As LoadResult
|
|
||||||
Dim Activity As Activity = B4XPages.GetNativeParent(B4XPages.MainPage)
|
|
||||||
If IsRelevantIntent(Activity.GetStartingIntent) Then
|
|
||||||
Dim in As Intent = Activity.GetStartingIntent
|
|
||||||
Dim uri As String
|
|
||||||
If in.HasExtra("android.intent.extra.STREAM") Then
|
|
||||||
uri = in.As(JavaObject).RunMethod("getParcelableExtra", Array("android.intent.extra.STREAM"))
|
|
||||||
Else
|
|
||||||
uri = in.GetData
|
|
||||||
End If
|
|
||||||
Dim res As LoadResult = CreateLoadResult(True, "ContentDir", uri)
|
|
||||||
ExtractInformationFromURI(res.FileName, res)
|
|
||||||
Return res
|
|
||||||
End If
|
|
||||||
Return CreateLoadResult(False, "", "")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub IsRelevantIntent(in As Intent) As Boolean
|
|
||||||
If in.IsInitialized And in <> OldIntent And in.Action = in.ACTION_VIEW Then
|
|
||||||
OldIntent = in
|
|
||||||
Return True
|
|
||||||
End If
|
|
||||||
Return False
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
#else if B4i
|
|
||||||
Public Sub SaveAs(ParentPage As Object, AnchorView As Object, Text As String) As ResumableSub
|
|
||||||
Dim avc As ActivityViewController
|
|
||||||
avc.Initialize("avc", Array(Text))
|
|
||||||
avc.Show(B4XPages.GetNativeParent(ParentPage), AnchorView)
|
|
||||||
Wait For avc_Complete (Success As Boolean, ActivityType As String)
|
|
||||||
Return Success
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Sub Load (ParentPage As Object, AnchorView As Object) As ResumableSub
|
|
||||||
Dim DocumentPicker As DocumentPickerViewController
|
|
||||||
DocumentPicker.InitializeImport("picker", Array("public.text"))
|
|
||||||
DocumentPicker.Show(B4XPages.GetNativeParent(ParentPage), AnchorView)
|
|
||||||
Wait For Picker_Complete (Success As Boolean, URLs As List)
|
|
||||||
If Success And URLs.Size > 0 Then
|
|
||||||
Return UrlToLoadResult(URLs.Get(0))
|
|
||||||
End If
|
|
||||||
Return CreateLoadResult(False, "", "")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Public Sub UrlToLoadResult(url As String) As LoadResult
|
|
||||||
Dim res As LoadResult = CreateLoadResult(IIf(File.Exists(url, ""), True, False), url, "")
|
|
||||||
res.RealName = res.Dir.SubString(res.Dir.LastIndexOf("/") + 1)
|
|
||||||
res.Size = File.Size(res.Dir, "")
|
|
||||||
Return res
|
|
||||||
End Sub
|
|
||||||
#end if
|
|
||||||
|
|
||||||
Private Sub CreateLoadResult (Success As Boolean, Dir As String, FileName As String) As LoadResult
|
|
||||||
Dim t1 As LoadResult
|
|
||||||
t1.Initialize
|
|
||||||
t1.Success = Success
|
|
||||||
t1.Dir = Dir
|
|
||||||
t1.FileName = FileName
|
|
||||||
Return t1
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -134,12 +134,14 @@ Library22=okhttputils2
|
|||||||
Library23=phone
|
Library23=phone
|
||||||
Library24=randomaccessfile
|
Library24=randomaccessfile
|
||||||
Library25=rspopupmenu
|
Library25=rspopupmenu
|
||||||
Library26=serial
|
Library26=runtimepermissions
|
||||||
Library27=sql
|
Library27=serial
|
||||||
Library28=togglelibrary
|
Library28=sql
|
||||||
Library29=xui views
|
Library29=togglelibrary
|
||||||
Library3=baqrcode
|
Library3=baqrcode
|
||||||
Library30=contentresolver
|
Library30=xcustomlistview
|
||||||
|
Library31=xui
|
||||||
|
Library32=xui views
|
||||||
Library4=batteryprogressview
|
Library4=batteryprogressview
|
||||||
Library5=bitmapcreator
|
Library5=bitmapcreator
|
||||||
Library6=byteconverter
|
Library6=byteconverter
|
||||||
@@ -156,14 +158,12 @@ Module14=C_Promos
|
|||||||
Module15=C_TicketsDia
|
Module15=C_TicketsDia
|
||||||
Module16=C_UpdateAvailable
|
Module16=C_UpdateAvailable
|
||||||
Module17=DBRequestManager
|
Module17=DBRequestManager
|
||||||
Module18=FileHandler
|
Module18=FirebaseMessaging
|
||||||
Module19=FirebaseMessaging
|
Module19=MAPA_RUTAS
|
||||||
Module2=B4XMainPage
|
Module2=B4XMainPage
|
||||||
Module20=kms_helperSubs
|
Module20=Starter
|
||||||
Module21=MAPA_RUTAS
|
Module21=Subs
|
||||||
Module22=Starter
|
Module22=Tracker
|
||||||
Module23=Subs
|
|
||||||
Module24=Tracker
|
|
||||||
Module3=BatteryUtilities
|
Module3=BatteryUtilities
|
||||||
Module4=C_Cliente
|
Module4=C_Cliente
|
||||||
Module5=C_Clientes
|
Module5=C_Clientes
|
||||||
@@ -172,14 +172,14 @@ Module7=C_Mapas
|
|||||||
Module8=C_Nota
|
Module8=C_Nota
|
||||||
Module9=C_NoVenta
|
Module9=C_NoVenta
|
||||||
NumberOfFiles=58
|
NumberOfFiles=58
|
||||||
NumberOfLibraries=30
|
NumberOfLibraries=32
|
||||||
NumberOfModules=24
|
NumberOfModules=22
|
||||||
Version=11.5
|
Version=11.5
|
||||||
@EndOfDesignText@
|
@EndOfDesignText@
|
||||||
#Region Project Attributes
|
#Region Project Attributes
|
||||||
#ApplicationLabel: Guna V3.1
|
#ApplicationLabel: Guna V3.1
|
||||||
#VersionCode: 1
|
#VersionCode: 1
|
||||||
#VersionName: 2.10.27ENC
|
#VersionName: 4.01.09ENC
|
||||||
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
'SupportedOrientations possible values: unspecified, landscape or portrait.
|
||||||
#SupportedOrientations: portrait
|
#SupportedOrientations: portrait
|
||||||
#CanInstallToExternalStorage: False
|
#CanInstallToExternalStorage: False
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ ModuleBookmarks2=
|
|||||||
ModuleBookmarks20=
|
ModuleBookmarks20=
|
||||||
ModuleBookmarks21=
|
ModuleBookmarks21=
|
||||||
ModuleBookmarks22=
|
ModuleBookmarks22=
|
||||||
ModuleBookmarks23=
|
|
||||||
ModuleBookmarks24=
|
|
||||||
ModuleBookmarks3=
|
ModuleBookmarks3=
|
||||||
ModuleBookmarks4=
|
ModuleBookmarks4=
|
||||||
ModuleBookmarks5=
|
ModuleBookmarks5=
|
||||||
@@ -39,8 +37,6 @@ ModuleBreakpoints2=
|
|||||||
ModuleBreakpoints20=
|
ModuleBreakpoints20=
|
||||||
ModuleBreakpoints21=
|
ModuleBreakpoints21=
|
||||||
ModuleBreakpoints22=
|
ModuleBreakpoints22=
|
||||||
ModuleBreakpoints23=
|
|
||||||
ModuleBreakpoints24=
|
|
||||||
ModuleBreakpoints3=
|
ModuleBreakpoints3=
|
||||||
ModuleBreakpoints4=
|
ModuleBreakpoints4=
|
||||||
ModuleBreakpoints5=
|
ModuleBreakpoints5=
|
||||||
@@ -52,27 +48,25 @@ ModuleClosedNodes0=
|
|||||||
ModuleClosedNodes1=5,7,8,9,10,11,12,13,14
|
ModuleClosedNodes1=5,7,8,9,10,11,12,13,14
|
||||||
ModuleClosedNodes10=
|
ModuleClosedNodes10=
|
||||||
ModuleClosedNodes11=6
|
ModuleClosedNodes11=6
|
||||||
ModuleClosedNodes12=1,3,5,6,7,9,10,11,12,13,14,15,16,17,18,19,20,21,27,28,29,30,31,32
|
ModuleClosedNodes12=2,3,6,8,10,11,13,14,15
|
||||||
ModuleClosedNodes13=
|
ModuleClosedNodes13=1
|
||||||
ModuleClosedNodes14=
|
ModuleClosedNodes14=
|
||||||
ModuleClosedNodes15=
|
ModuleClosedNodes15=
|
||||||
ModuleClosedNodes16=
|
ModuleClosedNodes16=
|
||||||
ModuleClosedNodes17=
|
ModuleClosedNodes17=
|
||||||
ModuleClosedNodes18=
|
ModuleClosedNodes18=
|
||||||
ModuleClosedNodes19=
|
ModuleClosedNodes19=3,4
|
||||||
ModuleClosedNodes2=9
|
ModuleClosedNodes2=
|
||||||
ModuleClosedNodes20=
|
ModuleClosedNodes20=1
|
||||||
ModuleClosedNodes21=3,4
|
ModuleClosedNodes21=
|
||||||
ModuleClosedNodes22=1
|
ModuleClosedNodes22=
|
||||||
ModuleClosedNodes23=
|
|
||||||
ModuleClosedNodes24=
|
|
||||||
ModuleClosedNodes3=
|
ModuleClosedNodes3=
|
||||||
ModuleClosedNodes4=2,6,7,10,11
|
ModuleClosedNodes4=
|
||||||
ModuleClosedNodes5=7
|
ModuleClosedNodes5=7
|
||||||
ModuleClosedNodes6=
|
ModuleClosedNodes6=
|
||||||
ModuleClosedNodes7=
|
ModuleClosedNodes7=
|
||||||
ModuleClosedNodes8=
|
ModuleClosedNodes8=
|
||||||
ModuleClosedNodes9=
|
ModuleClosedNodes9=
|
||||||
NavigationStack=kms_helperSubs,Class_Globals,0,0,B4XMainPage,Entrar_Click,335,0,B4XMainPage,Initialize,96,0,C_Principal,Class_Globals,0,0,C_Principal,Initialize,226,0,C_Principal,B4XPage_Created,230,0,kms_helperSubs,RD_respalda_cat_gunaprod2,165,0,C_Principal,B4XPage_Appear,312,0,Main,Globals,25,0,B4XMainPage,Class_Globals,19,0
|
NavigationStack=C_Cliente,B_guardaencuesta_Click,1295,0,C_Cliente,B_guardaencuesta_m2_Click,2020,0,Diseñador Visual,ESNCUESTA_M2.bal,-100,5,C_Cliente,B_guardaencuesta_m4_Click,2288,0,C_Cliente,b_preguntag_Click,783,6,C_Cliente,CB1_P3_M3_CheckedChange,2806,0,C_Cliente,CB5_P3_M3_CheckedChange,2853,0,C_Cliente,Class_Globals,354,0,Diseñador Visual,ENCUESSTA_M3.bal,-100,6,C_Cliente,B_guardaencuesta_m3_Click,2196,0,MAPA_RUTAS,MapFragment1_Ready,177,0
|
||||||
SelectedBuild=0
|
SelectedBuild=0
|
||||||
VisibleModules=22,2,23,14,12,13,4,8,17,20
|
VisibleModules=20,2,21,12,13,4,8,11,5,10,19
|
||||||
|
|||||||
@@ -143,7 +143,7 @@ Sub MapFragment1_Ready
|
|||||||
If c.GetString("CAT_CL_LONG") <> "" Then LongitudRU = c.GetString("CAT_CL_LONG")
|
If c.GetString("CAT_CL_LONG") <> "" Then LongitudRU = c.GetString("CAT_CL_LONG")
|
||||||
CODIGO=c.GetString("CAT_CL_CODIGO")
|
CODIGO=c.GetString("CAT_CL_CODIGO")
|
||||||
Tienda= c.GetString("CAT_CL_NOMBRE")
|
Tienda= c.GetString("CAT_CL_NOMBRE")
|
||||||
MARK_AZUL = gmap.AddMarker2(LatitudRu,LongitudRU,CODIGO, gmap.HUE_BLUE)
|
MARK_AZUL = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_BLUE)
|
||||||
MARK_AZUL.Snippet = Tienda
|
MARK_AZUL.Snippet = Tienda
|
||||||
Next
|
Next
|
||||||
End If
|
End If
|
||||||
@@ -162,7 +162,7 @@ Sub MapFragment1_Ready
|
|||||||
LatitudRu = c2.GetString("CAT_CL_LAT")
|
LatitudRu = c2.GetString("CAT_CL_LAT")
|
||||||
CODIGO=c2.GetString("CAT_CL_CODIGO")
|
CODIGO=c2.GetString("CAT_CL_CODIGO")
|
||||||
Tienda= c2.GetString("CAT_CL_NOMBRE")
|
Tienda= c2.GetString("CAT_CL_NOMBRE")
|
||||||
MARK_VERDE = gmap.AddMarker2(LatitudRu,LongitudRU,CODIGO,gmap.HUE_GREEN)
|
MARK_VERDE = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_GREEN)
|
||||||
MARK_VERDE.Snippet = Tienda
|
MARK_VERDE.Snippet = Tienda
|
||||||
Next
|
Next
|
||||||
Else
|
Else
|
||||||
@@ -263,6 +263,7 @@ Sub GPS_LocationChanged (Parametro As Location)
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub Activity_Resume
|
Sub Activity_Resume
|
||||||
|
|
||||||
If GPS.GPSEnabled = False Then
|
If GPS.GPSEnabled = False Then
|
||||||
ToastMessageShow("Debe Activar el GPS del Equipo.", True)
|
ToastMessageShow("Debe Activar el GPS del Equipo.", True)
|
||||||
StartActivity(GPS.LocationSettingsIntent)
|
StartActivity(GPS.LocationSettingsIntent)
|
||||||
|
|||||||
62
B4A/Subs.bas
62
B4A/Subs.bas
@@ -20,6 +20,7 @@ Sub Process_Globals
|
|||||||
Dim rutaHrsAtras As Int = 48
|
Dim rutaHrsAtras As Int = 48
|
||||||
' Dim rutaInicioHoy As String = ""
|
' Dim rutaInicioHoy As String = ""
|
||||||
Private subsLogs As Boolean = False
|
Private subsLogs As Boolean = False
|
||||||
|
Dim skmt As SQL
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'Pone el valor de phn.Model en la variable global "devModel"
|
'Pone el valor de phn.Model en la variable global "devModel"
|
||||||
@@ -848,23 +849,13 @@ Sub traeMaxPromos(pm As Map) As Int
|
|||||||
Private vendidas As Int = 0
|
Private vendidas As Int = 0
|
||||||
maxPromos.Initialize
|
maxPromos.Initialize
|
||||||
' If Starter.promosLog Then Log("==== HISTORICO:"&pm.Get("historico"))
|
' If Starter.promosLog Then Log("==== HISTORICO:"&pm.Get("historico"))
|
||||||
If thisLog Then Log("TRAEMAXPROMOS PM: " & pm)
|
If thisLog Then Log(pm)
|
||||||
If pm.Get("historico") = "1" Then maxPromos.Add(pm.Get("maxRecurrente").As(Int)) 'Si hay historico, agregamos maxRecurrente
|
If pm.Get("historico") = "1" Then maxPromos.Add(pm.Get("maxRecurrente")) 'Si hay historico, agregamos maxRecurrente
|
||||||
maxPromos.Add(pm.Get("maxPromos").As(Int)) 'Agregamos maxPromos
|
maxPromos.Add(pm.Get("maxPromos")) 'Agregamos maxPromos
|
||||||
maxPromos.Add(pm.Get("maxXcliente").As(Int)) 'Agregamos maxXcliente
|
maxPromos.Add(pm.Get("maxXcliente")) 'Agregamos maxXcliente
|
||||||
|
If thisLog Then Log(maxPromos)
|
||||||
|
|
||||||
Private pr As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select PR_CANT from PROMOXRUTA where PR_PROMOID = '${pm.Get("id")}'"$)
|
|
||||||
If pr.RowCount > 0 Then
|
|
||||||
pr.Position = 0
|
|
||||||
maxPromos.Add(pr.GetString("PR_CANT").As(Int)) 'Agregamos maxXruta
|
|
||||||
End If
|
|
||||||
|
|
||||||
' maxPromos.Add(2)
|
|
||||||
If thisLog Then Log("maxpromos -> " & maxPromos)
|
|
||||||
maxPromos.Sort(True)
|
maxPromos.Sort(True)
|
||||||
Log("MAXP -> " & maxPromos)
|
|
||||||
Log("=========== " & maxPromos.Get(0))
|
|
||||||
' Log($"|${pm.Get("id").As(String).trim}|${traeCliente.Trim}|"$)
|
' Log($"|${pm.Get("id").As(String).trim}|${traeCliente.Trim}|"$)
|
||||||
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select sum(PE_CANT) as vendidas from PEDIDO where PE_PROID = ? and PE_CLIENTE = ? ", Array As String(pm.Get("id").As(String).trim, traeCliente.Trim))
|
Private c As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select sum(PE_CANT) as vendidas from PEDIDO where PE_PROID = ? and PE_CLIENTE = ? ", Array As String(pm.Get("id").As(String).trim, traeCliente.Trim))
|
||||||
If c.RowCount > 0 Then
|
If c.RowCount > 0 Then
|
||||||
@@ -1107,27 +1098,20 @@ Sub traePromoIdDeBD As Map 'ignore
|
|||||||
Return m
|
Return m
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'Guarda el nombre y version de la app en CAT_VARIABLES.
|
Sub agregaColumna(tabla As String, columna As String, tipo As String) 'ignore
|
||||||
Sub guardaAppInfo(skmt As SQL) 'ignore
|
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna en la tabla
|
||||||
skmt.ExecNonQuery("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'EMPRESA' or CAT_VA_DESCRIPCION = 'APP_NAME' or CAT_VA_DESCRIPCION = 'APP_VERSION'")
|
Private c As Cursor = skmt.ExecQuery($"SELECT COUNT(*) AS fCol FROM pragma_table_info('${tabla}') WHERE name='${columna}'"$)
|
||||||
skmt.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_NAME', '${Application.LabelName}')"$)
|
c.Position = 0
|
||||||
skmt.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_VERSION', '${Application.VersionName}')"$)
|
If c.GetString("fCol") = 0 Then 'Si no esta la columna la agregamos
|
||||||
End Sub
|
skmt.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
|
||||||
|
Log($"Columna "${columna} ${tipo}", agregada a "${tabla}"."$)
|
||||||
'Actualiza la tabla PROMOXRUTA con la cantidad especificada.
|
End If
|
||||||
Sub guardaPromoXruta(laPromo As String, laCant As Int) 'ignore
|
Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch
|
||||||
|
Try
|
||||||
B4XPages.MainPage.skmt.ExecNonQuery($"update PROMOXRUTA set PR_CANT = PR_CANT - ${laCant} where PR_PROMOID = '${laPromo}'"$)
|
skmt.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
|
||||||
Log($"${laPromo} - ${laCant}"$)
|
Log($"Columna "${columna} ${tipo}", agregada a "${tabla}".."$)
|
||||||
|
Catch
|
||||||
End Sub
|
Log(LastException)
|
||||||
|
End Try
|
||||||
'Muestra en el Log los campos y valores que regresan en el JobDone.
|
End Try
|
||||||
Sub logJobDoneResultados(resultado As DBResult) 'ignore
|
|
||||||
For Each records() As Object In resultado.Rows
|
|
||||||
LogColor($"====== ${resultado.Tag} - REGISTROS = ${resultado.Rows.Size}"$, Colors.RGB(215,37,0))
|
|
||||||
For Each k As String In resultado.Columns.Keys
|
|
||||||
LogColor(k & " = " & records(resultado.Columns.Get(k)), Colors.RGB(215,37,0))
|
|
||||||
Next
|
|
||||||
Next
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1,664 +0,0 @@
|
|||||||
B4A=true
|
|
||||||
Group=Default Group
|
|
||||||
ModulesStructureVersion=1
|
|
||||||
Type=Class
|
|
||||||
Version=12.2
|
|
||||||
@EndOfDesignText@
|
|
||||||
Sub Class_Globals
|
|
||||||
Private Root As B4XView 'ignore
|
|
||||||
Private xui As XUI 'ignore
|
|
||||||
Dim skmt, rkmt As SQL
|
|
||||||
Private EventName As String 'ignore
|
|
||||||
Private CallBack As Object 'ignore
|
|
||||||
Dim rp As RuntimePermissions
|
|
||||||
Dim safePath As String
|
|
||||||
Dim fechaHoy As String
|
|
||||||
Dim fechaAnt As String
|
|
||||||
Dim skmtAttached As Boolean = False
|
|
||||||
Dim rkmtAttached As Boolean = False
|
|
||||||
'####### MES Vars ######
|
|
||||||
Private ion As Object
|
|
||||||
' Dim device As Phone
|
|
||||||
' Private mesCallback As Object
|
|
||||||
' Private mesEventName As String
|
|
||||||
Dim RD_Init_IsInitialized As Boolean = False
|
|
||||||
Dim btAdmin As BluetoothAdmin
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Inicializa la clase "kms_helperSubs".
|
|
||||||
Public Sub Initialize (vCallback As Object, vEventName As String) As Object
|
|
||||||
EventName = vEventName
|
|
||||||
CallBack = vCallback
|
|
||||||
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
|
|
||||||
|
|
||||||
'RD - Inicializa Respaldo Diario
|
|
||||||
Sub RD_Init
|
|
||||||
Dim Dirp As String = File.DirRootExternal
|
|
||||||
Dim Dir As String
|
|
||||||
' Dim Dir2 As String
|
|
||||||
Try
|
|
||||||
File.MakeDir(Dirp,"/kmts")
|
|
||||||
Dir = "/kmts"
|
|
||||||
' Log("creado en kmts " & Dirp & Dir)
|
|
||||||
Catch
|
|
||||||
Dir = ""
|
|
||||||
' Log("creado en raiz")
|
|
||||||
End Try
|
|
||||||
safePath = Dirp & Dir
|
|
||||||
If Starter.Logger Then Log($"Safepath:${safePath}"$)
|
|
||||||
Private name() As String = Regex.split(" ", Application.LabelName)
|
|
||||||
rkmt.Initialize(safePath,$"${name(0)}.rkmt.km"$, True)
|
|
||||||
skmt.Initialize(File.DirInternal,"kmt.db", False)
|
|
||||||
If chkIfTableExists(skmt, "PEDIDO") Then rkmt.ExecNonQuery($"create table if not exists PEDIDO (${getTableColumnList(skmt, "PEDIDO")}, FECHA TEXT)"$)
|
|
||||||
If chkIfTableExists(skmt, "CAT_DETALLES_PAQ") Then rkmt.ExecNonQuery($"create table if not exists CAT_DETALLES_PAQ (${getTableColumnList(skmt, "CAT_DETALLES_PAQ")}, FECHA TEXT)"$)
|
|
||||||
If chkIfTableExists(skmt, "CAT_GUNAPROD") Then rkmt.ExecNonQuery($"create table if not exists CAT_GUNAPROD (${getTableColumnList(skmt, "CAT_GUNAPROD")}, FECHA TEXT)"$)
|
|
||||||
If chkIfTableExists(skmt, "CAT_GUNAPROD2") Then rkmt.ExecNonQuery($"create table if not exists CAT_GUNAPROD2 (${getTableColumnList(skmt, "CAT_GUNAPROD2")}, FECHA TEXT)"$)
|
|
||||||
If chkIfTableExists(skmt, "kmt_info") Then rkmt.ExecNonQuery($"create table if not exists kmt_info (${getTableColumnList(skmt, "kmt_info")}, FECHA TEXT)"$)
|
|
||||||
DateTime.DateFormat = "yyyyMMdd"
|
|
||||||
fechaHoy = DateTime.Date(DateTime.Now)
|
|
||||||
If Starter.Logger Then Log("RKMTS: " & rkmt.IsInitialized)
|
|
||||||
If revisaSkmtAttached And rkmt.IsInitialized Then RD_Init_IsInitialized = True Else RD_Init_IsInitialized = False
|
|
||||||
' revisaRkmtAttached
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Revisa si esta montada "kmt.db" como "skmt1" y si no, la monta
|
|
||||||
'Para que "rkmt" vea a "skmt", es necesario montarla (attach).
|
|
||||||
Sub revisaSkmtAttached As Boolean
|
|
||||||
skmtAttached = False
|
|
||||||
Dim rs As ResultSet = rkmt.ExecQuery("SELECT * FROM pragma_database_list")
|
|
||||||
Do While rs.NextRow 'Revisamos si esta montada "kmt.db" como "skmt1" y si no, la montamos.
|
|
||||||
If rs.GetString("name") = "skmt1" Then skmtAttached = True
|
|
||||||
Loop
|
|
||||||
If Not(skmtAttached) Then
|
|
||||||
rkmt.ExecNonQuery($"attach database '${File.Combine(File.DirInternal, "kmt.db")}' as skmt1;"$)
|
|
||||||
skmtAttached = True
|
|
||||||
End If
|
|
||||||
Return skmtAttached
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Revisa si esta montada "kmt.db" como "rkmt1" y si no, la monta
|
|
||||||
'Para que "skmt" vea a "rkmt", es necesario montarla (attach).
|
|
||||||
Sub revisaRkmtAttached As Boolean
|
|
||||||
rkmtAttached = False
|
|
||||||
Dim rs As ResultSet = skmt.ExecQuery("SELECT * FROM pragma_database_list")
|
|
||||||
Do While rs.NextRow 'Revisamos si esta montada "kmt.db" como "rkmt1" y si no, la montamos.
|
|
||||||
If rs.GetString("name") = "rkmt1" Then rkmtAttached = True
|
|
||||||
Log(rs.GetString("name"))
|
|
||||||
Loop
|
|
||||||
If Not(rkmtAttached) Then
|
|
||||||
|
|
||||||
Private name() As String = Regex.split(" ", Application.LabelName)
|
|
||||||
skmt.ExecNonQuery($"attach database '${File.Combine(safePath,$"${name(0)}.rkmt.km"$)}' as rkmt1;"$)
|
|
||||||
rkmtAttached = True
|
|
||||||
End If
|
|
||||||
Return rkmtAttached
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Inicializa la BD con "kmt.db" en "File.DirInternal", si el archivo no existe, lo copia desde "File.DirAssets".
|
|
||||||
'Ej: dim skmt as sql = dbInit
|
|
||||||
Sub dbInit As SQL 'ignore
|
|
||||||
Private db As SQL
|
|
||||||
If File.Exists(File.DirInternal, "kmt.db") = False Then File.Copy(File.DirAssets, "kmt.db", File.DirInternal, "kmt.db")
|
|
||||||
db.Initialize(File.DirInternal,"kmt.db", True)
|
|
||||||
' dbOk(True)
|
|
||||||
' Log(db.IsInitialized)
|
|
||||||
Return db
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla PEDIDO a rkmt.db en la tarjeta del celular.
|
|
||||||
Sub RD_respalda_pedido
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Copiando PEDIDO ...")
|
|
||||||
Private x As Cursor = skmt.ExecQuery("select * from PEDIDO")
|
|
||||||
If x.RowCount > 0 Then
|
|
||||||
Private lasCols As String = getTableColumnListName(skmt, "PEDIDO")
|
|
||||||
rkmt.BeginTransaction
|
|
||||||
rkmt.ExecNonQuery($"delete from PEDIDO where FECHA = '${fechaHoy}'"$)
|
|
||||||
rkmt.ExecNonQuery($"insert into PEDIDO (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.PEDIDO where substr(pe_fecha, 1, 10) = '${fechaHoy}'"$)
|
|
||||||
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
||||||
rkmt.EndTransaction
|
|
||||||
End If
|
|
||||||
x.Close
|
|
||||||
Log("P: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_GUNAPRODS a rkmt.db en la tarjeta del celular.
|
|
||||||
Sub RD_respalda_cat_gunaprod
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Copiando CAT_GUNAPROD ...")
|
|
||||||
Private x As Cursor = skmt.ExecQuery("select * from CAT_GUNAPROD")
|
|
||||||
If x.RowCount > 0 Then
|
|
||||||
Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD")
|
|
||||||
lasCols = lasCols.Replace(", CAT_GP_IMG", "") 'Quitamos la imagen del respaldo.
|
|
||||||
rkmt.BeginTransaction
|
|
||||||
rkmt.ExecNonQuery($"delete from CAT_GUNAPROD where FECHA = '${fechaHoy}'"$)
|
|
||||||
rkmt.ExecNonQuery($"insert into CAT_GUNAPROD (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.CAT_GUNAPROD"$)
|
|
||||||
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
||||||
rkmt.EndTransaction
|
|
||||||
End If
|
|
||||||
x.Close
|
|
||||||
Log("GP: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_GUNAPROD de rkmt.db al celular.
|
|
||||||
Sub RD_restaura_cat_gunaprod
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Restaurando CAT_GUNAPROD ...")
|
|
||||||
Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD")
|
|
||||||
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la imagen del respaldo.
|
|
||||||
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
|
|
||||||
Log(c.RowCount)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position = 0
|
|
||||||
Log(c.GetString("FECHA"))
|
|
||||||
skmt.ExecNonQuery("delete from CAT_GUNAPROD")
|
|
||||||
skmt.ExecNonQuery($"insert into CAT_GUNAPROD (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
Log($"insert into CAT_GUNAPROD (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
End If
|
|
||||||
Log("R-GP: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_GUNAPROD2 a rkmt.db en la tarjeta del celular.
|
|
||||||
Sub RD_respalda_cat_gunaprod2
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Copiando CAT_GUNAPROD2 ...")
|
|
||||||
Private x As Cursor = skmt.ExecQuery("select * from CAT_GUNAPROD2")
|
|
||||||
If x.RowCount > 0 Then
|
|
||||||
Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD2")
|
|
||||||
lasCols = lasCols.Replace(", CAT_GP_IMG", "") 'Quitamos la fecha del respaldo.
|
|
||||||
rkmt.BeginTransaction
|
|
||||||
rkmt.ExecNonQuery($"delete from CAT_GUNAPROD2 where FECHA = '${fechaHoy}'"$)
|
|
||||||
rkmt.ExecNonQuery($"insert into CAT_GUNAPROD2 (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.CAT_GUNAPROD2"$)
|
|
||||||
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
||||||
rkmt.EndTransaction
|
|
||||||
End If
|
|
||||||
x.Close
|
|
||||||
Log("GP2: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_GUNAPROD2 de rkmt.db al celular.
|
|
||||||
Sub RD_restaura_cat_gunaprod2
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Restaurando CAT_GUNAPROD2 ...")
|
|
||||||
Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD2")
|
|
||||||
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
|
|
||||||
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD2 order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
|
|
||||||
' Log(c.RowCount)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position = 0
|
|
||||||
' Log(c.GetString("FECHA"))
|
|
||||||
skmt.ExecNonQuery("delete from CAT_GUNAPROD2")
|
|
||||||
skmt.ExecNonQuery($"insert into CAT_GUNAPROD2 (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD2 where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
Log($"insert into CAT_GUNAPROD2 (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD2 where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
End If
|
|
||||||
Log("R-GP2: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_DETALLE_PAQ a rkmt.db en la tarjeta del celular.
|
|
||||||
Sub RD_respalda_cat_detalle_paq
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Copiando CAT_DETALLES_PAQ ...")
|
|
||||||
Private x As Cursor = skmt.ExecQuery("select * from CAT_DETALLES_PAQ")
|
|
||||||
If x.RowCount > 0 Then
|
|
||||||
Private lasCols As String = getTableColumnListName(skmt, "CAT_DETALLES_PAQ")
|
|
||||||
rkmt.BeginTransaction
|
|
||||||
rkmt.ExecNonQuery($"delete from CAT_DETALLES_PAQ where fecha = '${fechaHoy}'"$)
|
|
||||||
rkmt.ExecNonQuery($"insert into CAT_DETALLES_PAQ (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.CAT_DETALLES_PAQ"$)
|
|
||||||
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
||||||
rkmt.EndTransaction
|
|
||||||
Log("DP: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End If
|
|
||||||
x.Close
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla CAT_DETALLES_PAQ de rkmt.db al celular.
|
|
||||||
Sub RD_restaura_cat_detalle_paq
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Restaurando CAT_DETALLES_PAQ ...")
|
|
||||||
Private lasCols As String = getTableColumnListName(rkmt, "CAT_DETALLES_PAQ")
|
|
||||||
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
|
|
||||||
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_DETALLES_PAQ order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
|
|
||||||
' Log(c.RowCount)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position = 0
|
|
||||||
' Log(c.GetString("FECHA"))
|
|
||||||
skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")
|
|
||||||
skmt.ExecNonQuery($"insert into CAT_DETALLES_PAQ (${lasCols}) select ${lasCols} from rkmt1.CAT_DETALLES_PAQ where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
Log($"insert into CAT_DETALLES_PAQ (${lasCols}) select ${lasCols} from rkmt1.CAT_DETALLES_PAQ where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
End If
|
|
||||||
Log("R-DP: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla kmt_info a rkmt.db en la tarjeta del celular.
|
|
||||||
Sub RD_respalda_kmt_info
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Copiando kmt_info ...")
|
|
||||||
Private x As Cursor = skmt.ExecQuery("select * from kmt_info")
|
|
||||||
If x.RowCount > 0 Then
|
|
||||||
Private lasCols As String = getTableColumnListName(skmt, "kmt_info")
|
|
||||||
rkmt.BeginTransaction
|
|
||||||
rkmt.ExecNonQuery($"delete from kmt_info where fecha = '${fechaHoy}'"$)
|
|
||||||
rkmt.ExecNonQuery($"insert into kmt_info (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.kmt_info"$)
|
|
||||||
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
|
|
||||||
rkmt.EndTransaction
|
|
||||||
End If
|
|
||||||
x.Close
|
|
||||||
Log("KMT: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Copia la tabla kmt_info de rkmt.db al celular.
|
|
||||||
Sub RD_restaura_kmt_info
|
|
||||||
Private inicio As String = DateTime.Now
|
|
||||||
' Log("Restaurando KMT_INFO ...")
|
|
||||||
Private lasCols As String = getTableColumnListName(rkmt, "kmt_info")
|
|
||||||
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
|
|
||||||
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from kmt_info order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
|
|
||||||
' Log(c.RowCount)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position = 0
|
|
||||||
' Log(c.GetString("FECHA"))
|
|
||||||
skmt.ExecNonQuery("delete from kmt_info")
|
|
||||||
skmt.ExecNonQuery($"insert into kmt_info (${lasCols}) select ${lasCols} from rkmt1.kmt_info where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
Log($"insert into kmt_info (${lasCols}) select ${lasCols} from rkmt1.kmt_info where fecha = '${c.GetString("FECHA")}'"$)
|
|
||||||
End If
|
|
||||||
Log("R-KMT: " & ((DateTime.Now - inicio)/1000) & " segs")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'RD - Realiza un "vacuum" de la base de datos "rkmt".
|
|
||||||
Sub RD_vacuum 'ignore
|
|
||||||
Log("Vacuum")
|
|
||||||
rkmt.ExecNonQuery("vacuum;")
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Agrega una columna a la tabla especificada.
|
|
||||||
'Hay que indicar el "tipo" de la columna (TEXT, INTEGER, ETC)
|
|
||||||
'Ej. agregaColumna(DB, "TABLA", "COLUMNA", "TIPO")
|
|
||||||
Sub agregaColumna(db As SQL, tabla As String, columna As String, tipo As String) 'ignore
|
|
||||||
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna en la tabla
|
|
||||||
Private c As Cursor = db.ExecQuery($"SELECT COUNT(*) AS fCol FROM pragma_table_info('${tabla}') WHERE name='${columna}'"$)
|
|
||||||
c.Position = 0
|
|
||||||
If c.GetString("fCol") = 0 Then 'Si no esta la columna la agregamos
|
|
||||||
db.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
|
|
||||||
Log($"Columna "${columna} ${tipo}", agregada a "${tabla}"."$)
|
|
||||||
End If
|
|
||||||
Catch 'Si no funciona "pragma_table_info" lo hacemos con try/catch
|
|
||||||
Try
|
|
||||||
db.ExecNonQuery($"ALTER TABLE ${tabla} ADD COLUMN ${columna} ${tipo}"$)
|
|
||||||
Log($"Columna "${columna} ${tipo}", agregada a "${tabla}".."$)
|
|
||||||
Catch
|
|
||||||
Log(LastException)
|
|
||||||
End Try
|
|
||||||
End Try
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa los nombres y tipos de las columnas de una tabla dada.
|
|
||||||
Sub getTableColumnList(db As SQL, table As String) As String 'ignore
|
|
||||||
Private l As String = ""
|
|
||||||
If chkIfTableExists(db, table) Then
|
|
||||||
Private c As Cursor = skmt.ExecQuery($"pragma table_info(${table})"$)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
For i = 0 To c.RowCount - 1
|
|
||||||
c.Position = i
|
|
||||||
If l.Length = 0 Then
|
|
||||||
l = $"${c.GetString("name")} ${c.GetString("type")}"$
|
|
||||||
Else
|
|
||||||
l = $"${l}, ${c.GetString("name")} ${c.GetString("type")}"$
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
Return "No existe la tabla."
|
|
||||||
End If
|
|
||||||
c.Close
|
|
||||||
Return l
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa solo los nombres de las columnas de una tabla dada.
|
|
||||||
Sub getTableColumnListName(db As SQL, table As String) As String 'ignore
|
|
||||||
Private l As String = ""
|
|
||||||
If chkIfTableExists(db, table) Then
|
|
||||||
Private c As Cursor = skmt.ExecQuery($"pragma table_info(${table})"$)
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
For i = 0 To c.RowCount - 1
|
|
||||||
c.Position = i
|
|
||||||
If l.Length = 0 Then
|
|
||||||
l = $"${c.GetString("name")}"$
|
|
||||||
Else
|
|
||||||
l = $"${l}, ${c.GetString("name")}"$
|
|
||||||
End If
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
Return "No existe la tabla."
|
|
||||||
End If
|
|
||||||
c.Close
|
|
||||||
Return l
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Revisa si una tabla dada existe en una base de datos dada, regresa true o false.
|
|
||||||
Sub chkIfTableExists(db As SQL, table As String) As Boolean 'ignore
|
|
||||||
Private t As Boolean = False 'ignore
|
|
||||||
If db.IsInitialized Then
|
|
||||||
Private c As Cursor = skmt.ExecQuery($"SELECT name FROM sqlite_master WHERE type='table' AND name='${table}'"$)
|
|
||||||
If c.RowCount > 0 Then t = True
|
|
||||||
c.Close
|
|
||||||
End If
|
|
||||||
Return t
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Hace visible y trae al frente el panel con los parametros "Top" y "Left" dados
|
|
||||||
Sub panelVisible(panel As Panel, top As Int, left As Int) 'ignore
|
|
||||||
panel.BringToFront
|
|
||||||
panel.Visible = True
|
|
||||||
panel.Top = top
|
|
||||||
panel.Left = left
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Centra una etiqueta dentro de un elemento superior
|
|
||||||
Sub centraEtiqueta(elemento As Label, anchoElementoSuperior As Int) 'ignore
|
|
||||||
elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2)
|
|
||||||
etiquetaCentrada(True)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub etiquetaCentrada(Success As Boolean)
|
|
||||||
If SubExists(CallBack, EventName & "_etiquetaCentrada") Then
|
|
||||||
CallSub2(CallBack, EventName & "_etiquetaCentrada", Success)
|
|
||||||
End If
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Centra un panel horizontalmente dentro de un elemento superior
|
|
||||||
Sub centraPanel(elemento As Panel, anchoElementoSuperior As Int) 'ignore
|
|
||||||
elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Centra un panel verticalmente dentro de un elemento superior
|
|
||||||
Sub centraPanelV(elemento As Panel, altoElementoSuperior As Int) 'ignore
|
|
||||||
elemento.Top = Round(altoElementoSuperior/2)-(elemento.Height/2)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Centra una barra de progreso dentro de un elemento superior
|
|
||||||
Sub centraProgressBar(elemento As ProgressBar, anchoElementoSuperior As Int) 'ignore
|
|
||||||
elemento.Left = Round(anchoElementoSuperior/2)-(elemento.Width/2)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa el usuario de la tabla USUARIOA, si no lo encuentra regresa "SinUsuario"
|
|
||||||
Sub traeUsuarioDeDB(db As SQL) As String 'ignore
|
|
||||||
Private c As Cursor
|
|
||||||
Private u As String = "SinUsuario"
|
|
||||||
c = skmt.ExecQuery("select USUARIO from usuarioa")
|
|
||||||
c.Position=0
|
|
||||||
If c.RowCount > 0 Then u = c.GetString("USUARIO")
|
|
||||||
c.Close
|
|
||||||
Return u
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa el almacen actual de la base de datos.
|
|
||||||
Sub traeAlmacen(db As SQL) As String 'ignore
|
|
||||||
Private c As Cursor
|
|
||||||
Private a As String
|
|
||||||
c = skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN")
|
|
||||||
c.Position = 0
|
|
||||||
a = c.GetString("ID_ALMACEN")
|
|
||||||
c.Close
|
|
||||||
Return a
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa el nombre del producto desde CAT_GUNAPROD.
|
|
||||||
Sub traeProdNombre(db As SQL, id As String) As String 'ignore
|
|
||||||
Private h As Cursor
|
|
||||||
Private n As String
|
|
||||||
h = skmt.ExecQuery2("select CAT_GP_NOMBRE from CAT_GUNAPROD where CAT_GP_ID = ? ", Array As String(id.Trim))
|
|
||||||
If h.RowCount > 0 Then
|
|
||||||
h.Position = 0
|
|
||||||
n = h.GetString("CAT_GP_NOMBRE")
|
|
||||||
' Log(h.RowCount&"|"&id&"|"&n&"|")
|
|
||||||
End If
|
|
||||||
h.Close
|
|
||||||
If n = Null Or n="" Then n = "N/A"
|
|
||||||
' Log(h.RowCount&"|"&id&"|"&n&"|")
|
|
||||||
Return n
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa la ruta actual de la base de datos.
|
|
||||||
Sub traeRuta(db As SQL) As String 'ignore
|
|
||||||
Private c As Cursor
|
|
||||||
Private r As String
|
|
||||||
c = skmt.ExecQuery("select CAT_CL_RUTA from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
|
|
||||||
r = "0"
|
|
||||||
If c.RowCount > 0 Then
|
|
||||||
c.Position=0
|
|
||||||
r = c.GetString("CAT_CL_RUTA")
|
|
||||||
End If
|
|
||||||
c.Close
|
|
||||||
Return r
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa el cliente actual de la base de dtos (CUENTAA).
|
|
||||||
Sub traeCliente(db As SQL) As String 'ignore
|
|
||||||
Private c As Cursor
|
|
||||||
Private cl As String
|
|
||||||
c = skmt.ExecQuery("Select CUENTA from cuentaa")
|
|
||||||
c.Position=0
|
|
||||||
cl = c.GetString("CUENTA")
|
|
||||||
c.Close
|
|
||||||
Return cl
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa en un mapa el total de productos y monto del pedido del cliente actual
|
|
||||||
'resultado = {"productos":"antidad_de_productos", "monto":"costo_total"}
|
|
||||||
Sub traeTotalesClienteActual(db As SQL) As Map 'ignore
|
|
||||||
Private m As Map
|
|
||||||
m.Initialize
|
|
||||||
Private c_prodsX As Cursor = skmt.ExecQuery("select ifnull(sum(PE_CANT), 0) as cantProds, ifnull(sum(PE_COSTO_TOT), 0) as costoTotal FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PRONOMBRE asc")
|
|
||||||
c_prodsX.Position = 0
|
|
||||||
' LogColor($"Productos de la orden: ${c_prodsX.GetString("cantProds")}, Total: ${c_prodsX.GetString("costoTotal")}"$, Colors.red)
|
|
||||||
m = CreateMap("productos": c_prodsX.GetString("cantProds"), "monto" : c_prodsX.GetString("costoTotal"))
|
|
||||||
Return m
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Borra el pedido del cliente actual.
|
|
||||||
'Borra los registros de la tabla "PEDIDO" y "PEDIDO_CLIENTE"
|
|
||||||
'Actualiza las tablas "cat_gunaprod" y "kmt_info".
|
|
||||||
Sub borraPedidoClienteActual(db As SQL) As String 'ignore
|
|
||||||
Private thisC As Cursor
|
|
||||||
thisC = skmt.ExecQuery("select PE_PROID,PE_CANT FROM PEDIDO where pe_cliente in (Select CUENTA from cuentaa) ")
|
|
||||||
If thisC.RowCount>0 Then
|
|
||||||
For i=0 To thisC.RowCount -1
|
|
||||||
thisC.Position=i
|
|
||||||
skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?", Array As Object(thisC.GetString("PE_CANT"),thisC.GetString("PE_PROID")))
|
|
||||||
skmt.ExecNonQuery2("INSERT INTO INVENT_X_ENVIAR (ALMACEN , PROID , CANTIDAD ) VALUES(?,?,?) ", Array As Object (traeAlmacen(db), thisC.GetString("PE_PROID"),thisC.GetString("PE_CANT")* -1))
|
|
||||||
Next
|
|
||||||
End If
|
|
||||||
skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
|
|
||||||
skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
|
|
||||||
skmt.ExecNonQuery("UPDATE kmt_info set gestion = 0 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
|
|
||||||
Return 1
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa verdadero si la columna gestion en la tabla "kmt_info" tene valor 2.
|
|
||||||
'si no, entonces regresa falso.
|
|
||||||
Sub pedidoGuardado(db As SQL) As Boolean 'ignore
|
|
||||||
Private guardado As Boolean = False
|
|
||||||
Private g As Cursor = skmt.ExecQuery("select gestion from kmt_info where CAT_CL_CODIGO in (Select CUENTA from cuentaa)")
|
|
||||||
If g.RowCount > 0 Then
|
|
||||||
g.Position=0
|
|
||||||
If g.GetString("gestion") = "2" Then guardado = True
|
|
||||||
End If
|
|
||||||
Log($"Guardado=${guardado}"$)
|
|
||||||
Return guardado
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Regresa verdadero si hay pedido en la tabla "PEDIDO" del cliente actual.
|
|
||||||
Sub hayPedido(db As SQL) As Boolean 'ignore
|
|
||||||
Private thisC As Cursor = skmt.ExecQuery($"select count(PE_CLIENTE) as hayPedido from PEDIDO where PE_CLIENTE = '${traeCliente(db)}'"$)
|
|
||||||
thisC.Position = 0
|
|
||||||
Private hay As Boolean = False
|
|
||||||
If thisC.GetInt("hayPedido") > 0 Then hay = True
|
|
||||||
' Log($"Cliente actual=${traeCliente}, hayPedido=${hay}"$)
|
|
||||||
Return hay
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub string2date(fecha As String)
|
|
||||||
Log(fecha)
|
|
||||||
DateTime.DateFormat = "MM/dd/yyyy"
|
|
||||||
Dim t As Long = DateTime.DateTimeParse(fecha, "00:00:00")
|
|
||||||
DateTime.DateFormat = "yy/MM/dd"
|
|
||||||
Log($"${t} - ${Subs.fechaKMT(t)}"$)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Guarda el nombre y version de la app en CAT_VARIABLES.
|
|
||||||
Sub guardaAppInfo(db As SQL) 'ignore
|
|
||||||
db.ExecNonQuery("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = 'EMPRESA' or CAT_VA_DESCRIPCION = 'APP_NAME' or CAT_VA_DESCRIPCION = 'APP_VERSION'")
|
|
||||||
db.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_NAME', '${Application.LabelName}')"$)
|
|
||||||
db.ExecNonQuery($"insert into CAT_VARIABLES (CAT_VA_DESCRIPCION, CAT_VA_VALOR) values ('APP_VERSION', '${Application.VersionName}')"$)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Muestra en el Log los campos y valores que regresan en el JobDone.
|
|
||||||
Sub logJobDoneResultados(resultado As DBResult) 'ignore
|
|
||||||
For Each records() As Object In resultado.Rows
|
|
||||||
LogColor($"====== ${resultado.Tag} - REGISTROS = ${resultado.Rows.Size}"$, Colors.RGB(215,37,0))
|
|
||||||
For Each k As String In resultado.Columns.Keys
|
|
||||||
LogColor(k & " = " & records(resultado.Columns.Get(k)), Colors.RGB(215,37,0))
|
|
||||||
Next
|
|
||||||
Next
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'Revisa si la aplicación tiene permiso para acceder a las notificaciones.
|
|
||||||
Sub CheckNotificationAccess As Boolean
|
|
||||||
Dim ph As Phone
|
|
||||||
Dim nstr, pstr As String
|
|
||||||
Dim r As Reflector
|
|
||||||
pstr = r.GetStaticField("anywheresoftware.b4a.BA", "packageName")
|
|
||||||
nstr = ph.GetSettings("enabled_notification_listeners")
|
|
||||||
Return nstr.Contains(pstr)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
'################ Manage External Storage (MES) #########################
|
|
||||||
'
|
|
||||||
''Inicializa "Manage External Storage" (MES), que nos da acceso a la tarjeta de memoria en Android 11+
|
|
||||||
'Public Sub MES_Init (mCallBack As Object, mEventName As String)
|
|
||||||
' mesCallback = mCallBack
|
|
||||||
' mesEventName = mEventName
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Sub MES_checkPermission 'ignore
|
|
||||||
'' ' 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.CheckAndRequestPermission(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(MES_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")
|
|
||||||
'' MES_GetPermission
|
|
||||||
'' Wait For MES_StorageAvailable
|
|
||||||
'' End If
|
|
||||||
'' End If
|
|
||||||
'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 MES_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 MES_GetPermission
|
|
||||||
' If MES_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 : " & mesEventName & "_StorageAvailable")
|
|
||||||
' CallSubDelayed(mesCallback, mesEventName & "_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 = MES_GetBA
|
|
||||||
' ion = jo.CreateEvent("anywheresoftware.b4a.IOnActivityResult", "ion", Null)
|
|
||||||
' jo.RunMethod("startActivityForResult", Array As Object(ion, i))
|
|
||||||
'End Sub
|
|
||||||
'
|
|
||||||
'Private Sub MES_GetBA As Object
|
|
||||||
' Dim jo As JavaObject = Me
|
|
||||||
' Return jo.RunMethod("getBA", Null)
|
|
||||||
'End Sub
|
|
||||||
'################ TERMINA Manage External Storage (MES) #########################
|
|
||||||
|
|
||||||
|
|
||||||
'################ INICIA ENABLE BLUETOOTH #########################
|
|
||||||
Sub StartBluetooth 'ignore
|
|
||||||
btAdmin.Initialize("btAdmin")
|
|
||||||
Log("btAdmin: " & btAdmin.IsEnabled)
|
|
||||||
If btAdmin.IsEnabled = False Then
|
|
||||||
Wait For (EnableBluetooth) Complete (Success As Boolean)
|
|
||||||
If Success = False Then
|
|
||||||
ToastMessageShow("Failed to enable bluetooth", True)
|
|
||||||
End If
|
|
||||||
Log(Success)
|
|
||||||
End If
|
|
||||||
Log($"BTADMIN: ${btAdmin.IsEnabled}"$)
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Sub EnableBluetooth As ResumableSub
|
|
||||||
ToastMessageShow("Enabling Bluetooth adapter...", False)
|
|
||||||
Private ph As Phone
|
|
||||||
If ph.SdkVersion >= 31 Then
|
|
||||||
rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
|
|
||||||
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
|
|
||||||
If Result = False Then Return False
|
|
||||||
Log($"BTCONNECT: ${Result}"$)
|
|
||||||
If ph.SdkVersion >= 33 Then
|
|
||||||
Dim in As Intent
|
|
||||||
in.Initialize("android.bluetooth.adapter.action.REQUEST_ENABLE", "")
|
|
||||||
StartActivityForResult(in)
|
|
||||||
Wait For ion_Event (MethodName As String, Args() As Object)
|
|
||||||
Return btAdmin.IsEnabled
|
|
||||||
End If
|
|
||||||
End If
|
|
||||||
Return btAdmin.Enable
|
|
||||||
End Sub
|
|
||||||
|
|
||||||
Private Sub GetBA As Object
|
|
||||||
Dim jo As JavaObject = Me
|
|
||||||
Return jo.RunMethod("getBA", 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
|
|
||||||
'################ TERMINA ENABLE BLUETOOTH #########################
|
|
||||||
Reference in New Issue
Block a user