- VERSION 5.06.25

- Se agregó la forma de pago en el ticket (credito o efectivo)
This commit is contained in:
2025-06-27 13:48:23 -06:00
parent 73877991ba
commit e639848418
14 changed files with 1357 additions and 826 deletions

View File

@@ -159,8 +159,10 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS PEDIDOS_DOE_ENTREGA (PC_CLIENTE TEXT, PC_ENTREGA TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_TREND_SPENDING_SEMANAL (HIST_TSS_RUTA TEXT, HIST_TSS_IDALMACEN TEXT, HIST_TSS_TIPO TEXT, HIST_TSS_SEMANA1 TEXT, HIST_TSS_SEMANA1_ACUM TEXT, HIST_TSS_SEMANA2 TEXT, HIST_TSS_SEMANA2_ACUM TEXT, HIST_TSS_SEMANA3 TEXT, HIST_TSS_SEMANA3_ACUM TEXT, HIST_TSS_SEMANA4 TEXT, HIST_TSS_SEMANA4_ACUM TEXT, HIST_TSS_SEMANA5 TEXT, HIST_TSS_SEMANA5_ACUM TEXT, HIST_TSS_SEMANA6 TEXT, HIST_TSS_SEMANA6_ACUM TEXT, HIST_TSS_GRUPO TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS TREND_SPENDING (TIPO TEXT, MONTO_SEMANA TEXT, ACUMULADO TEXT)")
Starter.skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS VERSIONES (VERSION TEXT, FECHA TEXT)")
''' FIN DOE
kh.agregaColumna(Starter.skmt, "kmt_info", "IMPRESION", "INTEGER")
kh.agregaColumna(Starter.skmt, "kmt_info", "CREDITO", "INTEGER")
kh.agregaColumna(Starter.skmt, "USUARIOA", "FECHA", "TEXT")
kh.agregaColumna(Starter.skmt, "PROMOS_COMP", "CAT_PA_PORCENTAJE_PAQUETE", "TEXT")
kh.agregaColumna(Starter.skmt, "PROMOS_COMP", "CAT_PA_PRECIO1", "TEXT")
@@ -171,6 +173,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
kh.agregaColumna(Starter.skmt, "CAT_GUNAPROD", "CAT_GP_PROMOCION", "TEXT")
kh.agregaColumna(Starter.skmt, "CAT_GUNAPROD2", "CAT_GP_PROMOCION", "TEXT")
kh.agregaColumna(Starter.skmt, "TREND_SPENDING", "TIPO", "TEXT")
kh.agregaColumna(Starter.skmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
Root = Root1
' Root.LoadLayout("MainPage")
Root.LoadLayout("login")
@@ -461,6 +464,8 @@ Sub B4XPage_Appear
LogColor("Permisos de almacenamiento: " & MES1.HasPermission, Colors.Magenta)
If MES1.HasPermission Then kh.revisaSiExisteRespaldo
End If
DateTime.DateFormat = "yyyy-MM-dd HH:mm:ss"
Starter.skmt.ExecNonQuery($"insert into versiones (version, fecha) values ('${Application.VersionName}', '${datetime.Date(DateTime.Now)}')"$)
End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
@@ -676,8 +681,8 @@ Sub i_engranes_Click
Label1.TextColor = Colors.Black
et_geocerca.Text = "."
et_geocerca.Text = ""
If user.Text = "KMTS1" Then ListView1.AddSingleLine("http://10.0.0.205:1781")
ListView1.AddSingleLine("http://keymon.lat:1781")
If user.Text = "KMTS1" Then ListView1.AddSingleLine("http://192.99.93.204:1781")
ListView1.AddSingleLine("http://keymon.net:1781")
c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("SERVER"))
c.Position = 0
E_SERVER.text = c.GetString("CAT_VA_VALOR")

View File

@@ -757,10 +757,10 @@ Sub B4XPage_Appear
Private cs As CSBuilder
cs.Initialize
l_doe.Text = cs.append($"Pedido DOE: $${kh.traeTotalClienteDOE}"$).color(Colors.red).append(CRLF).Append($"TOTAL PEDIDO: $${(kh.traeTotalCliente+kh.traeTotalClienteDOE)}"$).Popall
' l_doe.Text = $"Pedido DOE: $${kh.traeTotalClienteDOE}${CRLF}TOTAL PEDIDO: $${(kh.traeTotalCliente+kh.traeTotalClienteDOE)}"$
' l_doe.Text = $"Pedido DOE: $${kh.traeTotalClienteDOE}${CRLF}TOTAL PEDIDO: $${(kh.traeTotalCliente+kh.traeTotalClienteDOE)}"$
End If
If Subs.revisaImpresa Then Guardar.Visible = True
'PROMOS POR MONTO
Private mPromoXMonto As Map = Subs.revisaPromoPorMonto
' LogColor("PROMOXMONTO:" & mPromoXMonto, Colors.Blue)
@@ -969,8 +969,8 @@ Sub Guardar_Click
Starter.lat_gps = coords.Get(0)
Starter.lon_gps = coords.Get(1)
End If
c=Starter.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position=0
c = Starter.skmt.ExecQuery("Select CUENTA from cuentaa")
c.Position = 0
clie_id = c.GetString("CUENTA")
usuario = Subs.traeUsuarioDeBD
If l_total.Text <> Null And l_total.Text <> "null" And l_total.Text <> "0.0" Then Subs.ponImpreso(clie_id) 'Solo lo marcamos com impreso si tiene venta (total > 0).
@@ -985,10 +985,10 @@ Sub Guardar_Click
Log("Actualizamos gestion")
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
End If
s=Starter.skmt.ExecQuery("SELECT count(*) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
s = Starter.skmt.ExecQuery("SELECT count(*) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
s.Position = 0
If s.GetString("FOLIO") > 0 Then
c=Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
c = Starter.skmt.ExecQuery("SELECT SUM(PE_FOLIO) AS FOLIO FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
c.Position = 0
End If
s.Close
@@ -1021,7 +1021,7 @@ Sub Guardar_Click
' B4XPages.ShowPageAndRemovePreviousPages("Principal")
Guardar.SendToBack
b_inicioFinVenta.Text = "TERMINAR VENTA"
' Log("RESPALDO")
Log("RESPALDO")
kh.RD_respaldoBatch
If la_cuenta.Text <> "0" Then 'Si es ABORDO, no mostramos el boton b_inicioFinVenta y regresamos a Principal.
b_inicioFinVenta.Visible = True
@@ -1214,7 +1214,7 @@ Sub Imprime_ticket
Sleep(500)
impresoraConectada = False
End If
' If Logger Then Log($"Impresora Conectada: ${Printer1.IsConnected}"$)
Log($"Impresora Conectada: ${Printer1.IsConnected}"$)
If la_cuenta.Text <> "0" And la_cuenta.Text <> "null" Then
Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_TIPO = ? WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) ", Array As Object("VENTA"))
Starter.skmt.ExecNonQuery("UPDATE kmt_info set IMPRESION = 1 where CAT_CL_CODIGO In (select cuenta from cuentaa)")''
@@ -1280,7 +1280,14 @@ Sub Imprime_ticket
' myimage= Printer1.PackImage(myimage)
' Printer1.PrintImage(myimage)
Sleep(1000)
Private cr As Cursor = Starter.skmt.ExecQuery("select CREDITO from kmt_info where CAT_CL_CODIGO in (select cuenta from cuentaa)")
Private formaPago As String = "Efectivo"
If cr.RowCount > 0 Then
cr.Position = 0
If cr.GetInt("CREDITO") = 1 Then formaPago = "Crédito"
End If
If la_cuenta.Text = "0" Then
LogColor(123, Colors.red)
Try
Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF)
Printer1.WriteString(sDate &" " & sTime & CRLF)
@@ -1293,6 +1300,9 @@ Sub Imprime_ticket
Printer1.WriteString("C.P.: " & la_cp.Text & CRLF)
Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
LogColor("Entre Calle2: " & l_entre2.Text, Colors.red)
Printer1.WriteString("Forma de pago: " & formaPago & CRLF)
LogColor("Forma de pago: " & formaPago, Colors.red)
Printer1.WriteString(" " & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("PEDIDO" & CRLF)
@@ -1384,6 +1394,9 @@ Sub Imprime_ticket
s=Starter.skmt.ExecQuery2("select SUM(PE_CANT) AS TOTAL FROM PEDIDO WHERE PE_TIPO = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("ABORDO"))
s.Position =0
Private total4 As String = "0"
Log("|" & s.GetString("TOTAL") & "|")
If s.GetString("TOTAL") <> Null And IsNumber(s.GetString("TOTAL")) Then total4 = s.GetString("TOTAL")
Sleep(400)
Printer1.WriteString( Printer1.BOLD & "No. Productos: " & total4 & CRLF)
@@ -1418,6 +1431,7 @@ Sub Imprime_ticket
End Try
Else
Try
LogColor(456, Colors.red)
DateTime.DateFormat = "yyyymmdd"
sDate=DateTime.Date(DateTime.Now)
Printer1.WriteString("KELLOGG COMPANY MEXICO" & CRLF)
@@ -1436,6 +1450,9 @@ Sub Imprime_ticket
Printer1.WriteString("C.P.: " & la_cp.Text & CRLF)
Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
LogColor("Entre Calle2: " & l_entre2.Text, Colors.red)
Printer1.WriteString("Forma de pago: " & formaPago & CRLF)
LogColor("Forma de pago: " & formaPago, Colors.red)
Printer1.WriteString(" " & CRLF)
''''''' PEDIDOS DOE
@@ -1492,7 +1509,7 @@ Sub Imprime_ticket
Private cantidad1 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then
cantidad1 = s.GetString("CANTIDAD")
Log("|" & cantidad1 & "|")
Printer1.WriteString( "No. Productos: " & cantidad1 & CRLF)
Printer1.WriteString("------------------------------" & CRLF)
Printer1.WriteString("FIN PEDIDO DON TOÑO" & CRLF)
@@ -1546,6 +1563,8 @@ Sub Imprime_ticket
' sTotal2 = 0
' End If
sTotal2 = kh.traeTotalCliente
Private cantidad1 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad1 = s.GetString("CANTIDAD")
s=Starter.skmt.ExecQuery2("select sum(PE_CANT) as CANTIDAD, SUM(PE_COSTO_TOT) AS TOTAL FROM PEDIDO WHERE PE_CEDIS <> PE_PROID AND PE_TIPO = ? and substr(pe_pronombre,1,6) = ? AND PE_CLIENTE IN (Select CUENTA from cuentaa)", Array As String("VENTA","CAMBIO"))
s.Position = 0
Private cant5 As String = s.GetString("CANTIDAD")
@@ -1558,8 +1577,7 @@ Sub Imprime_ticket
Sleep(200)
Printer1.WriteString(Printer1.REVERSE & "===============================" & CRLF)
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & $"Sub Total Venta: $${NumberFormat2((sTotal2+(sTotal3 * -1)), 1, 2, 2, False)}"$ & CRLF)
Private cantidad1 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad1 = s.GetString("CANTIDAD")
Log("|" & s.GetString("CANTIDAD") & "|" & cantidad1 & "|")
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad1 & CRLF)
Printer1.WriteString(CRLF)
Sleep(200)
@@ -1611,6 +1629,8 @@ Sub Imprime_ticket
Printer1.WriteString(Printer1.UNREVERSE & Printer1.BOLD & "Sub Total CAMBIOS: $" & NumberFormat2(sTotal3, 1, 2, 2, False) & CRLF)
Private cantidad2 As String = "0"
If s.GetString("CANTIDAD") <> Null And IsNumber(s.GetString("CANTIDAD")) Then cantidad2 = s.GetString("CANTIDAD")
Log("|" & cantidad1 & "|")
Log("|" & s.GetString("CANTIDAD") & "|" & cantidad1 & "|")
Printer1.WriteString( Printer1.UNREVERSE & Printer1.BOLD & "No. Productos: " & cantidad2 & CRLF)
Printer1.WriteString(CRLF)
s.Close
@@ -2266,7 +2286,7 @@ Sub Cuestionario
CUANTOS2 = s.GetString("CUANTOS2")
If logger Then LogColor($"Hist:encuesta=${CUANTOS}, hist_encuesta2 = ${CUANTOS2}"$, Colors.Magenta)
End If
' Log(CUANTOS & "|" & CUANTOS2)
LogColor("----> HISTORICO ENCUESTA: " & CUANTOS & "|" & CUANTOS2, Colors.red)
If CUANTOS = 0 And CUANTOS2 = 0 Then
Private enc As Cursor = Starter.skmt.ExecQuery("SELECT CAT_EP_ID, CAT_EP_IDTIPOPREGUNTA, CAT_CE_DESCRIPCION, CAT_EP_PREGUNTA, CAT_EP_RES1_PRED, CAT_EP_RES2_PRED, CAT_EP_RES3_PRED, CAT_EP_ORDEN_PREGUNTA FROM CAT_ENCUESTA_PREGUNTA ORDER BY CAT_CE_DESCRIPCION, CAST(CAT_EP_ORDEN_PREGUNTA AS DECIMAL)")
If enc.RowCount > 0 Then

View File

@@ -773,6 +773,7 @@ Sub cargar_Click
cmd.Initialize
cmd.Name = "SELECT_HIST_ENCUESTA_KELL"
cmd.Parameters = Array As Object( e_ruta.text, ALMACEN,e_ruta.text, ALMACEN,e_ruta.text, ALMACEN,e_ruta.text, ALMACEN )
' cmd.Parameters = Array As Object( e_ruta.text, ALMACEN )
reqManager.ExecuteQuery(cmd , 0, "HIST_ENCUESTA2")
' Log($"${e_ruta.text}, ${ALMACEN},${e_ruta.text}, ${ALMACEN},${e_ruta.text}, ${ALMACEN},${e_ruta.text}, ${ALMACEN}"$)
@@ -804,17 +805,17 @@ Sub cargar_Click
cmd.Name = "select_cat_paquetes_KELL"
cmd.Parameters = Array As Object(ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "gunaprodp")
cmd.Initialize
cmd.Name = "pedidosugerido_KELLOGGS"
cmd.Parameters = Array As Object(ALMACEN, e_ruta.Text)
reqManager.ExecuteQuery(cmd , 0, "PEDIDOsugerido")
cmd.Initialize
cmd.Name = "select_cat_paquetess_KELL"
cmd.Parameters = Array As Object(ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "gunaprodps")
cmd.Initialize
cmd.Name = "select_cat_detallepa_KELL"
cmd.Parameters = Array As Object(ALMACEN)
@@ -1079,8 +1080,9 @@ Sub JobDone(Job As HttpJob)
Dim CAT_CL_CATEGORIA As String = records(RESULT.Columns.Get("CAT_CL_CATEGORIA"))
Dim CAT_CL_SEGMENTO As String = records(RESULT.Columns.Get("CAT_CL_SEGMENTO"))
Dim CAT_CL_LIMITECREDITO As String = records(RESULT.Columns.Get("CAT_CL_LIMITECREDITO"))
Dim CREDITO As String = records(RESULT.Columns.Get("CAT_CL_BCREDITO"))
' LogColor("CAT_CL_LIMITECREDITO:" & CAT_CL_LIMITECREDITO & " -- ID: " & CAT_CL_CODIGO, Colors.red)
Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA, gestion, IMPRESION, CAT_CL_CATEGORIA, CAT_CL_SEGMENTO,CAT_CL_LIMITECREDITO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,?,?,?)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LAT,CAT_CL_LONG,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA,CAT_CL_CATEGORIA, CAT_CL_SEGMENTO,CAT_CL_LIMITECREDITO))
Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA, gestion, IMPRESION, CAT_CL_CATEGORIA, CAT_CL_SEGMENTO,CAT_CL_LIMITECREDITO, CREDITO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,?,?,?,?)", Array As Object (CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LAT,CAT_CL_LONG,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_DIAS_VISITA,CAT_CL_TIPO_RUTA,CAT_CL_CATEGORIA, CAT_CL_SEGMENTO,CAT_CL_LIMITECREDITO,CREDITO))
Next
Starter.skmt.ExecNonQuery2("INSERT INTO kmt_info(CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_BFACTURA,CAT_CL_BCREDITO,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO,CAT_CL_DIAS_VISITA, gestion, IMPRESION) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0,?,0,0) ",Array As Object ("0",e_ruta.TEXT, "VENTA ABORDO","null","null","null","null","null","null","null","null","null","null","null","0","null","null","null","10000000","null"))
Starter.skmt.TransactionSuccessful 'Si no se pone TransactionSuccessful no se escribe NADA!!
@@ -1095,10 +1097,7 @@ Sub JobDone(Job As HttpJob)
End If
End If
bcarga1 = 20
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_promos" Then 'query tag
If logger Then Log("TIEMPO hist_promos : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1120,10 +1119,7 @@ Sub JobDone(Job As HttpJob)
S_CH.Text = "LISTO"
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_cliente_promos" Then 'query tag
If logger Then Log("TIEMPO hist_cliente_promos : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1139,10 +1135,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.EndTransaction
' ToastMessageShow(" Historico Clientes Promociones Actualizado." , True)
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_comp_promos" Then 'query tag
If logger Then Log("TIEMPO hist_comp_promos : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1169,10 +1162,7 @@ Sub JobDone(Job As HttpJob)
S_CH.Text = "LISTO"
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "promo_monto" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CPM_CLIENTE As String = records(RESULT.Columns.Get("CPM_CLIENTE"))
@@ -1182,17 +1172,11 @@ Sub JobDone(Job As HttpJob)
Dim CPM_CANT As String = records(RESULT.Columns.Get("CPM_CANT"))
Dim CPM_RANGO As String = records(RESULT.Columns.Get("CPM_RANGO"))
Dim CPM_DESC As String = records(RESULT.Columns.Get("CPM_DESC"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_PROMO_MONTO(CPM_CLIENTE, CPM_IDPROMO, CPM_MONTO, CPM_PROID, CPM_CANT, CPM_RANGO, CPM_DESC) VALUES (?,?,?,?,?,?,?)", Array As Object (CPM_CLIENTE, CPM_IDPROMO, CPM_MONTO, CPM_PROID, CPM_CANT, CPM_RANGO, CPM_DESC))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "PEDIDOsugerido" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim ID_PRODUCTO As String = records(RESULT.Columns.Get("ID_PRODUCTO"))
Dim CANTIDAD As String = records(RESULT.Columns.Get("PROMEDIO"))
@@ -1204,10 +1188,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO PEDIDO_SUGERIDO(ID_PRODUCTO, PROMEDIO,RUTA, ALMACEN) VALUES (?,?,?,?)", Array As Object (ID_PRODUCTO, CANTIDAD, e_ruta.Text, ALMACEN))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "cat_verificacion" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD"))
@@ -1216,10 +1197,7 @@ Sub JobDone(Job As HttpJob)
Starter.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
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "DESCUENTOS_CLIENTE" Then 'query tag
If logger Then Log("TIEMPO DESCUENTOS_CIENTE : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1234,11 +1212,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.TransactionSuccessful
Starter.skmt.EndTransaction
End If
End If
'DESCUENTOS SKU
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' DESCUENTOS SKU
If RESULT.Tag = "DESCUENTOS_CLIENTE_SKU" Then 'query tag
If logger Then Log("TIEMPO DESCUENTOS_CLIENTE_SKU : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1251,10 +1226,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.TransactionSuccessful
Starter.skmt.EndTransaction
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_abordo" Then 'query tag
If logger Then Log("TIEMPO hist_abordo : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1266,10 +1238,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.TransactionSuccessful
Starter.skmt.EndTransaction
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "gunaprod" Then 'query tag
' Subs.logJobDoneResultados(RESULT)
cargar.Enabled = True
@@ -1323,11 +1292,8 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
'CARGA DEL CATALOGO ABORDO
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' CARGA DEL CATALOGO ABORDO
If RESULT.Tag = "gunaprod2" Then 'query tag
cargar.Enabled = True
If logger Then Log("TIEMPO gunaprod2 : " & ((DateTime.Now-inicioContador)/1000))
@@ -1379,10 +1345,7 @@ Sub JobDone(Job As HttpJob)
' skmt.ExecNonQuery2("INSERT INTO COUNT_GUNAPROD2(CAT_GP_CLASIF, CUANTOS) VALUES (?,?)", Array As Object (c.GetString("CAT_GP_CLASIF"), c.GetString("CUANTOS")))
' c.Close
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "gunaprodp" Then 'query tag
If logger Then Log("TIEMPO gunaprodp : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1428,10 +1391,7 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "gunaprodps" Then 'query tag
Starter.skmt.BeginTransaction
For Each records() As Object In RESULT.Rows
@@ -1475,10 +1435,7 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "detallepaq" Then 'query tag
If logger Then Log("TIEMPO detallepaq : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1494,7 +1451,8 @@ Sub JobDone(Job As HttpJob)
Dim CAT_DP_CLASIF As String = records(RESULT.Columns.Get("CAT_DP_CLASIF"))
Dim CAT_DP_PRECIO As String = records(RESULT.Columns.Get("CAT_DP_PRECIO"))
Dim CAT_DP_PRECIO_SIMPTOS As String = records(RESULT.Columns.Get("CAT_DP_PRECIO_SIMPTOS"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_DETALLES_PAQ(CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS) VALUES (?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS))
Dim CAT_DP_PRECIOB As String = records(RESULT.Columns.Get("CAT_DP_PRECIOB"))
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_DETALLES_PAQ(CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS,CAT_DP_PRECIOB) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (CAT_DP_ALMACEN,CAT_DP_ID,CAT_DP_IDPROD,CAT_DP_TIPO,CAT_DP_PZAS,CAT_DP_USUARIO,CAT_DP_FECHA,CAT_DP_REGALO,CAT_DP_CLASIF,CAT_DP_PRECIO,CAT_DP_PRECIO_SIMPTOS,CAT_DP_PRECIOB))
Next
Starter.skmt.TransactionSuccessful
Starter.skmt.EndTransaction
@@ -1520,10 +1478,7 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_datos" Then 'query tag
If logger Then Log("TIEMPO hist_datos : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -1554,10 +1509,7 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hist_rmi" Then 'query tag
If logger Then Log("TIEMPO hist_rmi : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1586,10 +1538,7 @@ Sub JobDone(Job As HttpJob)
EJECUTANDO = 0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "variables" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim Cat_Va_Descripcion As String = records(RESULT.Columns.Get("CAT_VA_DESCRIPCION"))
@@ -1597,10 +1546,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object (Cat_Va_Descripcion, Cat_Va_Valor))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "limite_abordo" Then 'query tag
If logger Then Log("TIEMPO limite_abordo : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1614,10 +1560,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "carga_encuesta" Then 'query tag
If logger Then Log("TIEMPO carga_encuesta : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1632,10 +1575,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ENCUESTA_PREGUNTA (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA ) VALUES (?,?,?,?,?,?,?,?)", Array As Object (CAT_EP_ID ,CAT_EP_IDTIPOPREGUNTA ,CAT_CE_DESCRIPCION ,CAT_EP_PREGUNTA ,CAT_EP_RES1_PRED ,CAT_EP_RES2_PRED ,CAT_EP_RES3_PRED ,CAT_EP_ORDEN_PREGUNTA))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "carga_encuesta_cliente" Then 'query tag
If logger Then Log("TIEMPO carga_encuesta_cliente : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1644,10 +1584,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_ENCUESTA_CLIENTE(HIST_ECD_IDGRUPO ,HIST_ECD_CLIENTE) VALUES (?,?)", Array As Object (HIST_ECD_IDGRUPO ,HIST_ECD_CLIENTE))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "valida_pedido" Then 'query tag
If logger Then Log("TIEMPO valida_pedido : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1661,10 +1598,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "valida_pedido1" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP"))
@@ -1684,10 +1618,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "valida_pedidoc" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CUANTOSC As Int = records(RESULT.Columns.Get("CUANTOSC"))
@@ -1699,10 +1630,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "valida_noventa" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CUANTOSN As Int = records(RESULT.Columns.Get("CUANTOSN"))
@@ -1714,10 +1642,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "ins_pedido" Then 'query tag
For Each records() As Object In RESULT.Rows
PB2.Progress = PB2.Progress + 5
@@ -1726,10 +1651,7 @@ Sub JobDone(Job As HttpJob)
PB2.Progress = 100
S_CP.Text = "VALIDANDO"
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "version" Then 'query tag
connecta.TextColor = Colors.White
' Subs.logJobDoneResultados(RESULT)
@@ -1741,19 +1663,13 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO VERSION(NOVERSION) VALUES (?)", Array As Object (CAT_VE_VERSION))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "count_cli" Then 'query tag
For Each records() As Object In RESULT.Rows
COUNT_CLIE = records(RESULT.Columns.Get("COUNT_CLIE"))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "ruta" Then 'query tag
e_ruta.Enabled = True
' Log(RESULT)
@@ -1783,10 +1699,7 @@ Sub JobDone(Job As HttpJob)
End If
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "usuario" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim name2 As String = records(RESULT.Columns.Get("VALIDO"))
@@ -1796,10 +1709,7 @@ Sub JobDone(Job As HttpJob)
End If
P1.Visible = False
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "fecha" Then 'query tag
For Each records() As Object In RESULT.Rows
Starter.FECHA_HOY = records(RESULT.Columns.Get("FECHA"))
@@ -1807,10 +1717,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA",Starter.FECHA_HOY))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "hora" Then 'query tag
For Each records() As Object In RESULT.Rows
Starter.HORA = records(RESULT.Columns.Get("HORA"))
@@ -1822,10 +1729,7 @@ Sub JobDone(Job As HttpJob)
MsgboxAsync("La hora del equipo NO coincide con la hora del servidor, es necesario corregirla", "AVISO IMPORTANTE")
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "folio" Then 'query tag
If logger Then Log("TIEMPO folio : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1834,11 +1738,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FOLIO",FOLIO))
Next
End If
End If
'Perfil
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Perfil
If RESULT.Tag = "perfil" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim PERFIL As String = records(RESULT.Columns.Get("PERFIL"))
@@ -1846,11 +1747,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("PERFIL",PERFIL))
Next
End If
End If
'Marcas
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Marcas
If RESULT.Tag = "marcas" Then 'query tag
If logger Then Log("TIEMPO marcas : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1859,11 +1757,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("MARCAS",MARCAS))
Next
End If
End If
' SUCURSAL
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' SUCURSAL
If RESULT.Tag = "sucursal" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim SUCURSAL As String = records(RESULT.Columns.Get("SUCURSAL"))
@@ -1871,10 +1766,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SUCURSAL",SUCURSAL))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "placas" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim PLACAS As String = records(RESULT.Columns.Get("PLACAS"))
@@ -1882,10 +1774,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("PLACAS",PLACAS))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "SEMANA" Then 'query tag
If logger Then Log("TIEMPO SEMANA : " & ((DateTime.Now-inicioContador)/1000))
For Each records() As Object In RESULT.Rows
@@ -1894,10 +1783,7 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("SEMANA",Cat_Va_Valor))
Next
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "dia_visita" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim DIA_VISITA As String = records(RESULT.Columns.Get("DIA_VISITA"))
@@ -1906,11 +1792,8 @@ Sub JobDone(Job As HttpJob)
'Msgbox(DIA_VISITA, "") 'ignore
Next
End If
End If
'CUOTAS
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' CUOTAS
If RESULT.Tag = "CUOTAS" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim HC_RUTA As String = records(RESULT.Columns.Get("HC_RUTA"))
@@ -1929,12 +1812,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO HIST_CUOTAS(HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", Array As Object (HC_RUTA, HC_CUOTA1,HC_CUOTA2,HC_CUOTA3,HC_CUOTA4,HC_CUOTA5,HC_CUOTA6,HC_META1,HC_META2,HC_META3,HC_META4,HC_META5,HC_META6))
Next
End If
End If
'Cambios
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Cambios
If RESULT.Tag = "cat_cambios" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CAMBIOS As String = records(RESULT.Columns.Get("CAT_VA_VALOR"))
@@ -1942,11 +1821,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CAMBIOS",CAMBIOS))
Next
End If
End If
'Precios
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Precios
If RESULT.Tag = "precios" Then 'query tag
If logger Then Log("TIEMPO precios : " & ((DateTime.Now-inicioContador)/1000))
' Subs.cronoX("Precios", 1)
@@ -1973,11 +1849,8 @@ Sub JobDone(Job As HttpJob)
' If Logger Then LogColor($"///////////////// ${Subs.cronoX("Precios", 2)} ///////////////////////////"$, Colors.red)
' ToastMessageShow("LISTA DE PRECIOS OK LISTA DE PRECIOS OK", True)
End If
End If
'Candado Fin Dia
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Candado Fin Dia
If RESULT.Tag = "pass_fin_dia" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim nuevaContrasena As String = records(RESULT.Columns.Get("CAR_VA_VALOR3"))
@@ -1985,11 +1858,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FINDIA_PASS", nuevaContrasena))
Next
End If
End If
'Exhibidores
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' Exhibidores
If RESULT.Tag = "exhibidores" Then 'query tag
If logger Then Log("TIEMPO exhibidores : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -2002,11 +1872,8 @@ Sub JobDone(Job As HttpJob)
Starter.skmt.TransactionSuccessful
Starter.skmt.EndTransaction
End If
End If
'HIST_ENCUESTA2
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job)
' HIST_ENCUESTA2
If RESULT.Tag = "HIST_ENCUESTA2" Then 'query tag
If logger Then Log("TIEMPO HIST_ENCUESTA2 : " & ((DateTime.Now-inicioContador)/1000))
Starter.skmt.BeginTransaction
@@ -2343,6 +2210,7 @@ Sub e_ruta_EnterPressed
Starter.skmt.ExecNonQuery("delete from TMP_CAT_MONEDAS")
Starter.skmt.ExecNonQuery("delete from TREND_SPENDING")
Starter.skmt.ExecNonQuery("delete from HIST_TREND_SPENDING_SEMANAL")
Starter.skmt.ExecNonQuery("delete from VERSIONES")
Starter.skmt.ExecNonQuery2("INSERT INTO HIST_ENVIOS VALUES (?,0,?)", Array As Object(sTime, "PEDIDO"))
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("NUMERO_PEDIDO"))
@@ -3436,7 +3304,7 @@ Sub descargaCartaPorte
' cartaPortePDF = "CPORTE2_100_Prueba.pdf" 'Para pruebas
' Log(cartaPortePDF)
'Para el servidor
Private pdfServer As String = "keymon.lat"
Private pdfServer As String = "keymon.net"
If Starter.DBReqServer.IndexOf("10.0.0.205") > -1 Then pdfServer = "10.0.0.205"
' Log(pdfServer)
pdfURL = $"https://${pdfServer}/CartaPorteKelloggs/CartaPorteMovil${DateTime.Date(DateTime.now)}/${cartaPortePDF}"$

View File

@@ -9,6 +9,7 @@ Sub Class_Globals
Private xui As XUI 'ignore
Dim ruta As String
Dim kh As kms_helperSubs
Dim ts As C_TrendSpending
Dim q_buscar As String
Dim forzarBusqueda As Boolean = False
Dim skmt As SQL
@@ -100,18 +101,19 @@ Sub Class_Globals
Dim dispAbordo As String
Private l_avisoAbordo As Label
Private l_infoPedido As Label
Dim promosC As Promociones
' Dim promosC As Promociones
Dim invTotal As Int
Dim TS_RMI() As String
Dim TS_DESCUENTOS() As String
Dim TS_BONIFICACIONES() As String
dim bonificacionesMaximas as int = 0
Dim bonificacionesMaximas As Int = 0
End Sub
'You can add more parameters here.
Public Sub Initialize As Object
kh.Initialize(Me, "kh", Starter.skmt)
promosC.Initialize(Me, "promosC", Starter.skmt)
ts.Initialize(Me, "ts", Starter.skmt)
' promosC.Initialize(Me, "promosC", Starter.skmt)
Return Me
End Sub
@@ -249,7 +251,7 @@ Sub B4XPage_Appear
' l_totProds.Width = Root.Width * 0.19
' l_total.Left = l_totProds.Width + 20
' l_total.Width = Root.Width * 0.25
' Log(Subs.traeTotalesClienteActual)
Dim m As Map = Subs.traeTotalesClienteActual
prodsPedidoActual = m.Get("productos")
@@ -284,7 +286,7 @@ Sub B4XPage_Appear
End If
If B4XPages.MainPage.cliente.la_cuenta.text = "0" Then b_rmi.Visible = False
' Log(Starter.tipov)
Private mx As Map = Subs.traeInfoTrendSpending
Private mx As Map = ts.traeInfoTrendSpending
TS_RMI = Regex.Split(",", mx.Get("RMI"))
TS_DESCUENTOS = Regex.Split(",", mx.Get("DESCUENTOS"))
TS_BONIFICACIONES = Regex.Split(",", mx.Get("BONIFICACIONES"))
@@ -354,7 +356,6 @@ Sub lv_catalogos_ItemClick (Position As Int, Value As Object)
Log(c2.GetString("CAT_PA_PORCENTAJE_PAQUETE"))
If c2.GetString("CAT_PA_TIPO_PROMONTO") = "0" Then ' Si NO es promo por monto entonces la mostamos.
lv_promos.AddTwoLines(c2.GetString("CAT_GP_NOMBRE"),"# " & c2.GetString("CAT_GP_ALMACEN") & " $ " & c2.GetString("CAT_GP_PRECIO") & " F:" & tm.Get("mp").As(Map).Get("prodsFijosCant") & " V:" & tm.Get("mp").As(Map).Get("prodsVariablesCant"))
End If
End If
Next
@@ -600,25 +601,34 @@ Sub b_prodMenos_Click
Private tmpMap As Map = clv_prods_ll.GetValue(index).As(Map)
Private precio As String=clv_prods_ll.GetValue(index).As(Map).Get("precio")
Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id")
Private tmpMap As Map = CreateMap("precio":precio, "cant":laCant.Text, "almacen":Subs.traeAlmacen)
' Private tmpMap As Map = CreateMap("precio":precio, "cant":laCant.Text, "almacen":Subs.traeAlmacen)
Log(clv_prods_ll.GetValue(index).As(Map))
' ######## Trend Spending - Poner estas lienas antes de que si es negativo se ponga en CERO.
Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
If laBonificacion > 0 Then
Log("LA BONIFICACION: " & laBonificacion)
Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
bonificacionesMaximas = ((laCant.text * laBonificacion) + BonsRestantes) / laBonificacion
Log("MAX: " & bonificacionesMaximas)
Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
End If
Log("LA BONIFICACION: " & laBonificacion)
If laCant.text >= 0 Then
Subs.modTrendSpending("suma", "bonificaciones", laBonificacion)
End If
' ######## Trend Spending - Poner estas lineas antes de que si es negativo se ponga en CERO.
' Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
' If laBonificacion > 0 Then
' Log("LA BONIFICACION: " & laBonificacion)
' Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
' Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
' bonificacionesMaximas = ((laCant.text * laBonificacion) + BonsRestantes) / laBonificacion
' Log("MAX: " & bonificacionesMaximas)
' Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
' End If
' Log("LA BONIFICACION: " & laBonificacion)
' If laCant.text >= 0 Then
' Subs.modTrendSpending("suma", "bonificaciones", laBonificacion)
' End If
' #######################
' ######## Trend Spending - Poner estas lineas antes de que si es negativo se ponga en CERO.
If lfila.Text = "PRODUCTOS" Then
Log(">>>>>>>>>> PRODUCTOS <<<<<<<<<<<<<<")
ts.trendSpending("prodMenos", "descuentos", clienteId, id, laCant.Text, 0)
else If lfila.Text = "RMI" Then
ts.trendSpending("prodMenos", "rmi", clienteId, id, laCant.Text, 0)
End If
' #######################
If laCant.Text < 0 Then laCant.Text = 0
' Log(tmpMap)
' prodsMap.Put(id, tmpMap)
@@ -656,6 +666,7 @@ Sub b_prodMenos_Click
End Sub
Sub b_prodMas_Click
Private logger As Boolean = True
Root.RequestFocus
etCantHasFocus = False
Private buttonTag As String = Sender.As(Button).tag
@@ -664,47 +675,67 @@ Sub b_prodMas_Click
Dim pnl0 As B4XView = clv_prods_ll.GetPanel(index)
Dim pnl As B4XView = pnl0.GetView(0)
Dim lProdX As B4XView = pnl.GetView(1)
Log("========= " & pnl0.Tag)
Log("========= " & pnl.Tag)
Log("========= " & pnl.GetView(1).Tag)
Private existencias As String = clv_prods_ll.GetValue(index).As(Map).Get("almacen")
' Log("========= " & pnl0.Tag)
' Log("========= " & pnl.Tag)
' Log("========= " & pnl.GetView(1).Tag)
' Private existencias As String = clv_prods_ll.GetValue(index).As(Map).Get("almacen")
Dim laCant As B4XView = pnl.GetView(2).GetView(2)
If laCant.Text = "" Then laCant.Text = 0
Private tmpMap As Map = clv_prods_ll.GetValue(index).As(Map)
Private precio As String=clv_prods_ll.GetValue(index).As(Map).Get("precio")
Private inv As Int = clv_prods_ll.GetValue(index).As(Map).Get("almacen")
Log($"Existencias: ${inv}, inv: ${Subs.traeinventario(pnl.GetView(1).Tag)}"$)
inv = Subs.traeinventario(pnl.GetView(1).Tag)
Log($"Existencias: ${inv}, inv: ${Subs.traeinventario(pnl.GetView(1).Tag)}"$)
' Private tmpMap As Map = clv_prods_ll.GetValue(index).As(Map)
' Private inv As Int = clv_prods_ll.GetValue(index).As(Map).Get("almacen")
' Log($"Existencias: ${inv}, inv: ${Subs.traeinventario(pnl.GetView(1).Tag)}"$)
Private inv As Int = Subs.traeinventario(pnl.GetView(1).Tag)
Log($"inv: ${Subs.traeinventario(pnl.GetView(1).Tag)}"$)
Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id")
Private almacenX As String = Subs.traeAlmacen
Private nombreX As String = Subs.traeProdNombre(id)
Private precioX As String = precio
'######## Trend Spending
Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
If laBonificacion > 0 Then
Log("LA BONIFICACION: " & laBonificacion)
Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
Log("BON RESTANTE: " & BonsRestantes)
bonificacionesMaximas = ((laCant.text * laBonificacion) + BonsRestantes) / laBonificacion
Log("MAX: " & bonificacionesMaximas)
Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
' ######## Trend Spending
' NOTA:
' Cuando se haga la funcion debemos de enviar si es bonificacion o rmi y el regreso tene que ser "bonificacionesMaximas" y "laBonificacion"
' Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
' If laBonificacion > 0 Then
' Log("LA BONIFICACION: " & laBonificacion)
' Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
' Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
' Log("BON RESTANTE: " & BonsRestantes)
' bonificacionesMaximas = ((laCant.text * laBonificacion) + BonsRestantes) / laBonificacion
' Log("MAX: " & bonificacionesMaximas)
' Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
' End If
' If laCant.Text = bonificacionesMaximas Then
' ToastMessageShow("El presupuesto de BONIFICACIONES no permite agregar mas productos!!", False)
' End If
' Log("LA BONIFICACION: " & laBonificacion)
' If inv > 0 And laCant.Text < bonificacionesMaximas Then
' Subs.modTrendSpending("resta", "bonificaciones", laBonificacion)
' Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
' End If
' Log("BONIFCACIONES RESTANTES: " & (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones")))
Private tsMonto As String = 0
Private tsMaximas As Int = 0
If lfila.Text = "PRODUCTOS" Then
Log(">>>>>>>>>> PRODUCTOS <<<<<<<<<<<<<<")
Private tsRestantes As String = (TS_DESCUENTOS(0) - TS_DESCUENTOS(1) - ts.traeAcumuladoHoyTS("descuentos")) ' Traemos monto restante de Trend Spending para bonificaciones.
tsMonto = NumberFormat2(ts.traePrecio(id)*(ts.traeDescXSku(clienteId, id)/100), 1, 2, 2, False) ' Traemos el monto (descuento total) del producto actual.
tsMaximas = ((laCant.text * tsMonto) + tsRestantes) / tsMonto ' Traemos la cantidad maxima de descuentos por presupuesto de Trend Spending.
Log("tsRestantes: " & tsRestantes)
' Log("tsMonto: " & tsMonto)
Log("tsMaximas: " & tsMaximas)
Log("tsMaximas2: " & ts.traeMaximas("descuentos", clienteId, id, laCant.Text, ""))
' Log("tsMonto2: " & ts.traeMonto(clienteId, id))
Else if lfila.Text = "RMI" Then
Log(">>>>>>>>>> RMI <<<<<<<<<<<<<<")
Private tsRestantes As String = (TS_RMI(0) - TS_RMI(1) - ts.traeAcumuladoHoyTS("rmi")) ' Traemos monto restante de Trend Spending para RMIs.
tsMonto = NumberFormat2(ts.traePrecioRMI(id), 1, 2, 2, False) ' Traemos el monto (precio) del RMI actual.
tsMaximas = ((laCant.text * tsMonto) + tsRestantes) / tsMonto ' Traemos la cantidad maxima de RMIs por presupuesto de Trend Spending.
' Log(tsMaximas)
' Log(tsMonto)
End If
If laCant.Text = bonificacionesMaximas Then
ToastMessageShow("El presupuesto de BONIFICACIONES no permite agregar mas productos!!", False)
End If
Log("LA BONIFICACION: " & laBonificacion)
If inv > 0 And laCant.Text < bonificacionesMaximas Then
Subs.modTrendSpending("resta", "bonificaciones", laBonificacion)
Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
End If
Log("BONIFCACIONES RESTANTES: " & (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones")))
'##########################
' ##########################
' Private iq As Cursor = Starter.skmt.ExecQuery($"select cat_gp_almacen from ${Subs.traeTablaProds(Starter.tipov)} where cat_gp_id = '${clv_prods_ll.GetValue(index).As(Map).Get("id")}'"$)
' If iq.RowCount > 0 Then
' iq.Position = 0
@@ -714,8 +745,11 @@ Sub b_prodMas_Click
' Log($"${kh.traeLimiteCredito(Subs.traeCliente)} < ${kh.totalPedido + precio}"$)
' Log(kh.traeLimiteCredito(Subs.traeCliente) < (kh.totalPedido + precio))
' Log(inv > 0)
' Log(tsMonto.As(Int) = 0)
If 1 = 2 And buttonTag = "vendido" And lfila.Text = "PRODUCTOS" Then
Log(1)
' Log(11)
' Log("VENDIDO")
Log($"${(laCant.Text + 1 <= inv)} And ${(kh.totalPedido - precio > 1)}"$)
' If inv > 0 And (laCant.Text + 1 <= (laCant.Text + existencias)) And (kh.totalPedido - precio > 1) Then
@@ -726,38 +760,41 @@ Sub b_prodMas_Click
inv = inv - 1
' laCant.Text = $"$1.0{laCant.Text+1}"$
laCant.Text = NumberFormat2((laCant.Text + 1), 1, 0, 0, False)
ts.trendSpending("prodMas", "descuentos", clienteId, id, laCant.Text, inv)
' Log(clv_prods_ll.GetValue(index).As(Map))
End If
else if kh.traeLimiteCredito(Subs.traeCliente) < (kh.totalPedido + precio) And lfila.Text = "PRODUCTOS" Then
Log(3)
' Log(33)
Log($"#######################${CRLF}#### LIMITE CREDITO SUPERADO${CRLF}#######################"$)
ToastMessageShow("LIMITE DE CREDITO SUPERADO", False)
else If inv > 0 And laBonificacion = 0 And lfila.Text = "PRODUCTOS" Then
else If inv > 0 And tsMonto.As(Int) = 0 And lfila.Text = "PRODUCTOS" Then
' Log(55)
laCant.Text = NumberFormat2((laCant.Text + 1), 1, 0, 0, False)
else If inv > 0 And laBonificacion > 0 And laCant.Text < bonificacionesMaximas And lfila.Text = "PRODUCTOS" Then
Log(4)
' LogColor(inv, Colors.blue)
' laCant.Text = $"$1.0{laCant.Text + 1}"$
ts.trendSpending("prodMas", "descuentos", clienteId, id, laCant.Text, inv)
else If inv > 0 And tsMonto > 0 And laCant.Text < tsMaximas And lfila.Text = "PRODUCTOS" Then
' Log(44)
laCant.Text = NumberFormat2((laCant.Text + 1), 1, 0, 0, False)
' Log(kh.totalPedido)
' else If lfila.Text = "RMI" And laCant.Text + 1 <= inv And (kh.totalPedido - precio > 1) Then
else If lfila.Text = "RMI" And (kh.totalPedido - precio > 1) Then
Log(5)
ts.trendSpending("prodMas", "descuentos", clienteId, id, laCant.Text, inv)
else If lfila.Text = "RMI" And laCant.Text >= tsMaximas Then
ToastMessageShow("El presupuesto de RMI no permite agregar mas productos!!", False)
else If lfila.Text = "RMI" And laCant.Text < tsMaximas And (kh.totalPedido - precio > 1) Then
' Log(66)
ts.trendSpending("prodMas", "rmi", clienteId, id, laCant.Text, inv)
LogColor(inv, Colors.blue)
' laCant.Text = $"$1.0{laCant.Text + 1}"$
laCant.Text = NumberFormat2((laCant.Text + 1), 1, 0, 0, False)
Log(kh.totalPedido)
else if kh.totalPedido < 1 Then
Log(6)
' Log(77)
laCant.Text = "0"
End If
' Log(99)
If lfila.Text = "RMI" Then
almacenX = "DUR"
nombreX = "CAMBIO"&Subs.traeRMINombre(id)
precioX = precioX * -1
End If
Subs.actualizaProducto(almacenX, precioX, laCant.text, nombreX, id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, Starter.tipov)
Log($"Existencias: ${inv}, inv: ${Subs.traeinventario(pnl.GetView(1).Tag)}"$)
Log($"TotalPedido: ${NumberFormat2(kh.totalPedido,1,2,2,False)}"$)
@@ -808,6 +845,7 @@ End Sub
Private Sub et_pCant_TextChanged (Old As String, New As String)
' If Not(Old = "0" And New = "") And etCantHasFocus Then cuentaProds
' Log($"${Old}|${New}"$)
If etCantHasFocus = True Then
Try
LogColor($"txt changed: ${Old}|${New}, hasfocus=${etCantHasFocus}"$,Colors.Magenta)
@@ -828,7 +866,7 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
If existencias = "" Then existencias = 0
existencias = NumberFormat2(existencias, 1, 0, 0, False)
Log($"laCant: ${laCant.text}, Precio: ${precio}, DISPONIBLES: ${disp}"$)
Private inv As String=clv_prods_ll.GetValue(index).As(Map).Get("almacen")
' Private inv As String=clv_prods_ll.GetValue(index).As(Map).Get("almacen")
If(New = "" Or New = Null) Then New = 0
Log($"Nuevo: ${New}, InvTotal: ${invTotal}"$)
' If(New >= invTotal) Then
@@ -874,33 +912,32 @@ Private Sub et_pCant_TextChanged (Old As String, New As String)
End If
'######## Trend Spending
Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
Log("LA BONIFICACION: " & laBonificacion)
Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
Private maxDispPorBonificaciones As Int = (BonsRestantes/laBonificacion).As(Int)
Log($"Max disponibles por bonificaciones: ${maxDispPorBonificaciones}"$)
If laBonificacion > 0 Then
If New > bonificacionesMaximas Then
If invTotal > bonificacionesMaximas Then
laCant.Text = bonificacionesMaximas
Else
laCant.Text = invTotal
If lfila.Text = "PRODUCTOS" Then
Private tsMonto As String = NumberFormat2(ts.traePrecio(id)*(ts.traeDescXSku(clienteId, id)/100), 1, 2, 2, False)
Private tsRestantes As String = (TS_DESCUENTOS(0) - TS_DESCUENTOS(1) - ts.traeAcumuladoHoyTS("descuentos"))
Log("tsMonto: " & tsMonto)
Log("Monto del presupuesto disponible: " & tsRestantes)
' Private tsMaximas As Int = (tsRestantes/tsMonto).As(Int)
' Log($"tsMaximas: ${tsMaximas}"$)
Log($"tsMaximas: ${ts.tsMaximas}"$)
If tsMonto > 0 Then
If New > ts.tsMaximas Then
If invTotal > ts.tsMaximas Then
laCant.Text = ts.tsMaximas
Else
laCant.Text = invTotal
End If
End If
Else if tsMonto = 0 Then
If laCant.Text > invTotal Or New > invTotal Then
laCant.text = invTotal
End If
End If
Else if laBonificacion = 0 Then
If laCant.Text > invTotal Or New > invTotal Then
' Log("Se pasa!!")
' Log($"Ponemos laCant en: ${invTotal}"$)
laCant.text = invTotal
End If
ts.modTrendSpending("resta", "descuentos", ((New * tsMonto) - (Old * tsMonto)))
Log("tsAcumulado: " & ts.traeAcumuladoHoyTS("descuentos"))
End If
Subs.modTrendSpending("resta", "bonificaciones", ((New * laBonificacion) - (Old * laBonificacion)))
Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
'##########################
' If Not(Old = "0" And New = "") And laCant.Text <> Null And laCant.Text <> "" And etCantHasFocus Then
Subs.actualizaProducto(almacenX, precioX, laCant.Text, nombreX, id, clienteId, Subs.traeFecha, Subs.traeUsuarioDeBD, rutaUsuario, 0, Starter.tipov)
' End If
@@ -936,24 +973,23 @@ Private Sub et_pCant_FocusChanged (HasFocus As Boolean)
Dim pnl As B4XView = pnl0.GetView(0)
Dim laCant As B4XView = pnl.GetView(2).GetView(2)
Private id As String=clv_prods_ll.GetValue(index).As(Map).Get("id")
'######## Trend Spending
Private laBonificacion As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
If laBonificacion > 0 And HasFocus Then
Log("LA BONIFICACION: " & laBonificacion)
Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - Subs.traeAcumuladoHoyTS("bonificaciones"))
Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
bonificacionesMaximas = ((laCant.text * laBonificacion) + BonsRestantes) / laBonificacion
Log("MAX: " & bonificacionesMaximas)
' Private maxDispPorBonificaciones As Int = ((BonsRestantes/laBonificacion)+laCant.text).As(Int)
' Log($"Max disponibles por bonificaciones: ${maxDispPorBonificaciones}"$)
' Subs.modTrendSpending("resta", "bonificaciones", ((New * laBonificacion) - (Old * laBonificacion)))
Log(Subs.traeAcumuladoHoyTS("bonificaciones"))
If lfila.Text = "PRODUCTOS" Then
'######## Trend Spending
Private laBonificacion As String = ts.traePrecio(id)*(ts.traeDescXSku(clienteId, id)/100)
If laBonificacion > 0 And HasFocus Then
Log("LA BONIFICACION: " & laBonificacion)
Private tsRestantes As String = (TS_DESCUENTOS(0) - TS_DESCUENTOS(1) - ts.traeAcumuladoHoyTS("descuentos"))
Log("Monto de prespuesto disponible: " & tsRestantes)
ts.tsMaximas = ((laCant.text * laBonificacion) + tsRestantes) / laBonificacion
Log("tsMaximas: " & ts.tsMaximas)
Log(ts.traeAcumuladoHoyTS("descuentos"))
End If
'##########################
End If
'##########################
' If HasFocus Then
' bonificacionesMaximas = Subs.trendSpendingFuncs("focusChanged", "bonificaciones", clienteId, id, laCant.text, 0)
'' Log("bonificacionesMaximas: " & bonificacionesMaximas)
' End If
invTotal = laCant.Text + Subs.traeinventario(id)
LogColor("InvTotal PRODMAS: " & invTotal, Colors.Red)
cuentaProds
@@ -1232,12 +1268,12 @@ Private Sub lv_prodsPedido_ItemLongClick (Position As Int, Value As Object)
'Si no es RMI, actualizamos el inventario.
If prod.GetString("PE_CEDIS") <> "DUR" Then Starter.skmt.ExecNonQuery2($"update ${Subs.traeTablaProds(Starter.tipov)} set cat_gp_almacen = cat_gp_almacen + ? where cat_gp_id = ?"$, Array As Object(m.get("cant"), m.get("prodId")))
Log($"BORRAMOS ${Value}, ${m.Get("cedis")}"$)
' Codigo para regresar el dinero al resupuesto de BONIFICACIONES (Trend Spending)
' Codigo para regresar el dinero al presupuesto de DESCUENTOS (Trend Spending)
Private precio0 As String = Subs.traePrecio(m.Get("prodId"))
Private precioConDesc As String = (kh.traeDescXSku(Subs.traeCliente, m.Get("prodId"))/100)*precio0
Log(precioConDesc)
Log(">>>>>>>>>>>>> " & (precioConDesc * m.Get("cant")))
Subs.modTrendSpending("suma", "bonificaciones", (precioConDesc * m.Get("cant")))
Subs.modTrendSpending("suma", "descuentos", (precioConDesc * m.Get("cant")))
' Termina Trend Spending
Starter.skmt.ExecNonQuery2("delete from pedido where pe_pronombre = ? and pe_cedis = ? and pe_cant = ? and pe_cliente in (Select CUENTA from cuentaa)", Array As Object(Value, m.Get("cedis"), m.Get("cant")))
@@ -1365,6 +1401,11 @@ Private Sub clv_prods_ll_VisibleRangeChanged (FirstIndex As Int, LastIndex As In
prioridad = p1.GetInt("CAT_GP_TIPOPROD2")
' Log(prioridad)
End If
' Log("NIVEL: " & lfila.Text)
If lfila.Text = "RMI" Then ' Si es RMI, la cantidad solo se puede cambiar con los botones.
et_pCant.Enabled = False
et_pCant.TextColor = Colors.black
End If
If clv_prods_ll.GetValue(i).As(Map).Get("cant") <> Null And clv_prods_ll.GetValue(i).As(Map).Get("cant") > 0 Then
p_prods.Color=0xFFE2EEFF
' Log($"select CAT_GP_TIPOPROD2 from CAT_GUNAPROD where CAT_GP_ID = '${clv_prods_ll.GetValue(i).As(Map).Get("id")}'"$)
@@ -1530,7 +1571,7 @@ Sub LlenaProdsLL(p As ResultSet, extra As String)
Private Pnl As B4XView = xui.CreatePanel("")
Pnl.SetLayoutAnimated(0, 0, 0, clv_prods_ll.AsView.Width, 50dip)
Private tempMap As Map = listaProdsConCant.Get(pr0)
Private inv = tempMap.Get("almacen")' + tempMap.Get("cant")
Private inv As String = tempMap.Get("almacen")' + tempMap.Get("cant")
tempMap.Put("almacen", inv)
' Log(tempMap)
clv_prods_ll.Add(Pnl, tempMap)

View File

@@ -35,7 +35,7 @@ Sub Class_Globals
Dim estaPromo, esteCliente As String
Private b_promoMas As Button
Private b_promoMenos As Button
dim et_promoCant As EditText
Dim et_promoCant As EditText
Private l_promosCant As Label
Private b_continuar As Button
Private p_prodsVariables As Panel
@@ -43,11 +43,13 @@ Sub Class_Globals
Dim prodsPedidoActual As String
Dim montoPedidoActual As String
Dim promosMap As Map
Dim ts As C_TrendSpending
End Sub
'You can add more parameters here.
Public Sub Initialize As Object
' promosC.Initialize(Me, "promosC", Starter.skmt)
ts.Initialize("ts", "ts", Starter.skmt)
Return Me
End Sub
@@ -436,7 +438,7 @@ End Sub
' Esto pasa cuando el producto fijo de una promocion tambien es parte de los productos variables de la misma, asi que
' si la promo usa 3 productos fijos y quedan 10 para los variables, cuando pedimos 2 promociones, en lugar de usar
' 3 para los fijos, ahora vamos a necesitar 6, y en lugar de quedar 10 para los variables, ahora solo quedan 7.
' Regresa un mapa con el nuevo inventario de los productos variables afectados.
' Regresa un mapa con el nuevo inventario de los productos variables afectados.
Sub revisaInvProdsVariables As Map
Private invVariablesModificados As Map = CreateMap()
' Private prodsFijosOriginales As Int = (tpf / et_promoCant.Text)
@@ -487,7 +489,7 @@ End Sub
Private Sub b_continuar_Click
cuentaProds
' 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.
Private pn As String = Subs.traeProdNombre(prodsIds.Get(t))
Subs.guardaProductoSinGestion(estaPromo, prodsPrecios.Get(t), prodsCants.Get(t), pn, prodsIds.Get(t), Subs.traeCliente, Subs.traeFecha, Subs.traeUsuarioDeBD, Subs.traeRuta, 0, Starter.tipov)

Binary file not shown.

BIN
B4A/Files/kelloggs.rkmt.km Normal file

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -23,6 +23,7 @@ ModuleBookmarks28=
ModuleBookmarks29=
ModuleBookmarks3=
ModuleBookmarks30=
ModuleBookmarks31=
ModuleBookmarks4=
ModuleBookmarks5=
ModuleBookmarks6=
@@ -54,6 +55,7 @@ ModuleBreakpoints28=
ModuleBreakpoints29=
ModuleBreakpoints3=
ModuleBreakpoints30=
ModuleBreakpoints31=
ModuleBreakpoints4=
ModuleBreakpoints5=
ModuleBreakpoints6=
@@ -64,8 +66,8 @@ ModuleClosedNodes0=
ModuleClosedNodes1=
ModuleClosedNodes10=
ModuleClosedNodes11=
ModuleClosedNodes12=3,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41
ModuleClosedNodes13=
ModuleClosedNodes12=3,7,8,9,10,11,12
ModuleClosedNodes13=6,7,8,9,10,11,12,13,14,16,17
ModuleClosedNodes14=
ModuleClosedNodes15=
ModuleClosedNodes16=
@@ -76,21 +78,22 @@ ModuleClosedNodes2=
ModuleClosedNodes20=
ModuleClosedNodes21=
ModuleClosedNodes22=
ModuleClosedNodes23=4,5,6,7,8,11,12,14,15,17,18,21,22,24,25,26,27,28,29,30,31,32,33,35
ModuleClosedNodes24=
ModuleClosedNodes25=4
ModuleClosedNodes26=
ModuleClosedNodes23=
ModuleClosedNodes24=4,24,25,26,27,31,32,33,35
ModuleClosedNodes25=
ModuleClosedNodes26=4
ModuleClosedNodes27=
ModuleClosedNodes28=
ModuleClosedNodes29=
ModuleClosedNodes3=1,5,6,7
ModuleClosedNodes30=
ModuleClosedNodes3=5,6,7
ModuleClosedNodes30=115
ModuleClosedNodes31=
ModuleClosedNodes4=
ModuleClosedNodes5=
ModuleClosedNodes6=
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
NavigationStack=Subs,modTrendSpending,2124,4,Subs,traeAcumuladoHoyTS,2150,2,C_Principal,Class_Globals,6,0,Subs,borraPedidoClienteActual,1505,6,Subs,Process_Globals,14,0,Subs,actualizaProducto,983,0,C_Productos,et_pCant_FocusChanged,938,6,C_Productos,et_pCant_TextChanged,893,6,C_Productos,b_prodMenos_Click,619,6,C_Productos,b_prodMas_Click,675,6
NavigationStack=C_Clientes,Class_Globals,23,0,C_Clientes,B_IMP_Click,236,0,C_Cliente,B4XPage_Created,316,0,B4XMainPage,B4XPage_Created,155,1,C_Principal,JobDone,1064,0,Diseñador Visual,cliente.bal,-100,3,C_Cliente,B_IMP_Click,1138,0,Subs,ponImpreso,658,0,C_Cliente,Imprime_ticket,1210,6,kms_helperSubs,RD_respalda_kmt_info,362,0,kms_helperSubs,RD_Init,94,4
SelectedBuild=0
VisibleModules=1,28,11,3,29,12,7,9,23
VisibleModules=1,29,11,3,30,13,12,7,27,26,24,4

View File

@@ -25,7 +25,7 @@ Sub Process_Globals
Dim GPS As GPS
'Para ENVIA_ULTIMA_GPS
Dim Timer1 As Timer
Dim Interval As Int = 20
Dim Interval As Int = 600
Dim DBReqServer As String
Dim pe As PhoneEvents
Dim ph As Phone
@@ -47,7 +47,7 @@ Sub Process_Globals
Dim ultimaActualizacionGPS As String = 235959 '
Dim fechaRuta As String 'ignore
Dim tiempos As Map
Dim Logger As Boolean = False
Dim Logger As Boolean = True
Dim ultimaActividad As String = ""
Dim boleta As String = 0
Dim sesion As Map
@@ -57,7 +57,7 @@ Sub Process_Globals
Dim errorConnDBReq As Boolean = False
Dim GUID As String = ""
Dim passSupervisor As String = "13X#X$X46" ' Valor predeterminado DIFERENTE a ""
dim semana as int = 0
Dim semana As Int = 0
End Sub
Sub Service_Create
@@ -74,7 +74,7 @@ Sub Service_Create
Subs.revisaBD
pe.Initialize("pe") 'Para obtener la bateria
' skmt = s.dbInit 'Inicializamos BD.
DBReqServer = "http://keymon.lat:1781"
DBReqServer = "http://keymon.net:1781"
' DBReqServer = "http://keymon.lat:9003"
Private c As Cursor = skmt.ExecQuery($"select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = 'SERVER'"$)
If c.RowCount > 0 Then
@@ -231,7 +231,8 @@ Sub JobDone(Job As HttpJob)
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("HORA", HORA))
DateTime.DateFormat = "HH"
skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("HORASRVR"))
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("HORASRVR", DateTime.Date(DateTime.Now)))
skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("HORAMVL"))
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("HORAMVL", DateTime.Date(DateTime.Now)))
Next
End If
End If

View File

@@ -1184,7 +1184,7 @@ End Sub
'Regresa el numero máximo de promociones permitidas, tomando en cuenta recurrentes, clientes y maxPromos.
Sub traeMaxPromos(pm As Map) As Int
Private thisLog As Boolean = False 'Si es verdadero, muestra los logs de este sub.
Private thisLog As Boolean = True 'Si es verdadero, muestra los logs de este sub.
Private maxPromos As List
Private mp0, mp As String = "0"
maxPromos.Initialize
@@ -1197,7 +1197,11 @@ Sub traeMaxPromos(pm As Map) As Int
' LogColor("SIN HCCP CANT", Colors.Magenta)
' End If
If thisLog Then LogColor("==== HISTORICO:"&pm.Get("historico"), Colors.Red)
' Log("### PRODS VARIABLES: " & pm.Get("prodsVariables"))
Private maxPromosXDescPV As String = B4XPages.MainPage.promos.ts.maxPromosPorProdsVariables(pm.Get("prodsVariables"), pm.Get("id"))
Log("########### " & maxPromosXDescPV)
If thisLog Then Log(pm)
maxPromos.Add(maxPromosXDescPV.As(Int))
If pm.Get("historico") = "1" Then maxPromos.Add(pm.Get("maxRecurrente")) 'Si hay historico, agregamos maxRecurrente
If pm.Get("maxPromos") <> "null" Then maxPromos.Add(pm.Get("maxPromos").As(Int)) 'Agregamos maxPromos
If pm.Get("maxXcliente") <> "null" Then maxPromos.Add(pm.Get("maxXcliente").As(Int)) 'Agregamos maxXcliente
@@ -1232,15 +1236,13 @@ End Sub
'3799, 7226, 7228, 7230
Sub procesaPromocion(idPromo As String, cliente As String) As Map 'ignore
Private thisLog As Boolean = False 'Si es verdadero, muestra los logs de este sub.
Private thisLog As Boolean = True 'Si es verdadero, muestra los logs de este sub.
Private inicioContador As String = DateTime.Now
Private mp As Int = 0
If thisLog Then LogColor($"********* Iniciamos revision de Promo ${idPromo} *********"$, Colors.red)
'Obtenemos el mapa con toda la info de la promoción.
Private pm As Map = traePromo(idPromo, cliente)
' B4XPages.MainPage.productos.promosC.traePromo(idPromo, cliente)
If thisLog Then LogColor(pm, Colors.Blue)
' If thisLog Then LogColor("|" & pm.Get("maxPromos") & "|", Colors.Blue)
' Log("|"&revisaMaxPromosProdsFijosPorInventario(pm)&"|")
@@ -1336,17 +1338,20 @@ Sub revisaMaxPromosProdsFijosPorInventario(pm As Map) As Int
Private thisInvDisp As Int = 0
If invDispParaPromo.Get(idProdsFijos.Get(p)) <> Null Then thisInvDisp = invDispParaPromo.Get(idProdsFijos.Get(p))
If thisLog Then Log($"id=${idProdsFijos.Get(p)}, inv=${thisInvDisp}, pzas=${prodsFijosPiezas.Get(p)}"$)
' Log(">>>>> Monto Bonificacion: " & B4XPages.MainPage.promos.ts.traeMontoBonificacion(idProdsFijos.Get(p), pm.Get("id")))
' If thisLog Then LogColor(">> Max prods fijos x Bonificaciones: " & B4XPages.MainPage.promos.ts.traeBonificacionesMaximas("bonificaciones", clienteActual, idProdsFijos.Get(p), prodsFijosPiezas.Get(p), pm.Get("id")), Colors.blue)
t.Add(B4XPages.MainPage.promos.ts.traeBonificacionesMaximas("bonificaciones", clienteActual, idProdsFijos.Get(p), prodsFijosPiezas.Get(p), pm.Get("id")))
' If thisLog Then Log($"${(thisInvDisp / prodsFijosPiezas.Get(p))}"$)
Private x() As String = Regex.Split("\.", $"${(thisInvDisp / prodsFijosPiezas.Get(p))}"$) 'Separamos el resultado de la division por el punto decimal.
' If thisLog Then Log(x(0))
If thisLog Then Log(x(0))
t.Add(x(0).As(Int)) 'Solo guardamos la parte del entero de la division.
Next
t.Sort(True) 'Ordenamos la lista para que en el lugar 0 este el resultao mas pequeño.
If thisLog Then LogColor($"prodsFijos=${idProdsFijos}"$, Colors.Blue)
If thisLog Then LogColor($"prodsFijosPiezasReq=${prodsFijosPiezas}"$, Colors.Blue)
If thisLog Then LogColor($"invFijoXpromo=${invFijoXpromo}"$, Colors.Blue)
' If thisLog Then LogColor($"invFijoXpromo=${invFijoXpromo}"$, Colors.Blue)
LogColor(">>>>>> T: " & t, Colors.red)
If thisLog Then LogColor("Max promos de prodsFijos POR inventario = " & t.Get(0), Colors.red)
' LogColor(">>>>>> " & t.Get(0), Colors.red)
Return t.Get(0) 'Regresamos el resultado mas pequeño.
End Sub
@@ -1357,7 +1362,7 @@ End Sub
'fijos es 5, entonces regresamos 5.
Sub revisaMaxPromosProdsVariablesPorInventario(pm As Map) As Int 'ignore
Private thisLog As Boolean = True
If thisLog Then Log("======================================================")
If thisLog Then LogColor("==================revisaMaxPromosProdsVariablesPorInventario====================", Colors.red)
If thisLog Then Log("======================================================")
Private invFijoXpromo As Map
invFijoXpromo.Initialize
@@ -1371,36 +1376,58 @@ Sub revisaMaxPromosProdsVariablesPorInventario(pm As Map) As Int 'ignore
Private prodsVariablesRequeridos As Int = pm.Get("prodsVariablesRequeridos")
Private prodsFijosPiezas As List = pm.Get("prodsFijosPiezas")
Private idProdsFijos As List = pm.Get("prodsFijos")
For p = 0 To idProdsFijos.Size -1 'Generamos mapa con los productos fijos y piezas requeridas por promo.
invFijoXpromo.Put(idProdsFijos.Get(p), prodsFijosPiezas.Get(p))
Private idEsteProd As String = idProdsFijos.Get(p)
Private invEsteProd As Int = invDispParaPromo.Get(idEsteProd)
Private pzasReqEsteProd As Int = prodsFijosPiezas.Get(p)
If thisLog Then Log($"id=${idEsteProd}, inv=${invEsteProd}, pzas=${pzasReqEsteProd}"$)
' For p = 0 To idProdsFijos.Size -1 'Generamos mapa con los productos fijos y piezas requeridas por promo.
' invFijoXpromo.Put(idProdsFijos.Get(p), prodsFijosPiezas.Get(p))
' Private idEsteProd As String = idProdsFijos.Get(p)
' Private invEsteProd As Int = invDispParaPromo.Get(idEsteProd)
' Private pzasReqEsteProd As Int = prodsFijosPiezas.Get(p)
' If thisLog Then Log($"id=${idEsteProd}, inv=${invEsteProd}, pzas=${pzasReqEsteProd}"$)
' invDispParaPromo.Put( idEsteProd, (invEsteProd - (1)) )
Next
' Next
If thisLog Then LogColor($"MaxPromos=${maxPromos}, promosXFijos=${maxPromosXFijos}"$, Colors.Blue)
If thisLog Then LogColor($"prodsFijos=${idProdsFijos}"$, Colors.Blue)
If thisLog Then LogColor($"prodsFijosPiezasReq=${prodsFijosPiezas}"$, Colors.Blue)
If thisLog Then LogColor($"prodsVariables=${idProdsVariables}${CRLF}Variables Req=${prodsVariablesRequeridos} "$, Colors.Blue)
If thisLog Then LogColor($"invFijoXpromo=${invFijoXpromo}"$, Colors.Blue)
' If thisLog Then LogColor($"invFijoXpromo=${invFijoXpromo}"$, Colors.Blue)
If thisLog Then Log($"Prods variables disponibles = ${totalProdsVariablesDisponibles}"$)
Private maxPromosXVariables As Int = 0
'Si prodsFijosCant = 0 entonces no debemos de hacemos el loop, solo sumamos las existencias de los variables / cant de variables requeridos y ese seria el maximo.
Private revisiones As Int = maxPromosXFijos
If pm.Get("prodsFijos").As(List).Size = 0 Then
revisiones = 1
Log(pm.Get("prodsVariables"))
End If
Log(pm.Get("prodsFijos").As(List).Size)
Log(maxPromosXFijos)
For x = 1 To maxPromosXFijos
If thisLog Then Log("==================== maxPromosXFijos "& x &" ========================")
If thisLog Then Log("=====================================================")
If thisLog Then Log("=====================================================")
Log("FIJOS: " & idProdsFijos.Size)
For i = 0 To idProdsFijos.Size - 1
If thisLog Then Log($"FIJO - ${idProdsFijos.Get(i)}, ${invDispParaPromo.Get(idProdsFijos.Get(i))} - ${prodsFijosPiezas.Get(i).As(Int)*(i+1)}"$)
invDispParaPromo.Put(idProdsFijos.Get(i), invDispParaPromo.Get(idProdsFijos.Get(i)).As(Int) - prodsFijosPiezas.Get(i).As(Int)*(i+1)) 'Restamos las piezas de los productos fijos del inventario disponible.
Next
If thisLog Then LogColor("Inv disponible despues de restar fijos = " & invDispParaPromo, Colors.Blue)
totalProdsVariablesDisponibles = 0
Private prodsVariablesXPresupuestoBonificaciones As List
prodsVariablesXPresupuestoBonificaciones.Initialize
For i = 0 To idProdsVariables.Size - 1 'Obtenemos total de productos variables disponibes.
If invDispParaPromo.ContainsKey(idProdsVariables.Get(i)) Then
Log($"Este prodVariable: ${idProdsVariables.Get(i)}"$)
Log($"Este invDisponible: ${invDispParaPromo.Get(idProdsVariables.Get(i))}"$)
' Log(">> Monto Bonificacion: " & B4XPages.MainPage.promos.ts.traeMontoBonificacion(idProdsVariables.Get(i), pm.Get("id")))
prodsVariablesXPresupuestoBonificaciones.Add(B4XPages.MainPage.promos.ts.traeBonificacionesMaximas("bonificaciones", clienteActual, idProdsVariables.Get(i), prodsVariablesRequeridos, pm.Get("id")))
' If thisLog Then LogColor(">> Max prods fijos x Bonificaciones: " & B4XPages.MainPage.promos.ts.traeBonificacionesMaximas("bonificaciones", clienteActual, idProdsVariables.Get(i), prodsVariablesRequeridos, pm.Get("id")), Colors.blue)
totalProdsVariablesDisponibles = totalProdsVariablesDisponibles + invDispParaPromo.Get(idProdsVariables.Get(i))
End If
Next
If thisLog Then Log($"prodsVariablesXPresupuestoBonificaciones: ${prodsVariablesXPresupuestoBonificaciones}"$)
'Revisamos variables.
If thisLog Then Log($"Var disponibles - var requeridos : ${totalProdsVariablesDisponibles} - ${prodsVariablesRequeridos*x}"$)
totalProdsVariablesDisponibles = totalProdsVariablesDisponibles - (prodsVariablesRequeridos*x)
@@ -1409,7 +1436,9 @@ Sub revisaMaxPromosProdsVariablesPorInventario(pm As Map) As Int 'ignore
maxPromosXVariables = x
Next
'Restamos fijos.
' LogColor("Max promos de prodsVariables POR inventario = " & maxPromosXVariables, Colors.red)
LogColor("Max promos de prodsVariables POR inventario = " & maxPromosXVariables, Colors.red)
If thisLog Then Log("=====================================================")
If thisLog Then LogColor("=================TERMINA MAXPROMOSPRODSVARIABLES===================", Colors.red)
Return maxPromosXVariables
End Sub
@@ -1945,7 +1974,12 @@ Sub revisaPromoPorMonto As Map
Private rangoMin As String = "0"
Private promoId As String = ""
m.Initialize
Private pm As Cursor = Starter.skmt.ExecQuery("select CAT_PA_ID, ifNull(CAT_PA_PORCENTAJE_PAQUETE, 0) as CAT_PA_PORCENTAJE_PAQUETE, ifNull(CAT_PA_PRECIO1, 0) as CAT_PA_PRECIO1, ifNull(CAT_PA_PRECIO2, 0) as CAT_PA_PRECIO2 from promos_comp where CAT_PA_TIPO_PROMONTO = '1' and CAT_PA_ID not in (select PE_CEDIS from PEDIDO where PE_CEDIS = PE_PROID)") 'Traemos las "promos por monto" que no existen en el "PEDIDO" del cliente.
Private pm As Cursor = Starter.skmt.ExecQuery($"select CAT_PA_ID,
ifNull(CAT_PA_PORCENTAJE_PAQUETE, 0) As CAT_PA_PORCENTAJE_PAQUETE,
ifNull(CAT_PA_PRECIO1, 0) As CAT_PA_PRECIO1,
ifNull(CAT_PA_PRECIO2, 0) As CAT_PA_PRECIO2 from promos_comp
where CAT_PA_TIPO_PROMONTO = '1' and
CAT_PA_ID Not in (Select PE_CEDIS from PEDIDO where PE_CEDIS = PE_PROID And PE_CLIENTE = '${traeCliente}')"$) 'Traemos las "promos por monto" que no existen en el "PEDIDO" del cliente.
If pm.RowCount > 0 Then
Private clienteId As String = traeCliente
For i = 0 To pm.RowCount - 1
@@ -2051,46 +2085,45 @@ Sub comparaVersiones(versionMinima As String, versionActual As String) As Int
End If
' Si son iguales, sigue comparando
Next
' Si todas las partes comparadas son iguales:
Return 0
End Sub
' Regresa un mapa con el tipo, monto permitido semanal y el acumulado hasta el día anterior:
' ej:
' - RMI=1500,0
' - DESCUENTOS=1500,0
' - BONIFICACIONES=1500,480
Sub traeInfoTrendSpending As Map
Private semana As Int = 0
Private HIST_TSS_SEMANA As String
Private HIST_TSS_SEMANA_ACUM As String
Private m As Map
m.Initialize
Private c As Cursor = Starter.skmt.ExecQuery($"select cat_va_valor from cat_variables where cat_va_descripcion = 'SEM_CAL_LABORAL'"$)
If c.RowCount > 0 Then
c.Position = 0
semana = c.GetInt("CAT_VA_VALOR")
End If
If semana > 0 Then
c = Starter.skmt.ExecQuery($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1
c.Position = i
HIST_TSS_SEMANA = c.GetString($"HIST_TSS_SEMANA${semana}"$)
HIST_TSS_SEMANA_ACUM = c.GetString($"HIST_TSS_SEMANA${semana}_ACUM"$)
If c.GetString("HIST_TSS_TIPO") = "RMI" Then
m.Put("RMI", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
else if c.GetString("HIST_TSS_TIPO") = "DESCUENTOS" Then
m.Put("DESCUENTOS", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
else if c.GetString("HIST_TSS_TIPO") = "BONIFICACIONES" Then
m.Put("BONIFICACIONES", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
End If
Next
End If
End If
Return m
End Sub
'' Regresa un mapa con el tipo, monto permitido semanal y el acumulado hasta el día anterior:
'' ej:
'' - RMI=1500,0
'' - DESCUENTOS=1500,0
'' - BONIFICACIONES=1500,480
'Sub traeInfoTrendSpending As Map
' Private semana As Int = 0
' Private HIST_TSS_SEMANA As String
' Private HIST_TSS_SEMANA_ACUM As String
' Private m As Map
' m.Initialize
' Private c As Cursor = Starter.skmt.ExecQuery($"select cat_va_valor from cat_variables where cat_va_descripcion = 'SEM_CAL_LABORAL'"$)
' If c.RowCount > 0 Then
' c.Position = 0
' semana = c.GetInt("CAT_VA_VALOR")
' End If
' If semana > 0 Then
' c = Starter.skmt.ExecQuery($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
' If c.RowCount > 0 Then
' For i = 0 To c.RowCount - 1
' c.Position = i
' HIST_TSS_SEMANA = c.GetString($"HIST_TSS_SEMANA${semana}"$)
' HIST_TSS_SEMANA_ACUM = c.GetString($"HIST_TSS_SEMANA${semana}_ACUM"$)
' If c.GetString("HIST_TSS_TIPO") = "RMI" Then
' m.Put("RMI", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
' else if c.GetString("HIST_TSS_TIPO") = "DESCUENTOS" Then
' m.Put("DESCUENTOS", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
' else if c.GetString("HIST_TSS_TIPO") = "BONIFICACIONES" Then
' m.Put("BONIFICACIONES", HIST_TSS_SEMANA & "," & HIST_TSS_SEMANA_ACUM)
' End If
' Next
' End If
' End If
' Return m
'End Sub
' Modifica el acumulado del Trend Speding, le "suma" o "resta" al presupuesto especificado (RMI, BONIFICACIONES o DESCUENTOS)
Sub modTrendSpending(accion As String, tipo As String, monto As String)
@@ -2113,20 +2146,21 @@ Sub modTrendSpending(accion As String, tipo As String, monto As String)
End If
Log("acumulado:" & acumulado & " | monto: " & monto)
Private c As Cursor = Starter.skmt.ExecQuery($"select HIST_TSS_TIPO, ${HIST_TSS_SEMANA} as disponible, ${HIST_TSS_SEMANA_ACUM} as acumulado from HIST_TREND_SPENDING_SEMANAL where HIST_TSS_TIPO = '${tipo.ToUpperCase}'"$)
If accion = "resta" Then
If accion.ToUpperCase = "RESTA" Then
If c.RowCount > 0 Then
c.Position = 0
If tipo.ToUpperCase = "BONIFICACIONES" Then
If tipo.ToUpperCase = "BONIFICACIONES" Or tipo.ToUpperCase = "RMI" Then
Private nuevaBonificacion As String = NumberFormat2((acumulado + monto), 1, 2, 2, False)
LogColor($"Nueva bonificacion = ${nuevaBonificacion}"$, Colors.Magenta)
LogColor($"Nuevo acumulado ${tipo} = ${nuevaBonificacion}"$, Colors.Magenta)
Starter.skmt.ExecNonQuery($"delete from TREND_SPENDING where tipo = '${tipo.ToUpperCase}' "$)
Starter.skmt.ExecNonQuery($"insert into TREND_SPENDING (tipo, acumulado) values ('${tipo.ToUpperCase}', '${nuevaBonificacion}')"$)
' else if tipo.ToUpperCase = "RMI" Then
End If
End If
else if accion = "suma" Then
else if accion.ToUpperCase = "SUMA" Then
If c.RowCount > 0 Then
c.Position = 0
If tipo.ToUpperCase = "BONIFICACIONES" Then
If tipo.ToUpperCase = "BONIFICACIONES" Or tipo.ToUpperCase = "RMI" Then
Private nuevaBonificacion As String = NumberFormat2((acumulado - monto), 1, 2, 2, False)
LogColor($"Nueva bonificacion = ${nuevaBonificacion}"$, Colors.Magenta)
Starter.skmt.ExecNonQuery($"delete from TREND_SPENDING where tipo = '${tipo.ToUpperCase}' "$)
@@ -2136,27 +2170,27 @@ Sub modTrendSpending(accion As String, tipo As String, monto As String)
End If
End Sub
Sub traeAcumuladoHoyTS(tipo As String) As String
Private HIST_TSS_SEMANA As String
Private HIST_TSS_SEMANA_ACUM As String
Private acumulado As String = "0"
If Starter.semana = 0 Then
Private c As Cursor = Starter.skmt.ExecQuery($"select cat_va_valor from cat_variables where cat_va_descripcion = 'SEM_CAL_LABORAL'"$)
If c.RowCount > 0 Then
c.Position = 0
Starter.semana = c.GetInt("CAT_VA_VALOR")
End If
End If
HIST_TSS_SEMANA = $"HIST_TSS_SEMANA${Starter.semana}"$
HIST_TSS_SEMANA_ACUM = $"HIST_TSS_SEMANA${Starter.semana}_ACUM"$
Private d As Cursor = Starter.skmt.ExecQuery($"select acumulado from TREND_SPENDING where tipo = '${tipo.ToUpperCase}'"$)
If d.RowCount > 0 Then
d.Position = 0
acumulado = d.GetString("ACUMULADO")
End If
Logcolor("Acumulado hoy: " & acumulado, Colors.Blue)
Return NumberFormat2(acumulado, 1, 2, 2, False)
End Sub
'Sub traeAcumuladoHoyTS(tipo As String) As String
' Private HIST_TSS_SEMANA As String
' Private HIST_TSS_SEMANA_ACUM As String
' Private acumulado As String = "0"
' If Starter.semana = 0 Then
' Private c As Cursor = Starter.skmt.ExecQuery($"select cat_va_valor from cat_variables where cat_va_descripcion = 'SEM_CAL_LABORAL'"$)
' If c.RowCount > 0 Then
' c.Position = 0
' Starter.semana = c.GetInt("CAT_VA_VALOR")
' End If
' End If
' HIST_TSS_SEMANA = $"HIST_TSS_SEMANA${Starter.semana}"$
' HIST_TSS_SEMANA_ACUM = $"HIST_TSS_SEMANA${Starter.semana}_ACUM"$
' Private d As Cursor = Starter.skmt.ExecQuery($"select acumulado from TREND_SPENDING where tipo = '${tipo.ToUpperCase}'"$)
' If d.RowCount > 0 Then
' d.Position = 0
' acumulado = d.GetString("ACUMULADO")
' End If
' LogColor($"Acumulado hoy de ${tipo}: "$ & acumulado, Colors.Blue)
' Return NumberFormat2(acumulado, 1, 2, 2, False)
'End Sub
Sub traePrecio(id As String) As String
Private precio As String = "0"
@@ -2166,4 +2200,132 @@ Sub traePrecio(id As String) As String
precio = c.GetString("CAT_GP_PRECIO")
End If
Return precio
End Sub
End Sub
'
'Sub trendSpendingFuncs(accion As String, tipo As String, clienteId As String, id As String, laCant As String, inv As Int) As String
' Private logger As Boolean = True
' Dim kh As kms_helperSubs
' kh.Initialize("kh", "kh", Starter.skmt)
' Dim TS_RMI() As String
' Dim TS_DESCUENTOS() As String
' Dim TS_BONIFICACIONES() As String
' Private mx As Map = traeInfoTrendSpending
' TS_RMI = Regex.Split(",", mx.Get("RMI"))
' TS_DESCUENTOS = Regex.Split(",", mx.Get("DESCUENTOS"))
' TS_BONIFICACIONES = Regex.Split(",", mx.Get("BONIFICACIONES"))
'
' If tipo.ToUpperCase = "RMI" Then
' Private lasMaximas As Int = 0
' Log($"Acumulado de RMIs: ${traeAcumuladoHoyTS("rmi")}"$)
' Private elMonto As String = NumberFormat2(traePrecioRMI(id), 1, 2, 2, False)
' Log($"elMonto: ${elMonto}"$)
' Log($"TS_RMI(0): ${TS_RMI(0)}"$)
' Log($"TS_RMI(1): ${TS_RMI(1)}"$)
' Log($"LaCant: ${laCant}"$)
' Private rmisRestantes As String = (TS_RMI(0) - TS_RMI(1) - traeAcumuladoHoyTS("rmi"))
' Log($"rmisRestantes: ${rmisRestantes}"$)
'
' If accion.ToUpperCase = "PRODMAS" Then 'Regresa lasMaximas y elMonto separadas por un "|"
' If elMonto > 0 Then
' lasMaximas = ((laCant * elMonto) + rmisRestantes) / elMonto
' If logger Then Log("lasMaximas: " & lasMaximas)
' If logger Then Log(traeAcumuladoHoyTS("rmi"))
' End If
'' If laCant + 1 = lasMaximas Then
'' ToastMessageShow("El presupuesto de RMI no permite agregar mas productos!!", False)
'' End If
' If logger Then Log("EL RMI: " & elMonto)
' Log($"lacant=${laCant} < lasMaximas=${lasMaximas} = ${laCant<lasMaximas}"$)
' If laCant < lasMaximas Then
' modTrendSpending("resta", "rmi", elMonto) ' Restamos al presupuesto de hoy (agregamos al acumulado).
' End If
' If logger Then Log("RMI RESTANTES: " & (TS_RMI(0) - TS_RMI(1) - traeAcumuladoHoyTS("rmi")))
' Return lasMaximas & "|" & elMonto
' else if accion.ToUpperCase = "PRODMENOS" Then
' If logger Then Log("LaCANT= " & laCant & ", elMonto= " & elMonto)
' If laCant >= 0 Then
' modTrendSpending("suma", "rmi", elMonto) ' Agregamos al presupuesto de hoy (restamos del acumulado).
' End If
' Return lasMaximas & "|" & elMonto
' End If
' else If tipo.ToUpperCase = "BONIFICACIONES" Then
' Dim lasMaximas As Int = 0
' Dim elMonto As String = 0
' Private elMonto As String = NumberFormat2(kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100), 1, 2, 2, False)
' Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - traeAcumuladoHoyTS("bonificaciones"))
' If logger Then Log("EL MONTO: " & elMonto)
' Log("Monto del presupuesto disponible: " & BonsRestantes)
' If accion.ToUpperCase = "PRODMAS" Then 'Regresa lasMaximas y elMonto separadas por un "|"
' Log("PMAS")
' If elMonto > 0 Then
' lasMaximas = ((laCant * elMonto) + BonsRestantes) / elMonto
' If logger Then Log("lasMaximas: " & lasMaximas)
' If logger Then Log(traeAcumuladoHoyTS("bonificaciones"))
' End If
' If laCant = lasMaximas Then
' ToastMessageShow("El presupuesto de BONIFICACIONES no permite agregar mas productos!!", False)
' End If
' If logger Then Log("EL MONTO: " & elMonto)
' If inv > 0 And laCant < lasMaximas Then
' modTrendSpending("resta", "bonificaciones", elMonto) ' Restamos al presupuesto de hoy (agregamos al acumulado).
' End If
' If logger Then Log(">>>> MONTO RESTANTE PRESUPUESTO: " & (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - traeAcumuladoHoyTS("bonificaciones")))
' Return lasMaximas & "|" & elMonto
' else if accion.ToUpperCase = "PRODMENOS" Then 'Regresa bonificacionesMaximas y elMonto separadas por un "|"
' If logger Then Log("LaCANT= " & laCant & ", elMonto= " & elMonto)
' If laCant >= 0 Then
' modTrendSpending("suma", "bonificaciones", elMonto) ' Agregamos al presupuesto de hoy (restamos del acumulado).
' End If
' Return lasMaximas & "|" & elMonto
' else if accion.ToUpperCase = "TEXTCHANGED" Then
' Log("TC")
'' Private laBonificacion As String = NumberFormat2(kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100), 1, 2, 2, False)
'' Log("LA BONIFICACION: " & laBonificacion)
'' Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - traeAcumuladoHoyTS("bonificaciones"))
'' Log("Monto de BONIFICACIONES disponible: " & BonsRestantes)
'' Private maxDispPorBonificaciones As Int = (BonsRestantes/laBonificacion).As(Int)
'' Log($"Max disponibles por bonificaciones: ${maxDispPorBonificaciones}"$)
'' If laBonificacion > 0 Then
'' If New > bonificacionesMaximas Then
'' If inv > bonificacionesMaximas Then
'' laCant = bonificacionesMaximas
'' Else
'' laCant = inv
'' End If
'' End If
'' Else if laBonificacion = 0 Then
'' If laCant > inv Or New > inv Then
''' Log("Se pasa!!")
''' Log($"Ponemos laCant en: ${inv}"$)
'' laCant = inv
'' End If
'' End If
'' modTrendSpending("resta", "bonificaciones", ((New * laBonificacion) - (Old * laBonificacion)))
'' Log(traeAcumuladoHoyTS("bonificaciones"))
'' Return bonificacionesMaximas & "|" & laBonificacion
' else if accion.ToUpperCase = "FOCUSCHANGED" Then 'Regresa bonificaciones maximas, SOLO correr esta parte si HASFOCUS es VERDADERO.
' Log("FC")
' Private elMonto As String = kh.traePrecio(id)*(kh.traeDescXSku(clienteId, id)/100)
' If elMonto > 0 Then 'And HasFocus
' If logger Then Log("LA BONIFICACION: " & elMonto)
' Private BonsRestantes As String = (TS_BONIFICACIONES(0) - TS_BONIFICACIONES(1) - traeAcumuladoHoyTS("bonificaciones"))
' If logger Then Log("Monto del PRESUPUESTO disponible: " & BonsRestantes)
' lasMaximas = ((laCant * elMonto) + BonsRestantes) / elMonto
' If logger Then Log("bonificacionesMaximas: " & lasMaximas)
' End If
' Return lasMaximas
' End If
' End If
'End Sub
'
'' Trae el precio del RMI desde CAT_RMI.
'Sub traePrecioRMI(id As String) As String
' Private precio As String = "0"
' Private c As Cursor = Starter.skmt.ExecQuery($"select cat_monto from cat_rmi where cat_id = '${id}'"$)
' If c.RowCount > 0 Then
' c.Position = 0
' precio = c.GetString("CAT_MONTO")
' End If
' Return precio
'End Sub

View File

@@ -66,25 +66,41 @@ Sub RD_Init
If Not(File.IsDirectory(Dirp, Dir)) Then safePath = rp.GetSafeDirDefaultExternal("kmts")
' Log($"Hay directorio: ${Dirp} ${Dir} - ${File.IsDirectory(Dirp, Dir)}"$)
If Starter.Logger Then Log($"Safepath:${safePath}"$)
Private limpiarBD As Boolean = False
Private name() As String = Regex.split(" ", Application.LabelName) 'Obtenemos el nombre de la app para ponerselo a la BD.
If File.Exists(safePath, $"${name(0)}.rkmt.km"$) = False Then
File.Copy(File.DirAssets, $"${name(0)}.rkmt.km"$, safePath, $"${name(0)}.rkmt.km"$)
limpiarBD = True
Log("NO EXISTE BD")
End If
rkmt.Initialize(safePath, $"${name(0)}.rkmt.km"$, True)
If limpiarBD Then
LogColor("----->> LIMPIAMOS BD RECUPERACION PRIMERA VEZ <<-------", Colors.red)
rkmt.ExecNonQuery("delete from pedido")
rkmt.ExecNonQuery("delete from cat_gunaprod")
rkmt.ExecNonQuery("delete from cat_gunaprod2")
rkmt.ExecNonQuery("delete from kmt_info")
limpiarBD = False
End If
' Log("TAMAÑO DE ARCHIVO RESPALDO " &File.size(File.DirInternal&"/kmts", $"${name(0)}.rkmt.km"$))
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)"$)
' skmt.Initialize(File.DirInternal,"kmt.db", False)
If chkIfTableExists(khdb, "PEDIDO") Then rkmt.ExecNonQuery($"create table if not exists PEDIDO (${getTableColumnList(khdb, "PEDIDO")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "CAT_DETALLES_PAQ") Then rkmt.ExecNonQuery($"create table if not exists CAT_DETALLES_PAQ (${getTableColumnList(khdb, "CAT_DETALLES_PAQ")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "CAT_GUNAPROD") Then rkmt.ExecNonQuery($"create table if not exists CAT_GUNAPROD (${getTableColumnList(khdb, "CAT_GUNAPROD")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "CAT_GUNAPROD2") Then rkmt.ExecNonQuery($"create table if not exists CAT_GUNAPROD2 (${getTableColumnList(khdb, "CAT_GUNAPROD2")}, FECHA TEXT)"$)
agregaColumna(rkmt,"CAT_GUNAPROD", "CAT_GP_TIPOPROD2", "TEXT")
agregaColumna(rkmt,"CAT_GUNAPROD", "CAT_GP_PROMOCION", "TEXT")
agregaColumna(rkmt,"CAT_GUNAPROD2", "CAT_GP_TIPOPROD2", "TEXT")
agregaColumna(rkmt,"CAT_GUNAPROD2", "CAT_GP_PROMOCION", "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, "PROMOS_COMP") Then rkmt.ExecNonQuery($"create table if not exists PROMOS_COMP (${getTableColumnList(skmt, "PROMOS_COMP")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "kmt_info") Then rkmt.ExecNonQuery($"create table if not exists kmt_info (${getTableColumnList(khdb, "kmt_info")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "PROMOS_COMP") Then rkmt.ExecNonQuery($"create table if not exists PROMOS_COMP (${getTableColumnList(khdb, "PROMOS_COMP")}, FECHA TEXT)"$)
agregaColumna(rkmt, "PROMOS_COMP", "CAT_PA_PORCENTAJE_PAQUETE", "TEXT")
agregaColumna(rkmt, "PROMOS_COMP", "CAT_PA_PRECIO1", "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)"$)
agregaColumna(rkmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
agregaColumna(rkmt, "kmt_info", "CREDITO", "INTEGER")
If chkIfTableExists(khdb, "CAT_VARIABLES") Then rkmt.ExecNonQuery($"create table if not exists CAT_VARIABLES (${getTableColumnList(khdb, "CAT_VARIABLES")}, FECHA TEXT)"$)
If chkIfTableExists(khdb, "CAT_RMI") Then rkmt.ExecNonQuery($"create table if not exists CAT_RMI (${getTableColumnList(khdb, "CAT_RMI")}, FECHA TEXT)"$)
DateTime.DateFormat = "yyyyMMdd"
fechaHoy = DateTime.Date(DateTime.Now)
If Starter.Logger Then Log("RKMTS: " & rkmt.IsInitialized)
@@ -126,7 +142,7 @@ End Sub
'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")
Dim rs As ResultSet = khdb.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"))
@@ -134,7 +150,7 @@ Sub revisaRkmtAttached As Boolean
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;"$)
khdb.ExecNonQuery($"attach database '${File.Combine(safePath,$"${name(0)}.rkmt.km"$)}' as rkmt1;"$)
rkmtAttached = True
End If
Return rkmtAttached
@@ -157,10 +173,10 @@ Sub RD_respalda_pedido
DateTime.DateFormat = "MM/dd/yyyy"
Private fechaHoy2 As String = DateTime.Date(DateTime.Now)
' Log("Copiando PEDIDO ...")
Private x As Cursor = skmt.ExecQuery("select * from PEDIDO")
Private x As Cursor = khdb.ExecQuery("select * from PEDIDO")
' Log(x.RowCount)
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "PEDIDO")
Private lasCols As String = getTableColumnListName(khdb, "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) = '${fechaHoy2}'"$)
@@ -180,9 +196,9 @@ End Sub
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")
Private x As Cursor = khdb.ExecQuery("select * from CAT_GUNAPROD")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD")
Private lasCols As String = getTableColumnListName(khdb, "CAT_GUNAPROD")
lasCols = lasCols.Replace(", CAT_GP_IMG", "") 'Quitamos la imagen del respaldo.
rkmt.BeginTransaction
rkmt.ExecNonQuery($"delete from CAT_GUNAPROD where FECHA = '${fechaHoy}'"$)
@@ -209,8 +225,8 @@ Sub RD_restaura_cat_gunaprod
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")}'"$)
khdb.ExecNonQuery("delete from CAT_GUNAPROD")
khdb.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")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -227,9 +243,9 @@ End Sub
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")
Private x As Cursor = khdb.ExecQuery("select * from CAT_GUNAPROD2")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_GUNAPROD2")
Private lasCols As String = getTableColumnListName(khdb, "CAT_GUNAPROD2")
lasCols = lasCols.Replace(", CAT_GP_IMG", "") 'Quitamos la fecha del respaldo.
rkmt.BeginTransaction
rkmt.ExecNonQuery($"delete from CAT_GUNAPROD2 where FECHA = '${fechaHoy}'"$)
@@ -255,8 +271,8 @@ Sub RD_restaura_cat_gunaprod2
If c.RowCount > 0 Then
c.Position = 0
LogColor(">>>>> Restauramos GP: " & c.GetString("FECHA"), Colors.red)
skmt.ExecNonQuery("delete from CAT_GUNAPROD2")
skmt.ExecNonQuery($"insert into CAT_GUNAPROD2 (${lasCols}) select ${lasCols} from rkmt1.CAT_GUNAPROD2 where fecha = '${c.GetString("FECHA")}'"$)
khdb.ExecNonQuery("delete from CAT_GUNAPROD2")
khdb.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")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -296,10 +312,12 @@ End Sub
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")
Private x As Cursor = khdb.ExecQuery("select * from CAT_DETALLES_PAQ")
Log(1)
Try
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_DETALLES_PAQ")
Log(2)
Private lasCols As String = getTableColumnListName(khdb, "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"$)
@@ -326,8 +344,8 @@ Sub RD_restaura_cat_detalle_paq
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")}'"$)
khdb.ExecNonQuery("delete from CAT_DETALLES_PAQ")
khdb.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")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -344,9 +362,9 @@ End Sub
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")
Private x As Cursor = khdb.ExecQuery("select * from kmt_info")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "kmt_info")
Private lasCols As String = getTableColumnListName(khdb, "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"$)
@@ -370,15 +388,15 @@ Sub RD_restaura_kmt_info
If c.RowCount > 0 Then
c.Position = 0
' 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("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_PASS"))' Ponemos la contraseña del FIN DIA en "CL"
skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FINDIA_PASS", "CL"))
Starter.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) 'Ponemos la fecha de hoy en CAT_VARIABLES para que nos deje ingresar con el usuario guardado.
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($"insert into kmt_info (${lasCols}) select ${lasCols} from rkmt1.kmt_info where fecha = '${c.GetString("FECHA")}'"$)
khdb.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("DIA_VISITA"))' Ponemos el dia de hoy para visita.
khdb.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("DIA_VISITA", Subs.traeDiaSemana))
khdb.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_FECHA"))' Borramos fecha de FIN DIA.
khdb.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FINDIA_PASS"))' Ponemos la contraseña del FIN DIA en "CL"
khdb.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FINDIA_PASS", "CL"))
khdb.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("FECHA")) 'Ponemos la fecha de hoy en CAT_VARIABLES para que nos deje ingresar con el usuario guardado.
khdb.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("FECHA", fechaHoy))
khdb.ExecNonQuery("delete from kmt_info")
khdb.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")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -395,9 +413,9 @@ End Sub
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")
Private x As Cursor = khdb.ExecQuery("select * from CAT_VARIABLES")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_VARIABLES")
Private lasCols As String = getTableColumnListName(khdb, "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"$)
@@ -421,8 +439,8 @@ Sub RD_restaura_cat_variables
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")}'"$)
khdb.ExecNonQuery("delete from CAT_VARIABLES")
khdb.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
@@ -439,9 +457,9 @@ End Sub
Sub RD_respalda_promos_comp
Private inicio As String = DateTime.Now
' Log("Copiando kmt_info ...")
Private x As Cursor = skmt.ExecQuery("select * from PROMOS_COMP")
Private x As Cursor = khdb.ExecQuery("select * from PROMOS_COMP")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "PROMOS_COMP")
Private lasCols As String = getTableColumnListName(khdb, "PROMOS_COMP")
rkmt.BeginTransaction
rkmt.ExecNonQuery($"delete from PROMOS_COMP where fecha = '${fechaHoy}'"$)
rkmt.ExecNonQuery($"insert into PROMOS_COMP (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.PROMOS_COMP"$)
@@ -465,8 +483,8 @@ Sub RD_restaura_promos_comp
If c.RowCount > 0 Then
c.Position = 0
' Log(c.GetString("FECHA"))
skmt.ExecNonQuery("delete from PROMOS_COMP")
skmt.ExecNonQuery($"insert into PROMOS_COMP (${lasCols}) select ${lasCols} from rkmt1.PROMOS_COMP where fecha = '${c.GetString("FECHA")}'"$)
khdb.ExecNonQuery("delete from PROMOS_COMP")
khdb.ExecNonQuery($"insert into PROMOS_COMP (${lasCols}) select ${lasCols} from rkmt1.PROMOS_COMP where fecha = '${c.GetString("FECHA")}'"$)
Log($"insert into PROMOS_COMP (${lasCols}) select ${lasCols} from rkmt1.PROMOS_COMP where fecha = '${c.GetString("FECHA")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -483,9 +501,9 @@ End Sub
Sub RD_respalda_cat_rmi
Private inicio As String = DateTime.Now
' Log("Copiando cat_rmi ...")
Private x As Cursor = skmt.ExecQuery("select * from CAT_RMI")
Private x As Cursor = khdb.ExecQuery("select * from CAT_RMI")
If x.RowCount > 0 Then
Private lasCols As String = getTableColumnListName(skmt, "CAT_RMI")
Private lasCols As String = getTableColumnListName(khdb, "CAT_RMI")
rkmt.BeginTransaction
rkmt.ExecNonQuery($"delete from CAT_RMI where fecha = '${fechaHoy}'"$)
rkmt.ExecNonQuery($"insert into CAT_RMI (${lasCols}, FECHA) select ${lasCols}, '${fechaHoy}' as FECHA from skmt1.CAT_RMI"$)
@@ -509,8 +527,8 @@ Sub RD_restaura_cat_rmi
If c.RowCount > 0 Then
c.Position = 0
' Log(c.GetString("FECHA"))
skmt.ExecNonQuery("delete from CAT_RMI")
skmt.ExecNonQuery($"insert into CAT_RMI (${lasCols}) select ${lasCols} from rkmt1.CAT_RMI where fecha = '${c.GetString("FECHA")}'"$)
khdb.ExecNonQuery("delete from CAT_RMI")
khdb.ExecNonQuery($"insert into CAT_RMI (${lasCols}) select ${lasCols} from rkmt1.CAT_RMI where fecha = '${c.GetString("FECHA")}'"$)
Log($"insert into CAT_RMI (${lasCols}) select ${lasCols} from rkmt1.CAT_RMI where fecha = '${c.GetString("FECHA")}'"$)
Else
If fechaRestauracion.Length > 0 Then
@@ -598,7 +616,7 @@ End Sub
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})"$)
Private c As Cursor = khdb.ExecQuery($"pragma table_info(${table})"$)
If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1
c.Position = i
@@ -620,7 +638,7 @@ End Sub
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})"$)
Private c As Cursor = khdb.ExecQuery($"pragma table_info(${table})"$)
If c.RowCount > 0 Then
For i = 0 To c.RowCount - 1
c.Position = i
@@ -642,7 +660,7 @@ End Sub
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}'"$)
Private c As Cursor = khdb.ExecQuery($"SELECT name FROM sqlite_master WHERE type='table' AND name='${table}'"$)
If c.RowCount > 0 Then t = True
c.Close
End If