- VERSION 4.11.13

- El respaldo diario ahora respalda tambien CAT_VARIABLES.
- Al restaurar el respaldo, nos manda un mensaje con la fecha del respaldo que se va a restaurar.
This commit is contained in:
Jose Alberto Guerra Ugalde
2024-11-14 15:38:42 -06:00
parent d2de3ef658
commit 3da89e861d
5 changed files with 155 additions and 42 deletions

View File

@@ -336,6 +336,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Else Else
ToastMessageShow("Sin permisos para GPS", True) ToastMessageShow("Sin permisos para GPS", True)
End If End If
Log("***********************************************")
MES1.Initialize(Me, "MES1") MES1.Initialize(Me, "MES1")
' Log("SDK: " & device.SdkVersion) ' Log("SDK: " & device.SdkVersion)
' Get the device SDK version ' Get the device SDK version
@@ -363,7 +364,10 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Wait For MES_StorageAvailable Wait For MES_StorageAvailable
End If End If
End If End If
Log(MES1.IsInitialized)
Log(MES1.HasPermission)
Log("***********************************************")
MES1.Initialize(Me, "MES1")
' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT")) ' Log("Permisos BT: " & rp.Check("android.permission.BLUETOOTH_CONNECT"))
' Log("REVISAMOS PERMISOS DE BT") ' Log("REVISAMOS PERMISOS DE BT")
' rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT") ' rp.CheckAndRequest("android.permission.BLUETOOTH_CONNECT")
@@ -375,10 +379,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End Sub End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
If MES1.IsInitialized Then Log(">>>>>> INICIAMOS MAIN PAGE <<<<<<<<<")
LogColor(MES1.HasPermission, Colors.Magenta)
If MES1.HasPermission Then kh.revisaSiExisteRespaldo
End If
kh.RD_Init kh.RD_Init
kh.SetButtonTintList(cb_geocerca, Colors.LightGray, Colors.RGB(43, 154, 211)) kh.SetButtonTintList(cb_geocerca, Colors.LightGray, Colors.RGB(43, 154, 211))
kh.SetButtonTintList(cb_cartaPorte, Colors.LightGray, Colors.RGB(43, 154, 211)) kh.SetButtonTintList(cb_cartaPorte, Colors.LightGray, Colors.RGB(43, 154, 211))
@@ -446,6 +447,12 @@ Sub B4XPage_Appear
cmd.Name = "select_fecha" cmd.Name = "select_fecha"
' cmd.Parameters = Array As Object(Null) ' cmd.Parameters = Array As Object(Null)
reqManager.ExecuteQuery(cmd , 0, "fecha") reqManager.ExecuteQuery(cmd , 0, "fecha")
Log("############### APPEAR PAGE ####################")
Log(MES1.IsInitialized)
If MES1.IsInitialized Then
LogColor("Permisos de almacenamiento: " & MES1.HasPermission, Colors.Magenta)
If MES1.HasPermission Then kh.revisaSiExisteRespaldo
End If
End Sub End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -739,7 +746,7 @@ Private Sub p_cargaLocal_Click
End Sub End Sub
'Recibe la contraseña para la carga local -> "CL" + diaMes * 3 + numMes * 4 'Recibe la contraseña para la carga local -> "CL" + diaMes * 3 + numMes * 4
'Ej: para el 5 de agosto serìa : CL1532 'Ej: Si por ejemplo, hoy es 5 de agosto, ponemos : CL1532
'Si se agrega un numero despues de la contraseña, lo toma como los dia hacia atras para tomar el dìa de respaldo. 'Si se agrega un numero despues de la contraseña, lo toma como los dia hacia atras para tomar el dìa de respaldo.
'Ej: CL1532-2 Serìa restaurar el respaldo del dìa 3 de agosto (5-2), puede haber espacios entre la clave y el numero de dìas. 'Ej: CL1532-2 Serìa restaurar el respaldo del dìa 3 de agosto (5-2), puede haber espacios entre la clave y el numero de dìas.
Private Sub b_cargaLocalOk_Click Private Sub b_cargaLocalOk_Click
@@ -748,9 +755,10 @@ Private Sub b_cargaLocalOk_Click
p_cargaLocal.Visible = False p_cargaLocal.Visible = False
' Log(et_cargaLocal.Text.Length > pass1.Length) ' Log(et_cargaLocal.Text.Length > pass1.Length)
' RD_fechaRestauracion - Si esta en blanco, la fecha de restauracion es HOY, si no, es la especificada en "ticks".
kh.RD_fechaRestauracion = "" kh.RD_fechaRestauracion = ""
' kh.RD_fechaRestauracion = DateTime.now 'Se va a restaurar el respaldo de la fecha de HOY
' Si a la contraseña se le agrega un -1 o -2, aqui se procesa para saber de cuantos dias antes traemos el respaldo.
If et_cargaLocal.Text.Length > pass1.Length Then If et_cargaLocal.Text.Length > pass1.Length Then
Private dias As String = et_cargaLocal.Text.SubString(pass1.Length).Trim Private dias As String = et_cargaLocal.Text.SubString(pass1.Length).Trim
' Log("|" & dias & "|") ' Log("|" & dias & "|")
@@ -759,18 +767,26 @@ Private Sub b_cargaLocalOk_Click
p.Days = dias p.Days = dias
Dim nextdate As Long = DateUtils.AddPeriod(DateTime.Now, p) Dim nextdate As Long = DateUtils.AddPeriod(DateTime.Now, p)
kh.RD_fechaRestauracion = nextdate kh.RD_fechaRestauracion = nextdate
Log($"Next date: $Date{nextdate}"$) ' Next date: 20231018 Log($"Restauramos respaldo de fecha: $Date{nextdate}"$)
Else Else
Log("NOT NUMBER") Log("NOT NUMBER")
End If End If
End If End If
DateTime.DateFormat = "YYYY-MMM-dd"
Private fechaRes As String = DateTime.Date(DateTime.now)
If kh.RD_fechaRestauracion <> "" Then fechaRes = DateTime.Date(kh.RD_fechaRestauracion)
Msgbox($"Se va a restaurar el respaldo de la fecha: ${fechaRes}"$, "AVISO")
kh.revisaRkmtAttached kh.revisaRkmtAttached
kh.RD_restaura_cat_gunaprod kh.RD_restaura_cat_gunaprod
kh.RD_restaura_cat_variables
kh.RD_restaura_cat_gunaprod2 kh.RD_restaura_cat_gunaprod2
kh.RD_restaura_cat_detalle_paq kh.RD_restaura_cat_detalle_paq
kh.RD_restaura_kmt_info
kh.RD_restaura_promos_comp kh.RD_restaura_promos_comp
kh.RD_restaura_kmt_info
ime.HideKeyboard ime.HideKeyboard
' DateTime.DateFormat = "yyyyMMdd" ' DateTime.DateFormat = "yyyyMMdd"
' Starter.skmt.ExecNonQuery($"update USUARIOA set fecha = '${DateTime.Date(DateTime.Now)}'"$) ' Starter.skmt.ExecNonQuery($"update USUARIOA set fecha = '${DateTime.Date(DateTime.Now)}'"$)
@@ -890,18 +906,18 @@ Sub CreateCommand(Name As String, Parameters() As Object) As DBCommand
End Sub End Sub
Sub GetFecha Sub GetFecha
' Dim req As DBRequestManager = CreateRequest Dim req As DBRequestManager = CreateRequest
' Dim cmd As DBCommand = CreateCommand("select_fecha", Array(Null)) Dim cmd As DBCommand = CreateCommand("select_fecha", Array(Null))
' Wait For (req.ExecuteQuery(cmd, 0, Null)) JobDone(j As HttpJob) Wait For (req.ExecuteQuery(cmd, 0, Null)) JobDone(j As HttpJob)
' If j.Success Then If j.Success Then
' req.HandleJobAsync(j, "req") req.HandleJob(j)
' Wait For (req) req_Result(res As DBResult) Wait For (req) req_Result(res As DBResult)
' 'work with result 'work with result
' req.PrintTable(res) req.PrintTable(res)
' Else Else
' Log("ERROR: " & j.ErrorMessage) Log("ERROR: " & j.ErrorMessage)
' End If End If
' j.Release j.Release
End Sub End Sub
Private Sub ImageView1_LongClick Private Sub ImageView1_LongClick

View File

@@ -887,7 +887,7 @@ Version=12.8
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: Kelloggs Venta #ApplicationLabel: Kelloggs Venta
#VersionCode: 3000 #VersionCode: 3000
#VersionName: 4.10.20 #VersionName: 4.11.13
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False
#BridgeLogger:true #BridgeLogger:true
@@ -907,6 +907,8 @@ Sub Process_Globals
Public ActionBarHomeClicked As Boolean Public ActionBarHomeClicked As Boolean
' Type DBResult (Tag As Object, Columns As Map, Rows As List) ' Type DBResult (Tag As Object, Columns As Map, Rows As List)
' Type DBCommand (Name As String, Parameters() As Object) ' Type DBCommand (Name As String, Parameters() As Object)
Dim MES1 As ManageExternalStorage
Dim device As Phone
End Sub End Sub
Sub Globals Sub Globals
@@ -916,6 +918,37 @@ End Sub
Sub Activity_Create(FirstTime As Boolean) Sub Activity_Create(FirstTime As Boolean)
Dim pm As B4XPagesManager Dim pm As B4XPagesManager
pm.Initialize(Activity) pm.Initialize(Activity)
Log("***********************************************")
MES1.Initialize(Me, "MES1")
' Log("SDK: " & device.SdkVersion)
' Get the device SDK version
Dim SdkVersion As Int = device.SdkVersion
' Choose which permission to request in order to access external storgage
If SdkVersion < 30 Then
Log("SDK = " & SdkVersion & " : Requesting WRITE_EXTERNAL_STORAGE permission")
Dim rp As RuntimePermissions
rp.CheckAndRequest(rp.PERMISSION_WRITE_EXTERNAL_STORAGE) ' Implicit read capability if granted
Wait For B4XPage_PermissionResult (Permission As String, ResultY As Boolean)
Log($"PERMISSION_WRITE_EXTERNAL_STORAGE = ${ResultY}"$)
Log("SDK = " & SdkVersion & " : Requesting READ_EXTERNAL_STORAGE permission")
Dim rp As RuntimePermissions
rp.CheckAndRequest(rp.PERMISSION_READ_EXTERNAL_STORAGE) ' Implicit read capability if granted
Wait For B4XPage_PermissionResult (Permission As String, ResultX As Boolean)
Log($"PERMISSION_READ_EXTERNAL_STORAGE = ${ResultX}"$)
Else
Log("SDK = " & SdkVersion & " : Requesting MANAGE_EXTERNAL_STORAGE permission")
Log("On Entry MANAGE_EXTERNAL_STORAGE = " & MES1.HasPermission)
If Not(MES1.HasPermission) Then
MsgboxAsync("This app requires access to all files, please enable the option", "Manage All Files")
Wait For Msgbox_Result(Res As Int)
Log("Getting MES permission")
MES1.GetPermission
Wait For MES_StorageAvailable
End If
End If
Log(MES1.IsInitialized)
Log(MES1.HasPermission)
Log("***********************************************")
End Sub End Sub
'Template version: B4A-1.01 'Template version: B4A-1.01

View File

@@ -65,7 +65,7 @@ ModuleClosedNodes1=
ModuleClosedNodes10= ModuleClosedNodes10=
ModuleClosedNodes11=3,25 ModuleClosedNodes11=3,25
ModuleClosedNodes12=3,5,6,7,8,9 ModuleClosedNodes12=3,5,6,7,8,9
ModuleClosedNodes13=1 ModuleClosedNodes13=1,5
ModuleClosedNodes14= ModuleClosedNodes14=
ModuleClosedNodes15= ModuleClosedNodes15=
ModuleClosedNodes16= ModuleClosedNodes16=
@@ -76,7 +76,7 @@ ModuleClosedNodes2=
ModuleClosedNodes20= ModuleClosedNodes20=
ModuleClosedNodes21= ModuleClosedNodes21=
ModuleClosedNodes22= ModuleClosedNodes22=
ModuleClosedNodes23= ModuleClosedNodes23=1,5,8,11,19
ModuleClosedNodes24= ModuleClosedNodes24=
ModuleClosedNodes25= ModuleClosedNodes25=
ModuleClosedNodes26= ModuleClosedNodes26=
@@ -91,6 +91,6 @@ ModuleClosedNodes6=
ModuleClosedNodes7= ModuleClosedNodes7=
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= ModuleClosedNodes9=
NavigationStack=kms_helperSubs,revisaSiExisteRespaldo,87,2,kms_helperSubs,RD_Init,81,6,B4XMainPage,B4XPage_Appear,372,6,C_Principal,JobDone,2053,0,B4XMainPage,B4XPage_Created,362,4,C_Cliente,Class_Globals,0,0,C_Cliente,revisaPromoEspecial,3867,0,C_Cliente,B4XPage_Appear,665,0,C_Cliente,metePromoEspecial,3873,6,Starter,Process_Globals,42,1,C_Promos,muestraPromo,80,0 NavigationStack=kms_helperSubs,RD_restaura_cat_gunaprod,191,3,B4XMainPage,p_cargaLocal_Click,710,0,Main,Globals,28,0,Main,Process_Globals,26,0,Main,Activity_Create,34,0,B4XMainPage,b_cargaLocalOk_Click,740,6,B4XMainPage,B4XPage_Created,361,0,kms_helperSubs,revisaSiExisteRespaldo,92,0,kms_helperSubs,RD_respaldoBatch,525,0,kms_helperSubs,RD_copiaRespaldoDiario,529,6
SelectedBuild=0 SelectedBuild=0
VisibleModules=1,28,11,3,29,12,4,13,23,7 VisibleModules=1,28,11,3,29,12,4,13,23,7,24

View File

@@ -1677,6 +1677,16 @@ Sub fechanormal(fecha As String) As String 'ignore
Return nuevaFecha Return nuevaFecha
End Sub End Sub
Sub fechanormal2(fecha As String) As String 'ignore
' Log(fecha)
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format
DateTime.DateFormat = "YYYY/MMM/dd"
Dim nuevaFecha As String=DateTime.Date(fecha)
DateTime.DateFormat = OrigFormat 'return to orig date format
' Log(nuevaFecha)
Return nuevaFecha
End Sub
Sub horaNormal(fecha As String) As String 'ignore Sub horaNormal(fecha As String) As String 'ignore
' Log(fecha) ' Log(fecha)
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format Dim OrigFormat As String = DateTime.DateFormat 'save orig date format

View File

@@ -64,11 +64,11 @@ Sub RD_Init
safePath = Dirp & Dir safePath = Dirp & Dir
'Si no existe el directorio "kmts" en el raiz de la tarjeta de memoria, nos cambiamos al directorio seguro (sdcard/Android/data/kelloggs...) 'Si no existe el directorio "kmts" en el raiz de la tarjeta de memoria, nos cambiamos al directorio seguro (sdcard/Android/data/kelloggs...)
If Not(File.IsDirectory(Dirp, Dir)) Then safePath = rp.GetSafeDirDefaultExternal("kmts") If Not(File.IsDirectory(Dirp, Dir)) Then safePath = rp.GetSafeDirDefaultExternal("kmts")
Log($"Hay directorio: ${Dirp} ${Dir} - ${File.IsDirectory(Dirp, Dir)}"$) ' Log($"Hay directorio: ${Dirp} ${Dir} - ${File.IsDirectory(Dirp, Dir)}"$)
If Starter.Logger Then Log($"Safepath:${safePath}"$) If Starter.Logger Then Log($"Safepath:${safePath}"$)
Private name() As String = Regex.split(" ", Application.LabelName) 'Obtenemos el nombre de la app para ponerselo a la BD. Private name() As String = Regex.split(" ", Application.LabelName) 'Obtenemos el nombre de la app para ponerselo a la BD.
rkmt.Initialize(safePath, $"${name(0)}.rkmt.km"$, True) rkmt.Initialize(safePath, $"${name(0)}.rkmt.km"$, True)
Log("TAMAÑO DE ARCHIVO RESPALDO " &File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$)) ' Log("TAMAÑO DE ARCHIVO RESPALDO " &File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$))
skmt.Initialize(File.DirInternal,"kmt.db", False) 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, "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_DETALLES_PAQ") Then rkmt.ExecNonQuery($"create table if not exists CAT_DETALLES_PAQ (${getTableColumnList(skmt, "CAT_DETALLES_PAQ")}, FECHA TEXT)"$)
@@ -79,6 +79,7 @@ Sub RD_Init
agregaColumna(rkmt, "kmt_info", "CAT_CL_LIMITECREDITO", "TEXT") agregaColumna(rkmt, "kmt_info", "CAT_CL_LIMITECREDITO", "TEXT")
If chkIfTableExists(skmt, "kmt_info") Then rkmt.ExecNonQuery($"create table if not exists kmt_info (${getTableColumnList(skmt, "kmt_info")}, FECHA TEXT)"$) If chkIfTableExists(skmt, "kmt_info") Then rkmt.ExecNonQuery($"create table if not exists kmt_info (${getTableColumnList(skmt, "kmt_info")}, FECHA TEXT)"$)
If chkIfTableExists(skmt, "PROMOS_COMP") Then rkmt.ExecNonQuery($"create table if not exists PROMOS_COMP (${getTableColumnList(skmt, "PROMOS_COMP")}, FECHA TEXT)"$) If chkIfTableExists(skmt, "PROMOS_COMP") Then rkmt.ExecNonQuery($"create table if not exists PROMOS_COMP (${getTableColumnList(skmt, "PROMOS_COMP")}, FECHA TEXT)"$)
If chkIfTableExists(skmt, "CAT_VARIABLES") Then rkmt.ExecNonQuery($"create table if not exists CAT_VARIABLES (${getTableColumnList(skmt, "CAT_VARIABLES")}, FECHA TEXT)"$)
If chkIfTableExists(skmt, "CAT_RMI") Then rkmt.ExecNonQuery($"create table if not exists CAT_RMI (${getTableColumnList(skmt, "CAT_RMI")}, FECHA TEXT)"$) If chkIfTableExists(skmt, "CAT_RMI") Then rkmt.ExecNonQuery($"create table if not exists CAT_RMI (${getTableColumnList(skmt, "CAT_RMI")}, FECHA TEXT)"$)
DateTime.DateFormat = "yyyyMMdd" DateTime.DateFormat = "yyyyMMdd"
fechaHoy = DateTime.Date(DateTime.Now) fechaHoy = DateTime.Date(DateTime.Now)
@@ -88,12 +89,16 @@ Sub RD_Init
End Sub End Sub
Sub revisaSiExisteRespaldo Sub revisaSiExisteRespaldo
LogColor("Revisamos si existe respaldo en la tarjeta!!", Colors.red)
Private extDir As String = "" Private extDir As String = ""
Private name() As String = Regex.split(" ", Application.LabelName) 'Obtenemos el nombre de la app para ponerselo a la BD. Private name() As String = Regex.split(" ", Application.LabelName) 'Obtenemos el nombre de la app para ponerselo a la BD.
Log(File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$))
If File.IsDirectory(File.DirRootExternal, "kmts") Then extDir = "/kmts" If File.IsDirectory(File.DirRootExternal, "kmts") Then extDir = "/kmts"
If File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$) < 37000 And File.Exists(File.DirRootExternal & extDir, $"${name(0)}.rkmt.km"$) Then If File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$) < 43000 And File.Exists(File.DirRootExternal & extDir, $"${name(0)}.rkmt.km"$) Then
LogColor("Copiamos el respaldo desde la tarjeta!!", Colors.red) LogColor("Copiamos el respaldo desde la tarjeta!!", Colors.red)
File.Copy(File.DirRootExternal & extDir, $"${name(0)}.rkmt.km"$, File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$) File.Copy(File.DirRootExternal & extDir, $"${name(0)}.rkmt.km"$, File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$)
Else
LogColor("No hay respaldo en tarjeta externa!", Colors.red)
End If End If
Sleep(300) Sleep(300)
End Sub End Sub
@@ -120,7 +125,7 @@ Sub revisaRkmtAttached As Boolean
Dim rs As ResultSet = skmt.ExecQuery("SELECT * FROM pragma_database_list") 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. 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 If rs.GetString("name") = "rkmt1" Then rkmtAttached = True
Log(rs.GetString("name")) ' Log(rs.GetString("name"))
Loop Loop
If Not(rkmtAttached) Then If Not(rkmtAttached) Then
@@ -171,7 +176,6 @@ End Sub
Sub RD_respalda_cat_gunaprod Sub RD_respalda_cat_gunaprod
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Copiando CAT_GUNAPROD ...") ' Log("Copiando CAT_GUNAPROD ...")
Private x As Cursor = skmt.ExecQuery("select * from CAT_GUNAPROD") Private x As Cursor = skmt.ExecQuery("select * from CAT_GUNAPROD")
If x.RowCount > 0 Then If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD") Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD")
@@ -190,10 +194,10 @@ End Sub
Sub RD_restaura_cat_gunaprod Sub RD_restaura_cat_gunaprod
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando CAT_GUNAPROD ...") ' Log("Restaurando CAT_GUNAPROD ...")
Log($"FECHA RESTAURACION: ${RD_fechaRestauracion}"$) ' Log($"FECHA RESTAURACION: ${RD_fechaRestauracion}"$)
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD") Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD")
Log(fechaRestauracion) Log(">>>>>>>> fechaRestauracion GP: " & fechaRestauracion)
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la imagen del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la imagen del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD ${fechaRestauracion} order by fecha desc"$) ' where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD ${fechaRestauracion} order by fecha desc"$) ' where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
' Log(c.RowCount) ' Log(c.RowCount)
@@ -202,7 +206,7 @@ Sub RD_restaura_cat_gunaprod
' Log(c.GetString("FECHA")) ' Log(c.GetString("FECHA"))
skmt.ExecNonQuery("delete from CAT_GUNAPROD") skmt.ExecNonQuery("delete from CAT_GUNAPROD")
skmt.ExecNonQuery($"insert into CAT_GUNAPROD (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD where fecha = '${c.GetString("FECHA")}'"$) 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")}'"$) ' Log($"insert into CAT_GUNAPROD (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD where fecha = '${c.GetString("FECHA")}'"$)
Else Else
If fechaRestauracion.Length > 0 Then If fechaRestauracion.Length > 0 Then
ToastMessageShow($"No hay respaldo GP para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True) ToastMessageShow($"No hay respaldo GP para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True)
@@ -237,16 +241,18 @@ Sub RD_restaura_cat_gunaprod2
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando CAT_GUNAPROD2 ...") ' Log("Restaurando CAT_GUNAPROD2 ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
' Log(">>>>>>>> fechaRestauracion GP2: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD2") Private lasCols As String = getTableColumnListName(rkmt, "CAT_GUNAPROD2")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD2 ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_GUNAPROD2 ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
' Log(c.RowCount) ' Log(c.RowCount)
' Log($"select distinct fecha from CAT_GUNAPROD2 ${fechaRestauracion} order by fecha desc"$)
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
Log(c.GetString("FECHA")) LogColor(">>>>> Restauramos GP: " & c.GetString("FECHA"), Colors.red)
skmt.ExecNonQuery("delete from CAT_GUNAPROD2") skmt.ExecNonQuery("delete from CAT_GUNAPROD2")
skmt.ExecNonQuery($"insert into CAT_GUNAPROD2 (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD2 where fecha = '${c.GetString("FECHA")}'"$) 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")}'"$) ' Log($"insert into CAT_GUNAPROD2 (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD2 where fecha = '${c.GetString("FECHA")}'"$)
Else Else
If fechaRestauracion.Length > 0 Then If fechaRestauracion.Length > 0 Then
ToastMessageShow($"No hay respaldo GP2 para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True) ToastMessageShow($"No hay respaldo GP2 para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True)
@@ -303,6 +309,7 @@ Sub RD_restaura_cat_detalle_paq
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando CAT_DETALLES_PAQ ...") ' Log("Restaurando CAT_DETALLES_PAQ ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
' Log(">>>>>>>> fechaRestauracion DP: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "CAT_DETALLES_PAQ") Private lasCols As String = getTableColumnListName(rkmt, "CAT_DETALLES_PAQ")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_DETALLES_PAQ ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_DETALLES_PAQ ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
@@ -346,15 +353,14 @@ Sub RD_restaura_kmt_info
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando KMT_INFO ...") ' Log("Restaurando KMT_INFO ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
' Log(">>>>>>>> fechaRestauracion KMT: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "kmt_info") Private lasCols As String = getTableColumnListName(rkmt, "kmt_info")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Log($"Restauramos ${fechaRestauracion}"$)
Log($"select distinct fecha from kmt_info ${fechaRestauracion} order by fecha desc"$)
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from kmt_info ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from kmt_info ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
' Log(c.RowCount) ' Log(c.RowCount)
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
Log(c.GetString("FECHA")) ' Log(c.GetString("FECHA"))
skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("DIA_VISITA"))' Ponemos el dia de hoy para visita. skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("DIA_VISITA"))' Ponemos el dia de hoy para visita.
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("DIA_VISITA", Subs.traeDiaSemana)) skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("DIA_VISITA", Subs.traeDiaSemana))
skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_FECHA"))' Borramos fecha de FIN DIA. skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_FECHA"))' Borramos fecha de FIN DIA.
@@ -364,7 +370,7 @@ Sub RD_restaura_kmt_info
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA", fechaHoy)) Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA", fechaHoy))
skmt.ExecNonQuery("delete from kmt_info") skmt.ExecNonQuery("delete from kmt_info")
skmt.ExecNonQuery($"insert into kmt_info (${lasCols}) select ${lasCols} from rkmt1.kmt_info where fecha = '${c.GetString("FECHA")}'"$) 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")}'"$) ' Log($"insert into kmt_info (${lasCols}) select ${lasCols} from rkmt1.kmt_info where fecha = '${c.GetString("FECHA")}'"$)
Else Else
If fechaRestauracion.Length > 0 Then If fechaRestauracion.Length > 0 Then
ToastMessageShow($"No hay respaldo KMTI para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True) ToastMessageShow($"No hay respaldo KMTI para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True)
@@ -376,6 +382,50 @@ Sub RD_restaura_kmt_info
Log("R-KMT: " & ((DateTime.Now - inicio)/1000) & " segs") Log("R-KMT: " & ((DateTime.Now - inicio)/1000) & " segs")
End Sub End Sub
'RD - Copia la tabla cat_variables a rkmt.db en la tarjeta del celular.
Sub RD_respalda_cat_variables
Private inicio As String = DateTime.Now
' Log("Copiando CAT_VARIABLES ...")
Private x As Cursor = skmt.ExecQuery("select * from CAT_VARIABLES")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_VARIABLES")
rkmt.BeginTransaction
rkmt.ExecNonQuery($"delete from CAT_VARIABLES where fecha = '${fechaHoy}'"$)
rkmt.ExecNonQuery($"insert into CAT_VARIABLES (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.cat_variables"$)
rkmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
rkmt.EndTransaction
End If
x.Close
LogColor("CV: " & ((DateTime.Now - inicio)/1000) & " segs", Colors.RGB(166,37,0))
End Sub
'RD - Copia la tabla cat_variables de rkmt.db al celular.
Sub RD_restaura_cat_variables
Private inicio As String = DateTime.Now
' Log("Restaurando KMT_INFO ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
' Log(">>>>>>>> fechaRestauracion CV: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "CAT_VARIABLES")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_VARIABLES ${fechaRestauracion} 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_VARIABLES")
skmt.ExecNonQuery($"insert into CAT_VARIABLES (${lasCols}) select ${lasCols} from rkmt1.CAT_VARIABLES where fecha = '${c.GetString("FECHA")}'"$)
' Log($"insert into CAT_VARIABLES (${lasCols}) select ${lasCols} from rkmt1.CAT_VARIABLES where fecha = '${c.GetString("FECHA")}'"$)
Else
If fechaRestauracion.Length > 0 Then
ToastMessageShow($"No hay respaldo CV para la fecha ${fechaRestauracion.SubString(fechaRestauracion.Length - 10)}"$, True)
Else
ToastMessageShow($"No hay respaldo CV para la fecha"$, True)
End If
End If
c.Close
Log("R-CV: " & ((DateTime.Now - inicio)/1000) & " segs")
End Sub
'RD - Copia la tabla promos_comp a rkmt.db en la tarjeta del celular. 'RD - Copia la tabla promos_comp a rkmt.db en la tarjeta del celular.
Sub RD_respalda_promos_comp Sub RD_respalda_promos_comp
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
@@ -398,6 +448,7 @@ Sub RD_restaura_promos_comp
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando KMT_INFO ...") ' Log("Restaurando KMT_INFO ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
' Log(">>>>>>>> fechaRestauracion PC: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "PROMOS_COMP") Private lasCols As String = getTableColumnListName(rkmt, "PROMOS_COMP")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from PROMOS_COMP ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from PROMOS_COMP ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
@@ -441,10 +492,11 @@ Sub RD_restaura_cat_rmi
Private inicio As String = DateTime.Now Private inicio As String = DateTime.Now
' Log("Restaurando CAT_RMI ...") ' Log("Restaurando CAT_RMI ...")
fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion) fechaRestauracion = RD_fechaRestauracionSQL(RD_fechaRestauracion)
Log(">>>>>>>> fechaRestauracion RMI: " & fechaRestauracion)
Private lasCols As String = getTableColumnListName(rkmt, "CAT_RMI") Private lasCols As String = getTableColumnListName(rkmt, "CAT_RMI")
lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo. lasCols = lasCols.Replace(", FECHA", "") 'Quitamos la fecha del respaldo.
Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_RMI ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy. Private c As Cursor = rkmt.ExecQuery($"select distinct fecha from CAT_RMI ${fechaRestauracion} order by fecha desc"$) 'where fecha <> '${fechaHoy}' 'Traemos la ultima fecha antes de hoy.
' Log(c.RowCount) Log(c.RowCount)
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
' Log(c.GetString("FECHA")) ' Log(c.GetString("FECHA"))
@@ -472,6 +524,7 @@ Sub RD_respaldoBatch 'ignore
RD_respalda_pedido RD_respalda_pedido
RD_respalda_promos_comp RD_respalda_promos_comp
RD_respalda_cat_rmi RD_respalda_cat_rmi
RD_respalda_cat_variables
RD_copiaRespaldoDiario RD_copiaRespaldoDiario
Else Else
Log("****** RD NO INICIALIZADO ********") Log("****** RD NO INICIALIZADO ********")
@@ -480,6 +533,7 @@ End Sub
'RD - Copia la base de datos del respaldo diario a la memoria externa. 'RD - Copia la base de datos del respaldo diario a la memoria externa.
Sub RD_copiaRespaldoDiario 'ignore Sub RD_copiaRespaldoDiario 'ignore
Log(">>>> copiamos respaldo a externa!!!")
Try Try
File.MakeDir(File.DirRootExternal, "kmts") File.MakeDir(File.DirRootExternal, "kmts")
Catch Catch