21/10/23 - Importación de BD en engrane.

- Se agregó en el engrane, la opción de importar una base de datos, el botón solo aparece cuando en el campo de usuario esta el texto "KMTS1".
This commit is contained in:
2023-10-21 15:23:06 -06:00
parent 7fba23f398
commit d4cfc2bf68
12 changed files with 232 additions and 31 deletions

View File

@@ -20,7 +20,6 @@ Version=9.85
'###########################################################################################################
#End Region
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\
Sub Class_Globals
@@ -102,10 +101,13 @@ Sub Class_Globals
Private et_cargaLocal As EditText
Private b_cargaLocalOk As Button
Private b_cargaLocalCancelar As Button
Private p_botones As Panel
Private b_importarBD As Button
End Sub
Public Sub Initialize
B4XPages.GetManager.LogEvents = True
kh.Initialize(Me, "kh")
#if not(DEBUG)
Starter.logger = False
#end if
@@ -117,7 +119,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Root = Root1
' Root.LoadLayout("MainPage")
Root.LoadLayout("login")
kh.Initialize(Me, "kh")
B4XPages.SetTitle(Me, "Kelloggs Preventa")
login.Initialize
B4XPages.AddPage("Login", login)
@@ -151,7 +152,6 @@ Private Sub B4XPage_Created (Root1 As B4XView)
B4XPages.AddPage("CheckList", checklist)
Panel1.Top = 0 : Panel1.left = 0
ruta = Starter.ruta
ruta = File.DirInternal
Starter.tiempos.Initialize
Dim sDate, sTime As String
DateTime.DateFormat = "yyyyMMdd"
@@ -170,7 +170,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_EXHIBIDORES2 (HIST_EX_ID_CLIENTE TEXT, HIST_EX_TIPO TEXT, HIST_EX_CANT TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_PROMO_WHATS(HIST_CLIENTE TEXT, HIST_RESPUESTA_PROMO)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_RMI(CAT_GP_ID TEXT,CAT_GP_NOMBRE TEXT,CAT_GP_PRECIO TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT)")
''' PARA LO DE DOE---
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GUNAPROD_DOE (CAT_GP_ID TEXT,CAT_GP_NOMBRE TEXT,CAT_GP_IMP1 TEXT,CAT_GP_IMP2 TEXT,CAT_GP_PRECIO TEXT,CAT_GP_CLASIF TEXT,CAT_GP_STS TEXT,CAT_GP_TIPO TEXT,CAT_GP_SUBTIPO TEXT,CAT_GP_IMG TEXT,CAT_GP_ALMACEN TEXT,CAT_GP_TIPOPROD TEXT,CAT_GP_INICIATIVA TEXT,CAT_GP_DEV TEXT,CAT_GP_CODPROMO TEXT)")
@@ -179,6 +179,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
kh.agregaColumna(Starter.skmt, "kmt_info", "IMPRESION", "INTEGER")
kh.agregaColumna(Starter.skmt, "USUARIOA", "FECHA", "TEXT")
kh.guardaAppInfo(Starter.skmt)
' Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "IMPRESION" en la tabla
' c=Starter.skmt.ExecQuery("SELECT COUNT(*) AS fCol FROM pragma_table_info('kmt_info') WHERE name='IMPRESION'")
@@ -316,6 +317,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
' If Result Then Log("Tenemos permisos de bluetooth.")
' Log("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX")
' Log("Check phone state: " & rp.Check(rp.PERMISSION_READ_PHONE_STATE))
kh.centraPanel(p_botones, Root.Width)
End Sub
Sub B4XPage_Appear
@@ -587,6 +589,7 @@ Sub ImageView4_Click
Panel1.Top = (Root.Height/2) - (Panel1.Height/2)
Panel1.Elevation = 100
Panel1.BringToFront
If user.Text = "KMTS1" Then b_importarBD.Visible = True Else b_importarBD.Visible = False
End Sub
Private Sub ImageView4_LongClick
@@ -698,4 +701,19 @@ End Sub
Private Sub b_cargaLocalCancelar_Click
p_cargaLocal.Visible = False
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.
Starter.skmt.Initialize(Starter.ruta,"kmt.db", True) 'Reiniciliza la base de datos con la recien importada.
Private c As Cursor = Starter.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