mirror of
https://github.com/KeymonSoft/Kelloggs_v4.git
synced 2026-04-20 03:29:14 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 136df88646 | |||
| f0116e375d | |||
| 409c224820 |
@@ -189,6 +189,9 @@ Private Sub B4XPage_Created (Root1 As B4XView)
|
|||||||
kh.agregaColumna(Starter.skmt, "CAT_GUNAPROD2", "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, "TREND_SPENDING", "TIPO", "TEXT")
|
||||||
kh.agregaColumna(Starter.skmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
|
kh.agregaColumna(Starter.skmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
|
||||||
|
kh.agregaColumna(Starter.skmt, "PEDIDO", "PE_ARCH", "TEXT")
|
||||||
|
kh.agregaColumna(Starter.skmt, "PEDIDO_CLIENTE", "PC_ARCH", "TEXT")
|
||||||
|
kh.agregaColumna(Starter.skmt, "PEDIDO3", "PE_ARCH", "TEXT")
|
||||||
Root = Root1
|
Root = Root1
|
||||||
' Root.LoadLayout("MainPage")
|
' Root.LoadLayout("MainPage")
|
||||||
Root.LoadLayout("login")
|
Root.LoadLayout("login")
|
||||||
|
|||||||
@@ -300,6 +300,7 @@ Sub Class_Globals
|
|||||||
Private l_notificacionTexto As Label
|
Private l_notificacionTexto As Label
|
||||||
Private l_notificacionTitulo As Label
|
Private l_notificacionTitulo As Label
|
||||||
Private b_notificacion As Button
|
Private b_notificacion As Button
|
||||||
|
Dim reqManagerW As DBRequestManagerW
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
'You can add more parameters here.
|
'You can add more parameters here.
|
||||||
@@ -416,7 +417,7 @@ Sub B4XPage_Appear
|
|||||||
clienteId = kh.traeCliente
|
clienteId = kh.traeCliente
|
||||||
P_DOE.Visible = False
|
P_DOE.Visible = False
|
||||||
dentroDeGeocerca = False
|
dentroDeGeocerca = False
|
||||||
|
|
||||||
' Log($"TOTAL VENTA: ${kh.traeTotalCliente}"$)
|
' Log($"TOTAL VENTA: ${kh.traeTotalCliente}"$)
|
||||||
B_VENTA.Visible = False
|
B_VENTA.Visible = False
|
||||||
b_noVenta.Visible = False
|
b_noVenta.Visible = False
|
||||||
@@ -426,11 +427,12 @@ Sub B4XPage_Appear
|
|||||||
' Log(Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
|
' Log(Starter.rp.Check("android.permission.BLUETOOTH_CONNECT"))
|
||||||
|
|
||||||
reqManager.Initialize(Me, Starter.DBReqServer)
|
reqManager.Initialize(Me, Starter.DBReqServer)
|
||||||
|
reqManagerW.Initialize
|
||||||
usarGeocerca = kh.traeUsarGeocerca
|
usarGeocerca = kh.traeUsarGeocerca
|
||||||
|
|
||||||
'Para el almacen 12 (GDL) no se usa la geocerca
|
'Para el almacen 12 (GDL) no se usa la geocerca
|
||||||
' If kh.traeAlmacen = 12 Then usarGeocerca = False
|
' If kh.traeAlmacen = 12 Then usarGeocerca = False
|
||||||
|
|
||||||
' Log(Subs.traeUltimaActividadBD)
|
' Log(Subs.traeUltimaActividadBD)
|
||||||
c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP"))
|
c = Starter.skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("MACIMP"))
|
||||||
c.Position = 0
|
c.Position = 0
|
||||||
@@ -499,10 +501,8 @@ Sub B4XPage_Appear
|
|||||||
l_atiende.Text = "N/A"
|
l_atiende.Text = "N/A"
|
||||||
If c.GetString("CAT_CL_ATIENDE1") <> Null And c.GetString("CAT_CL_ATIENDE1") <> "null" Then l_atiende.Text = c.GetString("CAT_CL_ATIENDE1")
|
If c.GetString("CAT_CL_ATIENDE1") <> Null And c.GetString("CAT_CL_ATIENDE1") <> "null" Then l_atiende.Text = c.GetString("CAT_CL_ATIENDE1")
|
||||||
l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2")
|
l_atiende2.Text = c.GetString("CAT_CL_ATIENTE2")
|
||||||
|
|
||||||
l_segmento2.text = "N/A"
|
l_segmento2.text = "N/A"
|
||||||
If c.GetString("CAT_CL_SEGMENTO") <> Null Then l_segmento2.text = c.GetString("CAT_CL_SEGMENTO")
|
If c.GetString("CAT_CL_SEGMENTO") <> Null Then l_segmento2.text = c.GetString("CAT_CL_SEGMENTO")
|
||||||
|
|
||||||
b_inicioFinVenta.Text = "INICIAR VENTA"
|
b_inicioFinVenta.Text = "INICIAR VENTA"
|
||||||
b_inicioFinVenta.BringToFront
|
b_inicioFinVenta.BringToFront
|
||||||
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
|
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
|
||||||
@@ -514,7 +514,7 @@ Sub B4XPage_Appear
|
|||||||
b_inicioFinVenta.Visible = False
|
b_inicioFinVenta.Visible = False
|
||||||
End If
|
End If
|
||||||
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
|
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
|
||||||
|
|
||||||
' LONGITUD = 0
|
' LONGITUD = 0
|
||||||
' If c.GetString("CAT_CL_LONG") <> Null And c.GetString("CAT_CL_LONG") <> "null" And IsNumber(c.GetString("CAT_CL_LONG")) Then LONGITUD = c.GetString("CAT_CL_LONG")
|
' If c.GetString("CAT_CL_LONG") <> Null And c.GetString("CAT_CL_LONG") <> "null" And IsNumber(c.GetString("CAT_CL_LONG")) Then LONGITUD = c.GetString("CAT_CL_LONG")
|
||||||
' LATITUD = 0
|
' LATITUD = 0
|
||||||
@@ -845,6 +845,19 @@ Sub B4XPage_Appear
|
|||||||
p_transparenciaNoti.BringToFront
|
p_transparenciaNoti.BringToFront
|
||||||
End If
|
End If
|
||||||
c.Close
|
c.Close
|
||||||
|
|
||||||
|
' Este codigo es para hacer que el Label de las notificaciones tenga SCROLLVERTICAL.
|
||||||
|
Dim labeljo, scrollerjo As JavaObject
|
||||||
|
labeljo = l_notificacionTexto
|
||||||
|
scrollerjo.InitializeNewInstance("android.text.method.ScrollingMovementMethod", Null)
|
||||||
|
labeljo.RunMethod("setMovementMethod", Array(scrollerjo)) ' Asigna el método de movimiento para permitir scroll
|
||||||
|
labeljo.RunMethod("setHorizontallyScrolling", Array(False)) ' CAMBIO: Para scroll vertical, esto DEBE ser False
|
||||||
|
labeljo.RunMethod("setVerticalScrollBarEnabled", Array(True)) ' Opcional: Forzar a que el scroll sea vertical explícitamente si el contenido es grande
|
||||||
|
' Forzar el scroll al inicio (0,0)
|
||||||
|
Sleep(0)
|
||||||
|
' El primer 0 es la posición X (horizontal), el segundo es la posición Y (vertical)
|
||||||
|
labeljo.RunMethod("scrollTo", Array(0, 0))
|
||||||
|
'Termina codigo de label horzontal
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub Printer1_Connected (Success As Boolean)
|
Sub Printer1_Connected (Success As Boolean)
|
||||||
@@ -1027,7 +1040,7 @@ Sub Guardar_Click
|
|||||||
Starter.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
|
Starter.skmt.ExecNonQuery("delete from NOVENTA where NV_CLIENTE In (select cuenta from cuentaa)")
|
||||||
Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
|
Starter.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE In (select cuenta from cuentaa)")
|
||||||
If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta)
|
If logger Then LogColor($"Insertamos coordenadas en pedido: ${Starter.lon_gps}, ${Starter.lat_gps}"$, Colors.Magenta)
|
||||||
Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?)", Array As Object(clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps))
|
Starter.skmt.ExecNonQuery2("insert into pedido_cliente(PC_RUTA, PC_ALMACEN, PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT) VALUES (?,?,?,?,?,?,?,?,?)", Array As Object(Subs.traeAlmacen, Subs.traeRuta, clie_id, sDate & sTime, usuario, c.GetString("CANT_CLIE"),c.GetString("TOTAL_CLIE"), Starter.lon_gps, Starter.lat_gps))
|
||||||
Log("Actualizamos gestion")
|
Log("Actualizamos gestion")
|
||||||
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
|
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 2 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
|
||||||
End If
|
End If
|
||||||
@@ -1069,6 +1082,8 @@ Sub Guardar_Click
|
|||||||
b_inicioFinVenta.Text = "TERMINAR VENTA"
|
b_inicioFinVenta.Text = "TERMINAR VENTA"
|
||||||
Log("RESPALDO")
|
Log("RESPALDO")
|
||||||
kh.RD_respaldoBatch
|
kh.RD_respaldoBatch
|
||||||
|
|
||||||
|
' Subir_Pedido_Con_Integridad(clie_id)
|
||||||
|
|
||||||
mandaPendientes
|
mandaPendientes
|
||||||
|
|
||||||
@@ -1085,8 +1100,9 @@ Sub Guardar_Click
|
|||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub mandaPendientes
|
Sub mandaPendientes
|
||||||
B4XPages.MainPage.principal.enviaPedido(Null)
|
' B4XPages.MainPage.principal.enviaPedido(Null)
|
||||||
B4XPages.MainPage.principal.enviaPedidoCliente(Null)
|
' B4XPages.MainPage.principal.enviaPedidoCliente(Null)
|
||||||
|
B4XPages.MainPage.principal.enviaPedidoBatch(Null)
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
Sub NUEVO_Click
|
Sub NUEVO_Click
|
||||||
@@ -4472,4 +4488,135 @@ Private Sub b_notificacion_Click
|
|||||||
cmd.Name = "updateHistNotificacionesMotivo"
|
cmd.Name = "updateHistNotificacionesMotivo"
|
||||||
cmd.Parameters = Array As Object("", DateTime.Date(DateTime.Now), Subs.traeRuta, usuario, Subs.traeAlmacen, clienteId)
|
cmd.Parameters = Array As Object("", DateTime.Date(DateTime.Now), Subs.traeRuta, usuario, Subs.traeAlmacen, clienteId)
|
||||||
reqManager.ExecuteCommand(cmd , "updateHistNotificacionesMotivo")
|
reqManager.ExecuteCommand(cmd , "updateHistNotificacionesMotivo")
|
||||||
|
End Sub
|
||||||
|
|
||||||
|
' Subrutina principal para subir pedidos con validación de integridad ARCH
|
||||||
|
' Llama a esto desde tu botón Subir_Click
|
||||||
|
' Devuelve un ResumableSub que puedes esperar con Wait For
|
||||||
|
Sub Subir_Pedido_Con_Integridad(cliente As String) As ResumableSub
|
||||||
|
|
||||||
|
Log("--- Iniciando Envío Seguro para Cliente: " & cliente & " ---")
|
||||||
|
|
||||||
|
' 1. Generar ARCH (Identificador Único del Paquete)
|
||||||
|
Dim Arch As String = Subs.traeAlmacen & "_" & Subs.traeRuta & "_" & cliente & "_" & DateTime.Now
|
||||||
|
|
||||||
|
' 2. Marcar registros pendientes con este ARCH localmente
|
||||||
|
' CORRECCIÓN CRÍTICA: El orden es (Valor_a_Asignar, Filtro) -> (Arch, cliente)
|
||||||
|
Starter.skmt.ExecNonQuery2($"UPDATE PEDIDO SET PE_ARCH = ? WHERE PE_CLIENTE = ? AND PE_ENVIADO = 0"$, Array As Object(Arch, cliente))
|
||||||
|
Starter.skmt.ExecNonQuery2($"UPDATE PEDIDO_CLIENTE SET PC_ARCH = ? WHERE PC_CLIENTE = ? AND PC_ENVIADO = 0"$, Array As Object(Arch, cliente))
|
||||||
|
|
||||||
|
' 3. Contar qué vamos a enviar
|
||||||
|
Dim cCheck As Cursor = Starter.skmt.ExecQuery($"SELECT COUNT(*) as total FROM PEDIDO WHERE PE_ARCH = '${Arch}'"$)
|
||||||
|
cCheck.Position = 0
|
||||||
|
Dim TotalProductosLocal As Int = cCheck.GetInt("total")
|
||||||
|
cCheck.Close
|
||||||
|
|
||||||
|
If TotalProductosLocal = 0 Then
|
||||||
|
Log("Nada pendiente para enviar con este ARCH.")
|
||||||
|
Return "Vacio"
|
||||||
|
End If
|
||||||
|
|
||||||
|
Log($"Total a enviar: ${TotalProductosLocal} productos. ID Paquete: ${Arch}"$)
|
||||||
|
|
||||||
|
Dim envioCorrecto As Boolean = True
|
||||||
|
|
||||||
|
' 4. Enviar Encabezados (PEDIDO_CLIENTE)
|
||||||
|
Log("Enviando encabezado con ARCH: " & Arch)
|
||||||
|
Private cx As Cursor = Starter.skmt.ExecQuery($"SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_ENVIADO, PC_ARCH FROM PEDIDO_CLIENTE WHERE PC_ARCH = '${Arch}'"$)
|
||||||
|
|
||||||
|
If cx.RowCount > 0 Then
|
||||||
|
For i = 0 To cx.RowCount - 1
|
||||||
|
cx.Position = i
|
||||||
|
Dim cmd As DBCommand
|
||||||
|
cmd.Initialize
|
||||||
|
cmd.Name = "insert_pedidos_KELL_arch"
|
||||||
|
|
||||||
|
cmd.Parameters = Array As Object(cx.GetString("PC_CLIENTE"), cx.GetString("PC_FECHA"), cx.GetString("PC_USER"), cx.GetString("PC_NOART"), cx.GetString("PC_MONTO"), cx.GetString("PC_LON"), cx.GetString("PC_LAT"), cx.GetString("PC_ALMACEN"), cx.GetString("PC_RUTA"), cx.GetString("PC_COSTO_SIN"), cx.GetString("PC_ARCH"))
|
||||||
|
Log($"insert_pedidos_KELL_arch: ${cx.GetString("PC_CLIENTE")}, ${cx.GetString("PC_FECHA")}, ${cx.GetString("PC_USER")}, ${cx.GetString("PC_NOART")}, ${cx.GetString("PC_MONTO")}, ${cx.GetString("PC_LON")}, ${cx.GetString("PC_LAT")}, ${cx.GetString("PC_ALMACEN")}, ${cx.GetString("PC_RUTA")}, ${cx.GetString("PC_COSTO_SIN")}, ${cx.GetString("PC_ARCH")}"$)
|
||||||
|
|
||||||
|
reqManagerW.ExecuteCommand(Starter.DBReqServer, cmd, Me, "header_envio")
|
||||||
|
|
||||||
|
Wait For header_envio_Completed (ResultHeader As TResultado)
|
||||||
|
|
||||||
|
If ResultHeader.Success = False Then
|
||||||
|
Log("Error crítico enviando encabezado: " & ResultHeader.ErrorMessage)
|
||||||
|
envioCorrecto = False
|
||||||
|
Exit
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
cx.Close
|
||||||
|
End If
|
||||||
|
|
||||||
|
If envioCorrecto = False Then
|
||||||
|
Msgbox("Error al enviar encabezado del pedido. Intente nuevamente.", "Error de Conexión")
|
||||||
|
Return "Error PC"
|
||||||
|
End If
|
||||||
|
|
||||||
|
' 5. Enviar Detalles (PEDIDO)
|
||||||
|
Log("Enviando detalle con ARCH: " & Arch)
|
||||||
|
Private cPed As Cursor = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO, PE_ARCH FROM PEDIDO WHERE PE_ARCH = '${Arch}'"$)
|
||||||
|
|
||||||
|
If cPed.RowCount > 0 Then
|
||||||
|
For i = 0 To cPed.RowCount - 1
|
||||||
|
cPed.Position = i
|
||||||
|
Dim cmd As DBCommand
|
||||||
|
cmd.Initialize
|
||||||
|
cmd.Name = "insert_pedido_KELL_arch"
|
||||||
|
|
||||||
|
cmd.Parameters = Array As Object(cPed.GetString("PE_CEDIS"), Subs.traeAlmacen, cPed.GetString("PE_COSTO_TOT"), cPed.GetString("PE_COSTOU"), cPed.GetString("PE_CANT"), cPed.GetString("PE_PRONOMBRE"), cPed.GetString("PE_PROID"), cPed.GetString("PE_CLIENTE"), cPed.GetString("PE_FECHA"), cPed.GetString("PE_USUARIO"), cPed.GetString("PE_RUTA"), cPed.GetString("PE_COSTO_SIN"), cPed.GetString("PE_DESC"), cPed.GetString("PE_FOLIO"), cPed.GetString("PE_TIPO"), cPed.GetString("PE_ARCH"))
|
||||||
|
|
||||||
|
reqManagerW.ExecuteCommand(Starter.DBReqServer, cmd, Me, "detalle_envio")
|
||||||
|
|
||||||
|
Wait For detalle_envio_Completed (ResultDet As TResultado)
|
||||||
|
|
||||||
|
If ResultDet.Success = False Then
|
||||||
|
Log("Error enviando producto " & cPed.GetString("PE_PRONOMBRE"))
|
||||||
|
envioCorrecto = False
|
||||||
|
Exit
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
cPed.Close
|
||||||
|
End If
|
||||||
|
|
||||||
|
If envioCorrecto = False Then
|
||||||
|
Return "Error PE"
|
||||||
|
End If
|
||||||
|
|
||||||
|
' 6. VALIDACIÓN FINAL
|
||||||
|
Log("Validando integridad con Oracle...")
|
||||||
|
|
||||||
|
Dim cmdVal As DBCommand
|
||||||
|
cmdVal.Initialize
|
||||||
|
cmdVal.Name = "validar_integridad_arch"
|
||||||
|
cmdVal.Parameters = Array As Object(Arch, TotalProductosLocal)
|
||||||
|
|
||||||
|
reqManagerW.ExecuteQuery(Starter.DBReqServer, cmdVal, Me, "validacion_integridad")
|
||||||
|
Wait For validacion_integridad_Completed (ResultVal As TResultado)
|
||||||
|
|
||||||
|
If ResultVal.Success Then
|
||||||
|
Dim estado As String = ""
|
||||||
|
For Each row() As Object In ResultVal.resultado.Rows
|
||||||
|
estado = row(ResultVal.resultado.Columns.Get("ESTADO"))
|
||||||
|
Next
|
||||||
|
|
||||||
|
If estado = "COMPLETO" Then
|
||||||
|
Log("¡Validación Exitosa! Marcando pedido como enviado.")
|
||||||
|
|
||||||
|
' Marcamos como enviado localmente usando el ARCH
|
||||||
|
Starter.skmt.ExecNonQuery2("UPDATE PEDIDO SET PE_ENVIADO = 1 WHERE PE_ARCH = ?", Array As Object(Arch))
|
||||||
|
Starter.skmt.ExecNonQuery2("UPDATE PEDIDO_CLIENTE SET PC_ENVIADO = 1 WHERE PC_ARCH = ?", Array As Object(Arch))
|
||||||
|
|
||||||
|
ToastMessageShow("Pedido enviado y verificado correctamente", False)
|
||||||
|
Return "Validado OK"
|
||||||
|
Else
|
||||||
|
Log("ERROR DE INTEGRIDAD: El servidor reporta " & estado)
|
||||||
|
Msgbox("El servidor recibió datos incompletos. El pedido NO se marcó como enviado. Por favor intente subir de nuevo.", "Error de Integridad")
|
||||||
|
Return "Error Validacion"
|
||||||
|
End If
|
||||||
|
Else
|
||||||
|
Log("Error al ejecutar query de validación: " & ResultVal.ErrorMessage)
|
||||||
|
Msgbox("No se pudo verificar el pedido por error de red. Intente de nuevo.", "Error de Red")
|
||||||
|
Return "Error Validacion (Red)"
|
||||||
|
End If
|
||||||
|
|
||||||
End Sub
|
End Sub
|
||||||
@@ -1870,6 +1870,19 @@ Sub JobDone(Job As HttpJob)
|
|||||||
PB2.Progress = 100
|
PB2.Progress = 100
|
||||||
S_CP.Text = "VALIDANDO"
|
S_CP.Text = "VALIDANDO"
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If RESULT.Tag.As(String).StartsWith("pedido_completo_") Then 'query tag
|
||||||
|
For Each records() As Object In RESULT.Rows
|
||||||
|
Private temp() As String = Regex.Split("_", RESULT.Tag)
|
||||||
|
' Log(temp(2))
|
||||||
|
If temp.Length > 1 Then
|
||||||
|
Starter.skmt.ExecNonQuery($"update pedido_cliente set pc_enviado = 1 where pc_cliente = '${temp(2)}'"$)
|
||||||
|
Log($"update pedido_cliente set pc_enviado = 1 where pc_cliente = '${temp(2)}'"$)
|
||||||
|
Starter.skmt.ExecNonQuery($"update pedido set pe_enviado = 1 where pe_cliente = '${temp(2)}'"$)
|
||||||
|
Log($"update pedido set pe_enviado = 1 where pe_cliente = '${temp(2)}'"$)
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
|
||||||
If RESULT.Tag = "version" Then 'query tag
|
If RESULT.Tag = "version" Then 'query tag
|
||||||
connecta.TextColor = Colors.White
|
connecta.TextColor = Colors.White
|
||||||
@@ -3270,7 +3283,7 @@ Sub SUBIR_INFO_PEDIDO
|
|||||||
If d.GetString("MONTO") <> Null And d.GetString("MONTO") <> "" Then monto1 = d.GetString("MONTO")
|
If d.GetString("MONTO") <> Null And d.GetString("MONTO") <> "" Then monto1 = d.GetString("MONTO")
|
||||||
Private abordo1 As String = L_ABORDO.Text
|
Private abordo1 As String = L_ABORDO.Text
|
||||||
If abordo1 = "" Then abordo1 = "0"
|
If abordo1 = "" Then abordo1 = "0"
|
||||||
Log($"${monto1}, ${abordo1}"$)
|
' Log($"${monto1}, ${abordo1}"$)
|
||||||
monto1 = monto1 - abordo1
|
monto1 = monto1 - abordo1
|
||||||
|
|
||||||
reqManager.trackInit
|
reqManager.trackInit
|
||||||
@@ -3280,7 +3293,7 @@ Sub SUBIR_INFO_PEDIDO
|
|||||||
cmd.Name ="insert_drop2_KELL"
|
cmd.Name ="insert_drop2_KELL"
|
||||||
cmd.Parameters = Array As Object(usuario, l_ruta.Text, fecha, l_porvisitar.Text, l_drop.Text, l_efectiva.Text, l_cuantosc.Text, l_cuantosn.Text, monto1, "ENVIO", ALMACEN, abordo1)
|
cmd.Parameters = Array As Object(usuario, l_ruta.Text, fecha, l_porvisitar.Text, l_drop.Text, l_efectiva.Text, l_cuantosc.Text, l_cuantosn.Text, monto1, "ENVIO", ALMACEN, abordo1)
|
||||||
reqManager.ExecuteCommand(cmd , "inst_noventa_ins_drop_kell")
|
reqManager.ExecuteCommand(cmd , "inst_noventa_ins_drop_kell")
|
||||||
Log($"${usuario}, ${l_ruta.Text}, ${fecha}, ${l_porvisitar.Text}, ${l_drop.Text}, ${l_efectiva.Text}, ${l_cuantosc.Text}, ${l_cuantosn.Text}, ${monto1}, "ENVIO", ${ALMACEN}, ${abordo1}"$)
|
' Log($"${usuario}, ${l_ruta.Text}, ${fecha}, ${l_porvisitar.Text}, ${l_drop.Text}, ${l_efectiva.Text}, ${l_cuantosc.Text}, ${l_cuantosn.Text}, ${monto1}, "ENVIO", ${ALMACEN}, ${abordo1}"$)
|
||||||
Log("################## inst_noventa_ins_drop_kell")
|
Log("################## inst_noventa_ins_drop_kell")
|
||||||
img2.Visible =True
|
img2.Visible =True
|
||||||
contador_env = contador_env + 1
|
contador_env = contador_env + 1
|
||||||
@@ -3383,7 +3396,7 @@ Sub SUBIR_INFO_PEDIDO
|
|||||||
PB2.Progress = 1
|
PB2.Progress = 1
|
||||||
|
|
||||||
' PEDIO_CLIENTE
|
' PEDIO_CLIENTE
|
||||||
enviaPedidoCliente("Todos")
|
' enviaPedidoCliente("Todos")
|
||||||
|
|
||||||
d = Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ")
|
d = Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ")
|
||||||
d.Position=0
|
d.Position=0
|
||||||
@@ -3395,10 +3408,12 @@ Sub SUBIR_INFO_PEDIDO
|
|||||||
PORENVIAR = 0
|
PORENVIAR = 0
|
||||||
|
|
||||||
' PEDIDO
|
' PEDIDO
|
||||||
t3.Initialize("T3", 500) ' 1000 = 1 second
|
' t3.Initialize("T3", 500) ' 1000 = 1 second
|
||||||
t3.Enabled = True
|
' t3.Enabled = True
|
||||||
Wait For t3_tick
|
' Wait For t3_tick
|
||||||
enviaPedido("Todos")
|
' enviaPedido("Todos")
|
||||||
|
|
||||||
|
enviaPedidoBatch("Todos") ' ****** AQUI VA PEDIDO_CLIENTE Y PEDIDO JUNTOS *****
|
||||||
|
|
||||||
d = Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
|
d = Starter.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
|
||||||
d.Position=0
|
d.Position=0
|
||||||
@@ -3498,6 +3513,72 @@ Sub SUBIR_INFO_PEDIDO
|
|||||||
DateTime.TimeFormat = "HH:mm:ss"
|
DateTime.TimeFormat = "HH:mm:ss"
|
||||||
End Sub
|
End Sub
|
||||||
|
|
||||||
|
Sub enviaPedidoBatch(filtro As String)
|
||||||
|
' Crear una lista para almacenar TODAS las operaciones de UN pedido
|
||||||
|
Dim BatchCommands As List
|
||||||
|
BatchCommands.Initialize
|
||||||
|
|
||||||
|
' DE PEDIDO_CLIENTE
|
||||||
|
Log($"enviaPedidoBatch(${filtro})"$)
|
||||||
|
Private condicion As String = ""
|
||||||
|
If filtro <> "Todos" Then condicion = "where PC_ENVIADO = 0"
|
||||||
|
Private cx As Cursor = Starter.skmt.ExecQuery($"SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_ENVIADO FROM PEDIDO_CLIENTE ${condicion}"$)
|
||||||
|
Log($"SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_ENVIADO FROM PEDIDO_CLIENTE ${condicion}"$)
|
||||||
|
Log("pedido_cliente: " & cx.RowCount)
|
||||||
|
|
||||||
|
' DE PEDIDO
|
||||||
|
Private condicion As String = ""
|
||||||
|
If filtro <> "Todos" Then condicion = "where PE_ENVIADO = 0"
|
||||||
|
c = Starter.skmt.ExecQuery2("SELECT COUNT(*) as CANTIDAD FROM HIST_ENVIOS WHERE HE_TIPO = ?",Array As String("ABORDO") )
|
||||||
|
c.Position = 0
|
||||||
|
If c.GetString("CANTIDAD") > 0 Then
|
||||||
|
Log($"pe_cedis_0"$)
|
||||||
|
Starter.skmt.ExecNonQuery2("update PEDIDO set PE_CEDIS = ? where PE_CLIENTE =? AND PE_FOLIO IS NULL ", Array As Object("RECARGA", "0"))
|
||||||
|
End If
|
||||||
|
Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = rowid where PE_FOLIO = 0 or PE_FOLIO = 1")
|
||||||
|
|
||||||
|
If cx.RowCount > 0 Then ' Si hay pedido entonces lo enviamos.
|
||||||
|
For j = 0 To cx.RowCount - 1
|
||||||
|
Log("===== ENVIAMOS PRODUCTOS DE PEDIDO =====")
|
||||||
|
cx.Position = j
|
||||||
|
Dim Arch As String = Subs.traeAlmacen & "_" & Subs.traeRuta & "_" & cx.GetString("PC_CLIENTE") & "_" & DateTime.Now
|
||||||
|
' 1. Agregar comando del Encabezado (PEDIDO_CLIENTE)
|
||||||
|
Dim cmdHeader As DBCommand
|
||||||
|
cmdHeader.Initialize
|
||||||
|
cmdHeader.Name = "insert_pedidos_KELL_arch"
|
||||||
|
cmdHeader.Parameters = Array As Object(cx.GetString("PC_CLIENTE"),cx.GetString("PC_FECHA"),cx.GetString("PC_USER"),cx.GetString("PC_NOART"),cx.GetString("PC_MONTO"),cx.GetString("PC_LON"),cx.GetString("PC_LAT"),ALMACEN,l_ruta.text,cx.GetString("PC_COSTO_SIN"), Arch)
|
||||||
|
BatchCommands.Add(cmdHeader)
|
||||||
|
|
||||||
|
' 2. Agregar comandos del Detalle (PEDIDO) dentro del bucle
|
||||||
|
Private cPed As Cursor = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO, PE_ARCH FROM PEDIDO ${condicion} ${(IIf(condicion = "","where", "and"))} pe_cliente = '${cx.GetString("PC_CLIENTE")}' "$)
|
||||||
|
' Log($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO, PE_ARCH FROM PEDIDO ${condicion} ${(IIf(condicion = "","where ", "and"))} pe_cliente = '${cx.GetString("PC_CLIENTE")}' "$)
|
||||||
|
If cPed.RowCount > 0 Then
|
||||||
|
For i = 0 To cPed.RowCount - 1
|
||||||
|
Log("==== ENVIAMOS PRODS ====")
|
||||||
|
cPed.Position = i
|
||||||
|
Dim cmdDetail As DBCommand
|
||||||
|
cmdDetail.Initialize
|
||||||
|
If PERFIL = "V-ESPECIAL" Then
|
||||||
|
Log("===== V-ESPECIAL =====")
|
||||||
|
cmd.Name = "insert_pedido_esp_KELL"
|
||||||
|
cmd.Parameters = Array As Object(cPed.GetString("PE_CEDIS"),ALMACEN,cPed.GetString("PE_COSTO_TOT"),cPed.GetString("PE_COSTOU"),cPed.GetString("PE_CANT"),cPed.GetString("PE_PRONOMBRE"),cPed.GetString("PE_PROID"),cPed.GetString("PE_CLIENTE"),cPed.GetString("PE_FECHA"),cPed.GetString("PE_USUARIO"),cPed.GetString("PE_RUTA"),cPed.GetString("PE_COSTO_SIN"),cPed.GetString("PE_DESC"),cPed.GetString("PE_FOLIO"),cPed.GetString("PE_TIPO"),NUMERO_PEDIDO)
|
||||||
|
Else
|
||||||
|
cmdDetail.Name = "insert_pedido_KELL_arch"
|
||||||
|
cmdDetail.Parameters = Array As Object (cPed.GetString("PE_CEDIS"),ALMACEN,cPed.GetString("PE_COSTO_TOT"),cPed.GetString("PE_COSTOU"),cPed.GetString("PE_CANT"),cPed.GetString("PE_PRONOMBRE"),cPed.GetString("PE_PROID"),cPed.GetString("PE_CLIENTE"),cPed.GetString("PE_FECHA"),cPed.GetString("PE_USUARIO"),cPed.GetString("PE_RUTA"), cPed.GetString("PE_COSTO_SIN"),cPed.GetString("PE_DESC"),cPed.GetString("PE_FOLIO"), cPed.GetString("PE_TIPO"), Arch)
|
||||||
|
End If
|
||||||
|
BatchCommands.Add(cmdDetail)
|
||||||
|
Next
|
||||||
|
End If
|
||||||
|
Next
|
||||||
|
|
||||||
|
' 3. Enviar TODO junto en una sola petición HTTP
|
||||||
|
' Si esto falla, no se guarda nada en Oracle y el pedido sigue pendiente en local.
|
||||||
|
reqManager.ExecuteBatch(BatchCommands, "pedido_completo_" & cx.GetString("PC_CLIENTE"))
|
||||||
|
End If
|
||||||
|
c.Close
|
||||||
|
cx.Close
|
||||||
|
End Sub
|
||||||
|
|
||||||
'Envio de la tabla pedido
|
'Envio de la tabla pedido
|
||||||
Sub enviaPedido(filtro As String)
|
Sub enviaPedido(filtro As String)
|
||||||
Log($"enviaPedido(${filtro})"$)
|
Log($"enviaPedido(${filtro})"$)
|
||||||
@@ -3510,11 +3591,11 @@ Sub enviaPedido(filtro As String)
|
|||||||
Starter.skmt.ExecNonQuery2("update PEDIDO set PE_CEDIS = ? where PE_CLIENTE =? AND PE_FOLIO IS NULL ", Array As Object("RECARGA", "0"))
|
Starter.skmt.ExecNonQuery2("update PEDIDO set PE_CEDIS = ? where PE_CLIENTE =? AND PE_FOLIO IS NULL ", Array As Object("RECARGA", "0"))
|
||||||
End If
|
End If
|
||||||
Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = rowid where PE_FOLIO = 0 or PE_FOLIO = 1")
|
Starter.skmt.ExecNonQuery("UPDATE PEDIDO SET PE_FOLIO = rowid where PE_FOLIO = 0 or PE_FOLIO = 1")
|
||||||
|
|
||||||
Log("####################################################")
|
Log("####################################################")
|
||||||
Log(PERFIL)
|
Log(PERFIL)
|
||||||
Log("####################################################")
|
Log("####################################################")
|
||||||
|
|
||||||
If PERFIL = "V-ESPECIAL" Then
|
If PERFIL = "V-ESPECIAL" Then
|
||||||
Log($"pe_cedis_1"$)
|
Log($"pe_cedis_1"$)
|
||||||
c = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion} ORDER BY PE_CLIENTE"$)
|
c = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion} ORDER BY PE_CLIENTE"$)
|
||||||
@@ -3535,7 +3616,7 @@ Sub enviaPedido(filtro As String)
|
|||||||
Else
|
Else
|
||||||
' Log($"pe_cedis_3"$)
|
' Log($"pe_cedis_3"$)
|
||||||
Private cPed As Cursor = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion}"$)
|
Private cPed As Cursor = Starter.skmt.ExecQuery($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion}"$)
|
||||||
Log($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion}"$)
|
' Log($"SELECT PE_CEDIS, PE_COSTO_TOT, PE_COSTOU, PE_CANT, PE_PRONOMBRE, PE_PROID, PE_CLIENTE, PE_FECHA, PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO, PE_TIPO FROM PEDIDO ${condicion}"$)
|
||||||
' TIEMPO = 0
|
' TIEMPO = 0
|
||||||
S_CP.Text = "Envio de Pedidos"
|
S_CP.Text = "Envio de Pedidos"
|
||||||
PB2.Progress = 1
|
PB2.Progress = 1
|
||||||
|
|||||||
@@ -99,6 +99,8 @@ End Sub
|
|||||||
|
|
||||||
'This sub will be called by the DBRequestManager when the job is done
|
'This sub will be called by the DBRequestManager when the job is done
|
||||||
Public Sub JobDone(job As HttpJob)
|
Public Sub JobDone(job As HttpJob)
|
||||||
|
Log("===== JDDBRW =====")
|
||||||
|
LogColor("JobDone: '" & reqManager.HandleJob(job).tag & "' - Registros: " & reqManager.HandleJob(job).Rows.Size, Colors.Green) 'Mod por CHV - 211110
|
||||||
'<<< Obtenemos el Tag único que asignamos al job
|
'<<< Obtenemos el Tag único que asignamos al job
|
||||||
Dim currentJobTag As String = job.Tag
|
Dim currentJobTag As String = job.Tag
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -917,7 +917,7 @@ Version=12.8
|
|||||||
#Region Project Attributes
|
#Region Project Attributes
|
||||||
#ApplicationLabel: Kelloggs Venta
|
#ApplicationLabel: Kelloggs Venta
|
||||||
#VersionCode: 3000
|
#VersionCode: 3000
|
||||||
#VersionName: 5.12.5
|
#VersionName: 5.12.15
|
||||||
#SupportedOrientations: portrait
|
#SupportedOrientations: portrait
|
||||||
#CanInstallToExternalStorage: False
|
#CanInstallToExternalStorage: False
|
||||||
#BridgeLogger:true
|
#BridgeLogger:true
|
||||||
@@ -933,7 +933,6 @@ Version=12.8
|
|||||||
#IncludeTitle: False
|
#IncludeTitle: False
|
||||||
#End Region
|
#End Region
|
||||||
|
|
||||||
|
|
||||||
'222543
|
'222543
|
||||||
|
|
||||||
' Version que estaba en la tabla CAT_VERSION antes -> 2.95
|
' Version que estaba en la tabla CAT_VERSION antes -> 2.95
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ ModuleClosedNodes17=
|
|||||||
ModuleClosedNodes18=
|
ModuleClosedNodes18=
|
||||||
ModuleClosedNodes19=7,8,9,10,11,12,13,14
|
ModuleClosedNodes19=7,8,9,10,11,12,13,14
|
||||||
ModuleClosedNodes2=
|
ModuleClosedNodes2=
|
||||||
ModuleClosedNodes20=
|
ModuleClosedNodes20=3,4
|
||||||
ModuleClosedNodes21=
|
ModuleClosedNodes21=
|
||||||
ModuleClosedNodes22=
|
ModuleClosedNodes22=
|
||||||
ModuleClosedNodes23=
|
ModuleClosedNodes23=
|
||||||
@@ -89,7 +89,7 @@ ModuleClosedNodes26=24,26,31,32,33,35
|
|||||||
ModuleClosedNodes27=
|
ModuleClosedNodes27=
|
||||||
ModuleClosedNodes28=4
|
ModuleClosedNodes28=4
|
||||||
ModuleClosedNodes29=
|
ModuleClosedNodes29=
|
||||||
ModuleClosedNodes3=3
|
ModuleClosedNodes3=
|
||||||
ModuleClosedNodes30=
|
ModuleClosedNodes30=
|
||||||
ModuleClosedNodes31=
|
ModuleClosedNodes31=
|
||||||
ModuleClosedNodes32=116
|
ModuleClosedNodes32=116
|
||||||
@@ -100,6 +100,6 @@ ModuleClosedNodes6=
|
|||||||
ModuleClosedNodes7=
|
ModuleClosedNodes7=
|
||||||
ModuleClosedNodes8=
|
ModuleClosedNodes8=
|
||||||
ModuleClosedNodes9=
|
ModuleClosedNodes9=
|
||||||
NavigationStack=C_Principal,B4XPage_Appear,595,0,Subs,revisaMaxPromosProdsFijosPorInventario,1393,1,Subs,procesaPromocion,1256,1,C_TrendSpending,traeMontoBonificacion,370,1,C_TrendSpending,traeBonificacionesMaximas,363,0,kms_helperSubs,RD_Init,105,0,C_Productos,B4XPage_Appear,235,6,MAPA_RUTAS,CreateBitmapWithNumber,363,0,MAPA_RUTAS,MapFragment1_Ready,223,0,B4XMainPage,B4XPage_Created,128,0
|
NavigationStack=C_Cliente,B4XPage_Appear,841,0,B4XMainPage,Class_Globals,118,0,B4XMainPage,Initialize,126,0,C_Principal,cargar_Click,1031,0,Subs,modTrendSpending,2210,3,C_TrendSpending,modTrendSpending,112,2,C_Productos,B4XPage_Appear,236,0,C_TrendSpending,traeDescXSku,59,0,C_TrendSpending,traeInfoTrendSpending,73,2,C_Principal,JobDone,2240,0
|
||||||
SelectedBuild=0
|
SelectedBuild=0
|
||||||
VisibleModules=31,1,12,3,32,13,14,19,16,26,28
|
VisibleModules=31,1,12,3,32,13,14,20,19,33,16
|
||||||
|
|||||||
@@ -2214,7 +2214,7 @@ Sub modTrendSpending(accion As String, tipo As String, monto As String)
|
|||||||
acumulado = d.GetString("ACUMULADO")
|
acumulado = d.GetString("ACUMULADO")
|
||||||
End If
|
End If
|
||||||
Log("acumulado: " & acumulado & " | monto: " & monto)
|
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}'"$)
|
Private c As Cursor = Starter.skmt.ExecQuery($"select HIST_TSS_TIPO, ifnull(${HIST_TSS_SEMANA},0) as disponible, ifnull(${HIST_TSS_SEMANA_ACUM},0) as acumulado from HIST_TREND_SPENDING_SEMANAL where HIST_TSS_TIPO = '${tipo.ToUpperCase}'"$)
|
||||||
If accion.ToUpperCase = "RESTA" Then
|
If accion.ToUpperCase = "RESTA" Then
|
||||||
If c.RowCount > 0 Then
|
If c.RowCount > 0 Then
|
||||||
c.Position = 0
|
c.Position = 0
|
||||||
|
|||||||
@@ -101,6 +101,8 @@ Sub RD_Init
|
|||||||
agregaColumna(rkmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
|
agregaColumna(rkmt, "CAT_DETALLES_PAQ", "CAT_DP_PRECIOB", "TEXT")
|
||||||
agregaColumna(rkmt, "kmt_info", "CREDITO", "INTEGER")
|
agregaColumna(rkmt, "kmt_info", "CREDITO", "INTEGER")
|
||||||
agregaColumna(rkmt, "PEDIDO", "PE_ENVIADO", "INTEGER")
|
agregaColumna(rkmt, "PEDIDO", "PE_ENVIADO", "INTEGER")
|
||||||
|
agregaColumna(rkmt, "PEDIDO", "PE_ARCH", "TEXT")
|
||||||
|
agregaColumna(rkmt, "PEDIDO_CLIENTE", "PC_ARCH", "TEXT")
|
||||||
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_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)"$)
|
If chkIfTableExists(khdb, "CAT_RMI") Then rkmt.ExecNonQuery($"create table if not exists CAT_RMI (${getTableColumnList(khdb, "CAT_RMI")}, FECHA TEXT)"$)
|
||||||
DateTime.DateFormat = "yyyyMMdd"
|
DateTime.DateFormat = "yyyyMMdd"
|
||||||
|
|||||||
@@ -82,11 +82,12 @@ Sub traeInfoTrendSpending As Map
|
|||||||
End If
|
End If
|
||||||
If semana > 0 Then
|
If semana > 0 Then
|
||||||
c = tsdb.ExecQuery($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, ifnull(HIST_TSS_SEMANA${semana}_ACUM,0) as HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
|
c = tsdb.ExecQuery($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, ifnull(HIST_TSS_SEMANA${semana}_ACUM,0) as HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
|
||||||
' Log($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, ifnull(HIST_TSS_SEMANA${semana}_ACUM,0) as HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
|
Log($"select HIST_TSS_TIPO, HIST_TSS_SEMANA${semana}, ifnull(HIST_TSS_SEMANA${semana}_ACUM,0) as HIST_TSS_SEMANA${semana}_ACUM from HIST_TREND_SPENDING_SEMANAL"$)
|
||||||
If c.RowCount > 0 Then
|
If c.RowCount > 0 Then
|
||||||
For i = 0 To c.RowCount - 1
|
For i = 0 To c.RowCount - 1
|
||||||
c.Position = i
|
c.Position = i
|
||||||
HIST_TSS_SEMANA = c.GetString($"HIST_TSS_SEMANA${semana}"$)
|
HIST_TSS_SEMANA = c.GetString($"HIST_TSS_SEMANA${semana}"$)
|
||||||
|
If Not(IsNumber(HIST_TSS_SEMANA)) Then HIST_TSS_SEMANA = 0
|
||||||
Private xx As String = c.GetString($"HIST_TSS_SEMANA${semana}_ACUM"$)
|
Private xx As String = c.GetString($"HIST_TSS_SEMANA${semana}_ACUM"$)
|
||||||
If xx = "null" Then xx = 0
|
If xx = "null" Then xx = 0
|
||||||
HIST_TSS_SEMANA_ACUM = xx
|
HIST_TSS_SEMANA_ACUM = xx
|
||||||
@@ -124,7 +125,7 @@ Sub modTrendSpending(accion As String, tipo As String, monto As String)
|
|||||||
acumulado = d.GetString("ACUMULADO")
|
acumulado = d.GetString("ACUMULADO")
|
||||||
End If
|
End If
|
||||||
Log("acumulado:" & acumulado & " | monto: " & monto)
|
Log("acumulado:" & acumulado & " | monto: " & monto)
|
||||||
Private c As Cursor = tsdb.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}'"$)
|
Private c As Cursor = tsdb.ExecQuery($"select HIST_TSS_TIPO, ifnull(${HIST_TSS_SEMANA},0) as disponible, ifnull(${HIST_TSS_SEMANA_ACUM},0) as acumulado from HIST_TREND_SPENDING_SEMANAL where HIST_TSS_TIPO = '${tipo.ToUpperCase}'"$)
|
||||||
' Log(($"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}'"$))
|
' Log(($"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}'"$))
|
||||||
Log("---- " & c.RowCount)
|
Log("---- " & c.RowCount)
|
||||||
If accion.ToUpperCase = "RESTA" Then
|
If accion.ToUpperCase = "RESTA" Then
|
||||||
|
|||||||
Reference in New Issue
Block a user