mirror of
https://github.com/KeymonSoft/DBCheck.git
synced 2026-04-17 19:37:09 +00:00
1536 lines
58 KiB
QBasic
1536 lines
58 KiB
QBasic
B4A=true
|
|
Group=Default Group
|
|
ModulesStructureVersion=1
|
|
Type=Class
|
|
Version=9.85
|
|
@EndOfDesignText@
|
|
#Region Shared Files
|
|
'#CustomBuildAction: folders ready, %WINDIR%\System32\Robocopy.exe,"..\..\Shared Files" "..\Files"
|
|
'Ctrl + click to sync files: ide://run?file=%WINDIR%\System32\Robocopy.exe&args=..\..\Shared+Files&args=..\Files&FilesSync=True
|
|
'Ctrl + click to export as zip: ide://run?File=%B4X%\Zipper.jar&Args=Project.zip
|
|
'###########################################################################################################
|
|
'###################### PULL #############################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=git&Args=pull
|
|
'###########################################################################################################
|
|
'###################### PUSH #############################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=github&Args=..\..\
|
|
'###########################################################################################################
|
|
'###################### PUSH TORTOISE GIT #########################################################
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe&Args=TortoiseGitProc&Args=/command:commit&Args=/path:"./../../"&Args=/closeonend:2
|
|
'###########################################################################################################
|
|
#End Region
|
|
|
|
'Faltan:
|
|
' - Venta: Izca, Kelloggs, Profina, (Danvit y Salma no tienen forma de enviar la base de datos)
|
|
' - Reparto: Guna, Intmex, Durakelo, Profina, Marquez, Mazapa, Izca
|
|
|
|
'Reparto:
|
|
'HIST_VENTAS - Son los pedidos que el repartidor tiene que entregar.
|
|
'kmt_info - Cientes.
|
|
'NOVENTA - Cuantos entregados y cuantos no entregados.
|
|
'PAGARES - Pagares Nuevos.
|
|
'ABONOS_P - Pagares pendientes de cobro.
|
|
'ABONOS - Pagos realizados de pagares de ABONOS_P.
|
|
'PEDIDO - Ventas de rechazo (si hubo rechazo y se vendió, ahi aparece).
|
|
'PEDIDO_CLIENTE - Igual que pedido (solo encabezado de la venta).
|
|
'REPARTO -
|
|
|
|
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\
|
|
|
|
Sub Class_Globals
|
|
Dim Root As B4XView
|
|
Dim xui As XUI
|
|
' Dim b_cargar As Button
|
|
Dim b_enviar As Button
|
|
Dim ime As IME
|
|
Dim skmt As SQL
|
|
Dim reqManager, thisReq As DBRequestManager
|
|
Dim cmd As DBCommand
|
|
Dim l_pedidos2 As Label
|
|
Dim l_diasVenta As Label
|
|
Dim l_totalVenta As Label
|
|
Dim l_cantsEnCero As Label
|
|
Dim l_clienteNoNumerico As Label
|
|
Dim cuantos_pedido As String
|
|
' Dim datos_iguales As String
|
|
Dim cuantos_pedidosc As String
|
|
Dim cuantos_noventa As String
|
|
Dim l_ruta2 As Label
|
|
Dim ruta As String = ""
|
|
Dim l_usuario2 As Label
|
|
Dim usuario As String = ""
|
|
Dim l_almacen2 As Label
|
|
Dim almacen As String = ""
|
|
Dim p_progressDialog As Panel
|
|
Dim l_progressDialog As Label
|
|
Dim p_editaRuta As Panel
|
|
Dim p_editaAlmacen As Panel
|
|
Dim b_cargarBD As Button
|
|
Dim p_datos As Panel
|
|
Dim p_principal As Panel
|
|
Dim l_appInfo As Label
|
|
Dim empresa, appVersion As String
|
|
Dim et_nuevaRuta As EditText
|
|
Dim et_nuevoAlmacen As EditText
|
|
Dim p_clientes As Panel
|
|
' Dim lv_clientes As ListView
|
|
Dim clv_clientes As CustomListView
|
|
Dim p_item As Panel
|
|
Dim l_item As Label
|
|
Dim i_engrane As ImageView
|
|
Dim lv_DBRServer As ListView
|
|
Dim et_server As EditText
|
|
Dim B_SERVER As Button
|
|
Dim p_engrane As Panel
|
|
Private sp_empresa As Spinner
|
|
Private p_empresa As Panel
|
|
Private p_editaUsuario As Panel
|
|
Private et_nuevoUsuario As EditText
|
|
Private b_guardaUsuario As Button
|
|
Dim c, d As Cursor
|
|
Dim foto1() As Byte
|
|
Private b_valida As Button
|
|
Private l_version As Label
|
|
Dim p_validacion As Panel
|
|
Dim l_vProds2 As Label
|
|
Dim l_vPedidos2 As Label
|
|
Dim l_vNoVenta2 As Label
|
|
Dim i_progress As B4XGifView
|
|
Dim in As Intent
|
|
Dim intentUsado As Boolean = False
|
|
Dim Guna_Reparto As C_Guna_Reparto
|
|
Dim Intmex_Reparto As C_Intmex_Reparto
|
|
Dim Marquez_Reparto As C_Marquez_Reparto
|
|
Dim Durakelo_Reparto As C_Durakelo_Reparto
|
|
Dim Profina_Reparto As C_Profina_Reparto
|
|
Dim Mazapa_Reparto As C_Mazapa_Reparto
|
|
Dim Intmex As C_Intmex
|
|
Dim Kelloggs As C_Kelloggs
|
|
Dim Izca As C_Izca
|
|
Dim Durakelo As C_Durakelo
|
|
Dim Marquez As C_Marquez
|
|
Dim Mazapa As C_Mazapa
|
|
Dim Profina As C_Profina
|
|
Private l_version0 As Label
|
|
Private b_guardaRutaTodos As Button
|
|
Private b_guardaRuta As Button
|
|
Private p_datos_reparto As Panel
|
|
Dim tipoApp As String
|
|
Private l_ctast As Label
|
|
Private l_porvisitar As Label
|
|
Private Label9 As Label
|
|
Private l_e As Label
|
|
Private l_cuantosc As Label
|
|
Private l_r As Label
|
|
Private l_cuantosn As Label
|
|
Private L_MONTOE As Label
|
|
Private l_rechazo As Label
|
|
Private l_pagarescobrados As Label
|
|
Private l_pagaresnuevos As Label
|
|
Private l_montoaliquidar As Label
|
|
Private l_rutasP As Label
|
|
Private l_rutaRep As Label
|
|
End Sub
|
|
|
|
Public Sub Initialize
|
|
' B4XPages.GetManager.LogEvents = True
|
|
End Sub
|
|
|
|
'This event will be called once, before the page becomes visible.
|
|
Sub B4XPage_Created (Root1 As B4XView)
|
|
Root = Root1
|
|
Root.LoadLayout("MainPage")
|
|
i_progress.SetGif(File.DirAssets, "progress.gif")
|
|
l_version.Text = Application.VersionName
|
|
l_version0.Text = Application.VersionName
|
|
p_principal.Width = Root.Width : p_principal.Height = Root.Height
|
|
l_version0.Top = Root.Height - 60dip
|
|
Subs.centraPanel(p_datos, Root.Width)
|
|
Subs.centraPanel(p_validacion, Root.Width)
|
|
p_validacion.Top = l_diasVenta.Top
|
|
reqManager.Initialize(Me, "http://keymon.net:1781")
|
|
B4XPages.SetTitle(Me, "Revisión de BD")
|
|
Subs.centraPanel(p_progressDialog, Root.Width)
|
|
Subs.centraPanel(p_editaRuta, Root.Width)
|
|
Subs.centraPanel(p_editaAlmacen, Root.Width)
|
|
Subs.centraPanel(p_editaUsuario, Root.Width)
|
|
Subs.centraPanel(p_clientes, Root.Width)
|
|
ime.Initialize("ime")
|
|
lv_DBRServer.AddSingleLine("http://keymon.net:1781")
|
|
' lv_DBRServer.AddSingleLine("http://keymon.net:1782")
|
|
lv_DBRServer.AddSingleLine("http://keymon.net:1782")
|
|
et_server.Text = "http://keymon.net:1781"
|
|
B_SERVER.Left = (Root.Width / 2) - (B_SERVER.Width / 2) 'Centramos B_SERVER
|
|
et_server.Left = (Root.Width / 2) - (et_server.Width / 2) 'Centramos et_server
|
|
lv_DBRServer.Left = (Root.Width / 2) - (lv_DBRServer.Width / 2) 'Centramos lv_DBRServer
|
|
sp_empresa.Add("------------")
|
|
sp_empresa.Add("Durakelo")
|
|
sp_empresa.Add("Guna")
|
|
sp_empresa.Add("Guna_Reparto")
|
|
sp_empresa.Add("Durakelo_Reparto")
|
|
sp_empresa.Add("Intmex")
|
|
sp_empresa.Add("Intmex_Reparto")
|
|
sp_empresa.Add("Mazapa_Reparto")
|
|
sp_empresa.Add("Marquez_Reparto")
|
|
sp_empresa.Add("Profina_Reparto")
|
|
sp_empresa.Add("Izca")
|
|
sp_empresa.Add("Kelloggs")
|
|
sp_empresa.Add("Mariana")
|
|
sp_empresa.Add("Marquez")
|
|
sp_empresa.Add("Mazapa")
|
|
sp_empresa.Add("Profina")
|
|
i_engrane.Left = Root.Width - i_engrane.Width - 5dip
|
|
Intmex.Initialize
|
|
Kelloggs.Initialize
|
|
Guna_Reparto.Initialize
|
|
Intmex_Reparto.Initialize
|
|
Mazapa_Reparto.Initialize
|
|
Marquez_Reparto.Initialize
|
|
Durakelo_Reparto.Initialize
|
|
Profina_Reparto.Initialize
|
|
Izca.Initialize
|
|
Durakelo.Initialize
|
|
Marquez.Initialize
|
|
Mazapa.Initialize
|
|
Profina.Initialize
|
|
End Sub
|
|
|
|
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
|
|
|
Sub B4XPage_Appear
|
|
Log("INICIO")
|
|
If Not(in.IsInitialized) Then in = B4XPages.GetNativeParent(Me).GetStartingIntent
|
|
If Not(intentUsado) And in <> Null Then
|
|
Log(in)
|
|
' Dim action As String = in.Action
|
|
' Log("Action: " & action) ' Ej: "android.intent.action.VIEW"
|
|
' Dim uri As Object = in.GetData ' Obtiene la URI (content://...)
|
|
' Log(in.GetData)
|
|
' If uri <> Null Then
|
|
' Dim uriString As String = uri
|
|
' Log("URI: " & uriString) ' Ej: "content://com.whatsapp.provider.media/..."
|
|
' Else
|
|
' Log("El Intent no tiene URI asociada.")
|
|
' End If
|
|
' Dim mimeType As String = in.GetData
|
|
' Log("MIME Type: " & mimeType) ' Ej: "application/x-sqlite3"
|
|
' If in.HasExtra("android.intent.extra.STREAM") Then
|
|
' Dim extraUri As Object = in.GetExtra("android.intent.extra.STREAM")
|
|
' Log("Extra URI: " & extraUri) ' Ej: "content://..."
|
|
' Else
|
|
' Log("No hay extras con android.intent.extra.STREAM")
|
|
' End If
|
|
intentUsado = True
|
|
' Log(in.GetData)
|
|
If in.GetData <> Null Then
|
|
Dim XmlData As String
|
|
XmlData = in.GetData
|
|
ToastMessageShow(XmlData, False)
|
|
' Send_Make_somthing(in)
|
|
' Activity.Finish
|
|
Try
|
|
Dim OutStr As OutputStream = File.OpenOutput(File.DirInternal,"kmt.db",False)
|
|
Dim InStr As InputStream = File.OpenInput("ContentDir",XmlData)
|
|
File.Copy2(InStr,OutStr)
|
|
LogColor("BD copiada a interna.", Colors.Blue)
|
|
OutStr.Close
|
|
If in.As(String).Contains("whatsapp") Then B4XPages.SetTitle(Me, "BD cargada desde Whatsapp")
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
' ExitApplication
|
|
End If
|
|
End If
|
|
' Log($"Existe BD: ${File.Exists(File.DirInternal, "kmt.db") }"$)
|
|
If File.Exists(File.DirInternal, "kmt.db") Then
|
|
If Not(skmt.IsInitialized) Then skmt.Initialize(File.DirInternal,"kmt.db", True)
|
|
Try
|
|
Dim ai As Cursor = skmt.ExecQuery($"select CAT_VA_DESCRIPCION, CAT_VA_VALOR from cat_variables where CAT_VA_DESCRIPCION = 'APP_NAME' or CAT_VA_DESCRIPCION = 'EMPRESA' or CAT_VA_DESCRIPCION = 'APP_VERSION'"$)
|
|
If ai.RowCount > 1 Then
|
|
For i = 0 To ai.RowCount -1
|
|
ai.Position = i
|
|
If ai.GetString("CAT_VA_DESCRIPCION") = "EMPRESA" Then empresa = ai.GetString("CAT_VA_VALOR")
|
|
If ai.GetString("CAT_VA_DESCRIPCION") = "APP_NAME" Then empresa = ai.GetString("CAT_VA_VALOR")
|
|
If ai.GetString("CAT_VA_DESCRIPCION") = "APP_VERSION" Then appVersion = ai.GetString("CAT_VA_VALOR")
|
|
' Log(ai.GetString("CAT_VA_DESCRIPCION"))
|
|
Next
|
|
l_appInfo.Text = $"${empresa} ${appVersion}"$
|
|
End If
|
|
ai.Close
|
|
Catch
|
|
Log(LastException)
|
|
LogColor("Error en CAT_VARIABLES", Colors.red)
|
|
End Try
|
|
If empresa.ToUpperCase.Contains("REPARTO") Then
|
|
p_datos_reparto.Top = p_datos.Top
|
|
p_datos_reparto.Left = p_datos.Left
|
|
p_datos_reparto.BringToFront
|
|
p_datos_reparto.Visible = True
|
|
tipoApp = "REPARTO"
|
|
Else
|
|
tipoApp = "VENTA"
|
|
p_datos_reparto.Visible = False
|
|
End If
|
|
If tipoApp = "VENTA" Then
|
|
leeInfoVenta
|
|
Else
|
|
p_datos_reparto.Top = p_datos.Top + 20dip
|
|
p_datos_reparto.Left = p_datos.Left
|
|
p_datos_reparto.BringToFront
|
|
p_datos_reparto.Visible = True
|
|
i_engrane.BringToFront
|
|
leeInfoReparto
|
|
End If
|
|
End If
|
|
Try
|
|
usuario = Subs.traeUsuarioDeBD
|
|
almacen = Subs.traeAlmacen
|
|
ruta = Subs.traeRuta
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
' b_enviar.Enabled = False
|
|
|
|
Log(empresa)
|
|
p_empresa.Visible = False
|
|
|
|
If empresa.ToUpperCase.Contains("MARIANA") Then
|
|
b_enviar.Text = "Enviar Mariana"
|
|
b_valida.Text = "Validar Mariana"
|
|
Log("Cargamos MARIANA")
|
|
b_enviar.Enabled = True
|
|
else if empresa.ToUpperCase.Contains("GUNA") Then
|
|
b_enviar.Text = "Enviar Guna"
|
|
b_valida.Text = "Validar Guna"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos GUNA")
|
|
else if empresa.ToUpperCase.Contains("GUNA_REPARTO") Then
|
|
b_enviar.Text = "Enviar Guna_Reparto"
|
|
b_valida.Text = "Validar Guna_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Guna_Reparto")
|
|
else if empresa.ToUpperCase.Contains("INTMEX_REPARTO") Then
|
|
b_enviar.Text = "Enviar Intmex_Reparto"
|
|
b_valida.Text = "Validar Intmex_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Intmex_Reparto")
|
|
else if empresa.ToUpperCase.Contains("MARQUEZ_REPARTO") Then
|
|
b_enviar.Text = "Enviar Marquez_Reparto"
|
|
b_valida.Text = "Validar Marquez_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Marquez_Reparto")
|
|
else if empresa.ToUpperCase.Contains("MAZAPA_REPARTO") Then
|
|
b_enviar.Text = "Enviar Mazapa_Reparto"
|
|
b_valida.Text = "Validar Mazapa_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Mazapa_Reparto")
|
|
else if empresa.ToUpperCase.Contains("DURAKELO_REPARTO") Then
|
|
b_enviar.Text = "Enviar Durakelo_Reparto"
|
|
b_valida.Text = "Validar Durakelo_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Durakelo_Reparto")
|
|
else if empresa.ToUpperCase.Contains("PROFINA_REPARTO") Then
|
|
b_enviar.Text = "Enviar Profina_Reparto"
|
|
b_valida.Text = "Validar Profina_Reparto"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos Profina_Reparto")
|
|
else if empresa.ToUpperCase.Contains("INTMEX") Then
|
|
b_enviar.Text = "Enviar Intmex"
|
|
b_valida.Text = "Validar Intmex"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos INTMEX")
|
|
else if empresa.ToUpperCase.Contains("KELLOGGS") Then
|
|
b_enviar.Text = "Enviar Kelloggs"
|
|
b_valida.Text = "Validar Kelloggs"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos KELLOGGS")
|
|
else if empresa.ToUpperCase.Contains("IZCA") Then
|
|
b_enviar.Text = "Enviar Izca"
|
|
b_valida.Text = "Validar Izca"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos IZCA")
|
|
else if empresa.ToUpperCase.Contains("DURAKELO") Then
|
|
b_enviar.Text = "Enviar Durakelo"
|
|
b_valida.Text = "Validar Durakelo"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos DURAKELO")
|
|
else if empresa.ToUpperCase.Contains("MARQUEZ") Then
|
|
b_enviar.Text = "Enviar Marquez"
|
|
b_valida.Text = "Validar Marquez"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos MARQUEZ")
|
|
else if empresa.ToUpperCase.Contains("MAZAPA") Then
|
|
b_enviar.Text = "Enviar Mazapa"
|
|
b_valida.Text = "Validar Mazapa"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos MAZAPA")
|
|
else if empresa.ToUpperCase.Contains("PROFINA") Then
|
|
b_enviar.Text = "Enviar Profina"
|
|
b_valida.Text = "Validar Profina"
|
|
b_enviar.Enabled = True
|
|
Log("Cargamos PROFINA")
|
|
Else
|
|
p_empresa.Visible = True
|
|
b_enviar.Enabled = False
|
|
End If
|
|
End Sub
|
|
|
|
Sub leeInfoVenta
|
|
Try
|
|
Dim c As Cursor = skmt.ExecQuery($"select count(distinct pe_cliente) as pedidos, group_concat(distinct substr(pe_fecha, 4,2)) as diasVenta, sum(pe_costo_tot) as total, (select PE_CANT from pedido where PE_CANT = 0) as cantsEnCero, (select count(distinct PE_CLIENTE) from pedido where printf("%d", PE_CLIENTE) <> PE_CLIENTE ) as clienteNoNumerico from pedido"$)
|
|
' Log(c.RowCount)
|
|
If c.RowCount > 0 Then
|
|
c.Position = 0
|
|
l_pedidos2.Text = c.GetString("pedidos")
|
|
l_diasVenta.Text = "N/A"
|
|
If c.GetString("diasVenta") <> Null Then l_diasVenta.Text = c.GetString("diasVenta")
|
|
If c.GetString("diasVenta").Length > 2 Then
|
|
l_diasVenta.TextColor = Colors.Red
|
|
Else
|
|
l_diasVenta.TextColor = Colors.Black
|
|
End If
|
|
If c.GetString("total") <> Null Then l_totalVenta.Text = "$" & NumberFormat2(c.GetString("total"), 1, 2, 2, True) Else l_totalVenta.Text = "0"
|
|
l_cantsEnCero.Text = "0"
|
|
If c.GetString("cantsEnCero") <> Null Then l_cantsEnCero.Text = c.GetString("cantsEnCero")
|
|
l_clienteNoNumerico.Text = c.GetString("clienteNoNumerico")
|
|
End If
|
|
c.Close
|
|
Catch
|
|
Log(LastException)
|
|
LogColor("Error en PEDIDO", Colors.red)
|
|
End Try
|
|
Try
|
|
Dim c As Cursor = skmt.ExecQuery("select pe_ruta from pedido")
|
|
If c.RowCount > 0 Then
|
|
c.Position = 0
|
|
ruta = c.GetString("PE_RUTA")
|
|
l_ruta2.Text = ruta
|
|
End If
|
|
c.Close
|
|
Catch
|
|
Log(LastException)
|
|
LogColor("Error en PEDIDO", Colors.red)
|
|
End Try
|
|
Try
|
|
Dim c As Cursor = skmt.ExecQuery("select USUARIO from usuarioa")
|
|
If c.RowCount > 0 Then
|
|
c.Position = 0
|
|
usuario = c.GetString("USUARIO")
|
|
l_usuario2.Text = usuario
|
|
End If
|
|
c.Close
|
|
Catch
|
|
Log(LastException)
|
|
LogColor("Error en USUARIOA", Colors.red)
|
|
End Try
|
|
Try
|
|
Dim c As Cursor = skmt.ExecQuery("select ID_ALMACEN from cat_almacen")
|
|
If c.RowCount > 0 Then
|
|
c.Position = 0
|
|
almacen = c.GetString("ID_ALMACEN")
|
|
l_almacen2.Text = almacen
|
|
End If
|
|
c.Close
|
|
Catch
|
|
Log(LastException)
|
|
LogColor("Error en CAT_ALMACEN", Colors.red)
|
|
End Try
|
|
End Sub
|
|
|
|
Sub leeInfoReparto
|
|
Private rescant As String
|
|
Private totalcantped As String
|
|
Private rescant2 As Double = 0
|
|
Dim f As Cursor = skmt.ExecQuery("select rutaa from rutaa")
|
|
If f.RowCount > 0 Then
|
|
f.Position = 0
|
|
l_rutaRep.Text = f.GetString("RUTAA")
|
|
End If
|
|
f = skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info WHERE CAT_CL_RUTA <> 1000 order by CAT_CL_RUTA")
|
|
l_rutasP.Text = ""
|
|
For i = 0 To f.RowCount - 1
|
|
f.Position = i
|
|
If i = 0 Then
|
|
l_rutasP.Text = f.GetString("CAT_CL_RUTA")
|
|
Else
|
|
l_rutasP.Text = l_rutasP.Text & ", " & f.GetString("CAT_CL_RUTA")
|
|
End If
|
|
Next
|
|
f.Close
|
|
|
|
ActualizarEtiquetasReparto
|
|
End Sub
|
|
|
|
' Esta subrutina calcula y actualiza las etiquetas de totales en la página principal.
|
|
Sub ActualizarEtiquetasReparto
|
|
' --- Declaraciones de variables para cálculos ---
|
|
Private r5 As Cursor
|
|
Private r6 As Cursor
|
|
Private r55 As Cursor
|
|
Private r5r As Cursor
|
|
Private r6r As Cursor
|
|
Private rescant As String = 0
|
|
Private rescant2 As Double = 0
|
|
Private rescant3 As Double = 0
|
|
Private rescant4 As Double = 0
|
|
Private rescant5 As Double = 0
|
|
Private rescant6 As Double = 0
|
|
Private rescant7 As Double = 0
|
|
|
|
Dim b As Cursor = skmt.ExecQuery("Select count(*) as CUANTOS from pedido_cliente")
|
|
b.Position=0
|
|
Private Cuantos As String = b.GetString("CUANTOS")
|
|
Dim d As Cursor = skmt.ExecQuery("select count(distinct(CAT_CL_NOMBRE)) as TOTAL_VISITAR from kmt_info where gestion = 0 AND CAT_CL_RUTA <> 1000")
|
|
D.Position=0
|
|
Dim e As Cursor = skmt.ExecQuery("select COUNT(distinct(CAT_CL_NOMBRE)) as POR_VISITAR from kmt_info WHERE CAT_CL_RUTA <> 1000")
|
|
e.Position=0
|
|
Log(Cuantos)
|
|
If Cuantos = 0 Then
|
|
l_cuantosc.Text = 0
|
|
l_cuantosn.Text = 0
|
|
l_ctast.Text = d.GetString("TOTAL_VISITAR")
|
|
l_porvisitar.Text = e.GetString("POR_VISITAR")
|
|
End If
|
|
b = skmt.ExecQuery("select count(DISTINCT NV_CLIENTE) as CUANTOS from noventa where nv_motivo <> 'ENTREGA' and NV_CLIENTE <> 63403")
|
|
l_cuantosn.Text = 0
|
|
b.Position = 0
|
|
If b.RowCount > 0 Then l_cuantosn.Text = b.GetString("CUANTOS")
|
|
b.Close
|
|
Dim L As Cursor = skmt.ExecQuery("select count(DISTINCT NV_CLIENTE) as CLIENTES_DIA from noventa where nv_motivo = 'ENTREGA' and NV_CLIENTE <> 63403")
|
|
L.Position = 0
|
|
If L.RowCount > 0 Then l_cuantosc.Text = L.GetString("CLIENTES_DIA")
|
|
|
|
' --- Cálculo de l_rechazo y L_MONTOE ---
|
|
|
|
' Cálculo de rescant (Rechazos Cajas=0)
|
|
Try
|
|
r5 = skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' ORDER BY HVD_PROID "$)
|
|
rescant = 0
|
|
If r5.RowCount > 0 Then
|
|
For j4 = 0 To r5.RowCount -1
|
|
r5.Position = j4
|
|
Private r6 As Cursor = skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}' "$)
|
|
Dim totalcantped As String
|
|
If r6.RowCount > 0 Then
|
|
r6.Position = 0
|
|
totalcantped = r6.GetString("PE_CANT")
|
|
Else
|
|
totalcantped = 0
|
|
End If
|
|
Log(r5.GetString("HVD_RECHAZOCANT") &" - "& totalcantped)
|
|
rescant = rescant + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("HVD_CANT")))*((r5.GetString("HVD_RECHAZOCANT") - totalcantped)))
|
|
r6.Close
|
|
Next
|
|
End If
|
|
If rescant = "NaN" Then rescant = 0
|
|
r5.Close
|
|
Catch
|
|
ToastMessageShow("Falta columna HVD_RECHAZO_CANT", False)
|
|
Log(LastException)
|
|
End Try
|
|
|
|
Try
|
|
' Cálculo de rescant2 (Rechazos Cajas=1)
|
|
r5 = skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
|
|
rescant2 = 0
|
|
If r5.RowCount > 0 Then
|
|
For j5 = 0 To r5.RowCount -1
|
|
r5.Position = j5
|
|
Private r6 As Cursor = skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}'"$)
|
|
r6.Position = 0
|
|
rescant2 = rescant2 + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("CANTC")))*((r5.GetString("HVD_RECHAZOCANT") - r6.GetString("PE_CANT"))/Subs.traeConversion(r5.GetString("HVD_PROID"))))
|
|
rescant2 = NumberFormat2(rescant2, 0, 2, 2, False)
|
|
r6.Close
|
|
Next
|
|
End If
|
|
If rescant2 = "NaN" Then rescant2 = 0
|
|
Log(rescant2)
|
|
r5.Close
|
|
Catch
|
|
ToastMessageShow("Falta columna CANTC", False)
|
|
Log(LastException)
|
|
End Try
|
|
|
|
|
|
' Asignación de l_rechazo
|
|
l_rechazo.text = NumberFormat2((rescant + rescant2),0,2,2,False)
|
|
|
|
Try
|
|
' Cálculo de rescant3 (Entregado Cajas=0)
|
|
Private r55 As Cursor = skmt.ExecQuery($"select HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '0' "$)
|
|
rescant3 = 0
|
|
If r55.RowCount > 0 Then
|
|
For r75 = 0 To r55.RowCount -1
|
|
r55.Position = r75
|
|
rescant3 = rescant3 + r55.GetString("HVD_COSTO_TOT")
|
|
rescant3 = NumberFormat2(rescant3, 0, 2, 2, False)
|
|
Next
|
|
End If
|
|
r55.Close
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Falta columna BCAJAS", False)
|
|
End Try
|
|
|
|
Try
|
|
' Cálculo de rescant4 (Entregado Cajas=1)
|
|
r5 = skmt.ExecQuery($"select IFNULL(SUM(HVD_COSTO_TOT),0) AS HVD_COSTO_TOT from HIST_VENTAS where HVD_RECHAZO = '0' and BCAJAS = '1' "$)
|
|
rescant4 = 0
|
|
If r5.RowCount > 0 Then
|
|
r5.Position = 0
|
|
rescant4 = r5.GetString("HVD_COSTO_TOT")
|
|
End If
|
|
Log(rescant4)
|
|
r5.Close
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Falta columna BCAJAS", False)
|
|
End Try
|
|
|
|
|
|
' Cálculo de rescant5 (Venta nueva en PEDIDO)
|
|
r5 = skmt.ExecQuery($"select IFNULL(SUM(PE_COSTO_TOT),0) AS PE_COSTO_TOT from PEDIDO "$)
|
|
rescant5 = 0
|
|
If r5.RowCount > 0 Then
|
|
r5.Position = 0
|
|
rescant5 = r5.GetString("PE_COSTO_TOT")
|
|
End If
|
|
Log(rescant5)
|
|
r5.Close
|
|
|
|
Try
|
|
' Cálculo de rescant6 (Entregado parcial Cajas=0)
|
|
r5 = skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '0' "$)
|
|
rescant6 = 0
|
|
If r5.RowCount > 0 Then
|
|
For j4 = 0 To r5.RowCount -1
|
|
r5.Position = j4
|
|
Private r6 As Cursor = skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}' "$)
|
|
r6.Position = 0
|
|
rescant6 = rescant6 + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("HVD_CANT")))*(r5.GetString("HVD_CANT")- r5.GetString("HVD_RECHAZOCANT")))
|
|
r6.Close
|
|
Next
|
|
End If
|
|
If rescant6 = "NaN" Then rescant6 = 0
|
|
LogColor(rescant6,Colors.Red)
|
|
r5.Close
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Falta columna HVD_CANT", False)
|
|
End Try
|
|
|
|
Try
|
|
' Cálculo de rescant7 (Entregado parcial Cajas=1)
|
|
r5 = skmt.ExecQuery($"select IFNULL(HVD_COSTO_TOT,0) AS HVD_COSTO_TOT, IFNULL(HVD_CANT,0) AS HVD_CANT,IFNULL(CANTC,0) AS CANTC, IFNULL(HVD_RECHAZOCANT,0) AS HVD_RECHAZOCANT, HVD_PROID, HVD_CLIENTE, CONSECUTIVO from HIST_VENTAS where HVD_RECHAZO = '1' and BCAJAS = '1' "$)
|
|
rescant7 = 0
|
|
If r5.RowCount > 0 Then
|
|
For j5 = 0 To r5.RowCount -1
|
|
r5.Position = j5
|
|
Private r6 As Cursor = skmt.ExecQuery($"select IFNULL(SUM(PE_CANT),0) AS PE_CANT from PEDIDO where PE_CLIENTEOR = '${r5.GetString("HVD_CLIENTE")}' AND PE_PROID = '${r5.GetString("HVD_PROID")}' AND CONSECUTIVO = '${r5.GetString("CONSECUTIVO")}'"$)
|
|
r6.Position = 0
|
|
rescant7 = rescant7 + ((r5.GetString("HVD_COSTO_TOT")/(r5.GetString("CANTC")))*((r5.GetString("HVD_CANT") - r5.GetString("HVD_RECHAZOCANT") )/Subs.traeConversion(r5.GetString("HVD_PROID"))))
|
|
r6.Close
|
|
Next
|
|
End If
|
|
If rescant7 = "NaN" Then rescant7 = 0
|
|
Log(rescant7)
|
|
r5.Close
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
|
|
|
|
' Asignación de L_MONTOE (Monto Entregado)
|
|
L_MONTOE.Text = NumberFormat2((rescant3 + rescant4 + rescant5 + rescant6 + rescant7),0,2,2,False)
|
|
Try
|
|
' --- Cálculo de l_pagarescobrados ---
|
|
Dim pagarescobrados As Cursor = skmt.ExecQuery("SELECT IfNull(SUM(a_abono),0) as a_abono FROM ABONOS")
|
|
pagarescobrados.Position = 0
|
|
l_pagarescobrados.Text = NumberFormat2(pagarescobrados.GetDouble("a_abono"),0,2,2,False)
|
|
pagarescobrados.Close
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Falta tabla ABONOS", False)
|
|
End Try
|
|
Try
|
|
' --- Cálculo de l_pagaresnuevos ---
|
|
Dim pagaresnuevos As Cursor = skmt.ExecQuery("SELECT IfNull(SUM(PA_MONTO),0) as PA_MONTO FROM PAGARES")
|
|
pagaresnuevos.Position = 0
|
|
l_pagaresnuevos.Text = NumberFormat2(pagaresnuevos.GetDouble("PA_MONTO"),0,2,2,False)
|
|
pagaresnuevos.Close
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Falta columna PA_MONTO", False)
|
|
End Try
|
|
Try
|
|
' --- Cálculo de l_montoaliquidar ---
|
|
l_montoaliquidar.Text = NumberFormat2((l_pagarescobrados.Text+ L_MONTOE.Text - l_pagaresnuevos.Text),0,2,2,False)
|
|
Catch
|
|
Log(LastException)
|
|
ToastMessageShow("Campo de pagares en blanco", False)
|
|
End Try
|
|
End Sub
|
|
|
|
Sub b_enviar_Click
|
|
Dim resultado = Msgbox2("Se va a enviar la venta de la BD", "AVISO", "Continuar", "Cancelar", "", Null) 'ignore
|
|
If resultado = DialogResponse.POSITIVE Then
|
|
B4XPages.MainPage.l_progressDialog.Text = " Enviando información"
|
|
B4XPages.MainPage.p_progressDialog.Top = l_pedidos2.Top
|
|
B4XPages.MainPage.p_progressDialog.Visible = True
|
|
B4XPages.MainPage.p_progressDialog.BringToFront
|
|
reqManager.reqsList.Initialize 'inicializamos lista de requests.
|
|
If empresa.ToUpperCase.Contains("MARIANA") Then
|
|
envioMariana
|
|
else if empresa.ToUpperCase.Contains("GUNA") Then
|
|
envioGuna
|
|
else if empresa.ToUpperCase.Contains("GUNA_REPARTO") Then
|
|
' envioGuna_Reparto
|
|
Guna_Reparto.ConfigurarYEnviar("http://keymon.net:1782")
|
|
else if empresa.ToUpperCase.Contains("INTMEX_REPARTO") Then
|
|
' envioGuna_Reparto
|
|
Intmex_Reparto.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("MARQUEZ_REPARTO") Then
|
|
' envioGuna_Reparto
|
|
Marquez_Reparto.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("MAZAPA_REPARTO") Then
|
|
' envioGuna_Reparto
|
|
Mazapa_Reparto.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("DURAKELO_REPARTO") Then
|
|
' envioGuna_Reparto
|
|
Durakelo_Reparto.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("INTMEX") Then
|
|
Intmex.ConfigurarYEnviar("http://keymon.net:1781")
|
|
' envioIntmex
|
|
else if empresa.ToUpperCase.Contains("KELLOGGS") Then
|
|
Kelloggs.ConfigurarYEnviar("http://keymon.net:1781")
|
|
' envioKelloggs
|
|
Kelloggs.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("IZCA") Then
|
|
' envioIzca
|
|
Izca.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("DURAKELO") Then
|
|
envioDurakelo
|
|
else if empresa.ToUpperCase.Contains("MARQUEZ") Then
|
|
' envioMarquez
|
|
Marquez.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("MAZAPA") Then
|
|
' envioMazapa
|
|
Mazapa.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("PROFINA") Then
|
|
' envioProfina
|
|
Profina.ConfigurarYEnviar("http://keymon.net:1781")
|
|
else if empresa.ToUpperCase.Contains("PROFINA_REPARTO") Then
|
|
' envioProfina
|
|
Profina_Reparto.ConfigurarYEnviar("http://keymon.net:1781")
|
|
End If
|
|
' Sleep(5000)
|
|
End If
|
|
ToastMessageShow($"Se enviaran los datos, este proceso podria tardar hasta un minuto."$ , True)
|
|
End Sub
|
|
|
|
Sub JobDone(Job As HttpJob)
|
|
Log("JOBDONE MAINPAGE")
|
|
If reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos.
|
|
If reqManager.reqsList.IndexOf(Job.tag) <> -1 Then
|
|
reqManager.reqsList.RemoveAt(reqManager.reqsList.IndexOf(Job.tag))
|
|
LogColor($">>>>>> Quitamos ${Job.tag}"$, Colors.Blue)
|
|
End If
|
|
LogColor(">>>>>> " & reqManager.reqsList.Size & " - " & reqManager.reqsList, Colors.Blue)
|
|
End If
|
|
If Not(Job.Success) Then
|
|
LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red)
|
|
Else 'If Job Success then ...
|
|
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green)
|
|
Dim resultado As DBResult = reqManager.HandleJob(Job)
|
|
|
|
If Job.JobName = "DBRequest" Then
|
|
Dim resultado As DBResult = reqManager.HandleJob(Job)
|
|
|
|
If resultado.Tag.As(String).IndexOf("ins_pedido_") > -1 Then
|
|
Dim cliente As String= resultado.Tag
|
|
Log($"Cliente1:${cliente}"$)
|
|
For Each records() As Object In resultado.Rows
|
|
For Each k As String In resultado.Columns.Keys
|
|
Log(resultado.Tag & ": " & k & ": " & records(resultado.Columns.Get(k)))
|
|
Next
|
|
Next
|
|
End If
|
|
|
|
If resultado.Tag.As(String).IndexOf("hist_encuesta") > -1 Then
|
|
Dim cliente As String= resultado.Tag
|
|
Log($"Cliente1:${cliente}"$)
|
|
For Each records() As Object In resultado.Rows
|
|
For Each k As String In resultado.Columns.Keys
|
|
Log(resultado.Tag & ": " & k & ": " & records(resultado.Columns.Get(k)))
|
|
Next
|
|
Next
|
|
End If
|
|
|
|
If resultado.Tag = "valida_pedido" Then 'query tag
|
|
For Each records() As Object In resultado.Rows
|
|
Dim CUANTOSP As Int = records(resultado.Columns.Get("CUANTOSP"))
|
|
l_vProds2.Text = $"${CUANTOSP}/${cuantos_pedido}"$
|
|
If cuantos_pedido <= CUANTOSP Then
|
|
ToastMessageShow("INFO OK", True)
|
|
Else
|
|
ToastMessageShow($"No se cargo bien la info de pedido.${CRLF}Envíe nuevamente: "$ & CUANTOSP & "/" & cuantos_pedido, True)
|
|
ToastMessageShow("ENVIAR DATOS (K-2)", True)
|
|
Log("No se cargo bien la info de pedido. Envíe nuevamente: " & CUANTOSP & "/" & cuantos_pedido)
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
If resultado.Tag = "valida_pedidoc" Then 'query tag
|
|
For Each records() As Object In resultado.Rows
|
|
Dim CUANTOSC As Int = records(resultado.Columns.Get("CUANTOSC"))
|
|
l_vPedidos2.Text = $"${CUANTOSC}/${cuantos_pedidosc}"$
|
|
If cuantos_pedidosc <= CUANTOSC Then
|
|
Else
|
|
ToastMessageShow($"No se cargo bien la info de pedido_cliente.${CRLF}Envíe nuevamente: "$ & CUANTOSC & "/" & cuantos_pedidosc, True)
|
|
Log("No se cargo bien la info de pedido_cliente. Envíe nuevamente: " & CUANTOSC & "/" & cuantos_pedidosc)
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
If resultado.Tag = "valida_noventa" Then 'query tag
|
|
For Each records() As Object In resultado.Rows
|
|
Dim CUANTOSN As Int = records(resultado.Columns.Get("CUANTOSN"))
|
|
l_vNoVenta2.Text = $"${CUANTOSN}/${cuantos_noventa}"$
|
|
If cuantos_noventa <= CUANTOSN Then
|
|
Else
|
|
ToastMessageShow($"No se cargo bien la info de NoVenta.${CRLF}Envíe nuevamente: "$ & CUANTOSN & "/" & cuantos_noventa, True)
|
|
Log("No se cargo bien la info de NoVenta. Envíe nuevamente:" & CUANTOSN & "/" & cuantos_noventa)
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
If resultado.Tag = "ins_pedido" Then 'query tag
|
|
For Each records() As Object In resultado.Rows
|
|
Next
|
|
Log("5")
|
|
End If
|
|
|
|
If resultado.Tag = "ins_pedido" Then 'query tag
|
|
For Each records() As Object In resultado.Rows
|
|
' PB2.Progress = PB2.Progress + 5
|
|
' S_CP.Text = "SUBIENDO"
|
|
Next
|
|
End If
|
|
End If
|
|
End If
|
|
Log(reqManager.reqsList)
|
|
If reqManager.reqsList.size = 0 Then p_progressDialog.Visible = False
|
|
Job.Release
|
|
End Sub
|
|
|
|
Sub B4XPage_CloseRequest As ResumableSub
|
|
If p_engrane.Visible = True Then
|
|
p_engrane.Visible = False
|
|
Else
|
|
ExitApplication
|
|
End If
|
|
Return False
|
|
End Sub
|
|
|
|
Sub b_cargarBD_Click
|
|
Dim FH As FileHandler
|
|
FH.Initialize
|
|
l_appInfo.Text = ""
|
|
Wait For (FH.Load) Complete (Result As LoadResult) 'Abre un fileManager para seleccionar la base de datos a importar.
|
|
Log("|" & Result.FileName & "|")
|
|
If Result.FileName <> "" And Result.FileName <> Null Then
|
|
p_clientes.Visible = False
|
|
p_editaAlmacen.Visible = False
|
|
p_editaRuta.Visible = False
|
|
File.Copy(Result.Dir, Result.FileName, File.DirInternal, "kmt.db") 'Copia la base de datos seleccionada al directorio interno.
|
|
skmt.Initialize(File.DirInternal,"kmt.db", True) 'Reiniciliza la base de datos con la recien importada.
|
|
|
|
B4XPage_Appear
|
|
|
|
ToastMessageShow("¡BD importada!", False)
|
|
End If
|
|
End Sub
|
|
|
|
Sub l_ruta2_LongClick
|
|
p_editaRuta.Top = l_ruta2.top
|
|
b_guardaRuta.text = $"Cambiar en "${l_ruta2.text}""$
|
|
p_editaRuta.Visible = True
|
|
End Sub
|
|
|
|
Sub l_almacen2_LongClick
|
|
p_editaAlmacen.Top = l_almacen2.top
|
|
p_editaAlmacen.Visible = True
|
|
End Sub
|
|
|
|
Sub l_usuario2_LongClick
|
|
p_editaUsuario.Top = l_usuario2.top
|
|
p_editaUsuario.Visible = True
|
|
Log("xxx")
|
|
End Sub
|
|
|
|
Sub l_clienteNoNumerico_LongClick
|
|
Dim c As Cursor = skmt.ExecQuery($"select distinct pe_cliente as cliente from pedido"$)
|
|
If c.RowCount > 0 Then
|
|
clv_clientes.Clear
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
clv_clientes.Add(CreateListItem(c.GetString("cliente")),i)
|
|
Next
|
|
End If
|
|
p_clientes.Top = l_totalVenta.top
|
|
p_clientes.BringToFront
|
|
p_clientes.Visible = True
|
|
End Sub
|
|
|
|
'Cambiamos la ruta actual por la especificado.
|
|
Sub b_guardaRuta_Click
|
|
Log("Guardamos nueva ruta.")
|
|
If et_nuevaRuta.Text <> "" Then
|
|
skmt.ExecNonQuery($"update PEDIDO set PE_RUTA = '${et_nuevaRuta.Text}' where PE_RUTA = '${ruta}'"$)
|
|
skmt.ExecNonQuery($"update PEDIDO_CLIENTE set PC_RUTA = '${et_nuevaRuta.Text}' where PC_RUTA = '${ruta}'"$)
|
|
skmt.ExecNonQuery($"update kmt_info set CAT_CL_RUTA = '${et_nuevaRuta.Text}' where CAT_CL_RUTA = '${ruta}'"$)
|
|
Try 'Si es Guna, se pone en kmt_info2
|
|
skmt.ExecNonQuery($"update kmt_info2 set CAT_CL_RUTA = '${et_nuevaRuta.Text}' where CAT_CL_RUTA = '${ruta}'"$)
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
l_ruta2.Text = et_nuevaRuta.text
|
|
End If
|
|
p_editaRuta.Visible = False
|
|
End Sub
|
|
|
|
Private Sub b_guardaRutaTodos_Click
|
|
Log("Guardamos nueva ruta.")
|
|
If et_nuevaRuta.Text <> "" Then
|
|
skmt.ExecNonQuery($"update PEDIDO set PE_RUTA = '${et_nuevaRuta.Text}'"$)
|
|
skmt.ExecNonQuery($"update PEDIDO_CLIENTE set PC_RUTA = '${et_nuevaRuta.Text}' where PC_RUTA = '${ruta}'"$)
|
|
skmt.ExecNonQuery($"update kmt_info set CAT_CL_RUTA = '${et_nuevaRuta.Text}' where CAT_CL_RUTA = '${ruta}'"$)
|
|
Try 'Si es Guna, se pone en kmt_info2
|
|
skmt.ExecNonQuery($"update kmt_info2 set CAT_CL_RUTA = '${et_nuevaRuta.Text}' where CAT_CL_RUTA = '${ruta}'"$)
|
|
Catch
|
|
Log(LastException)
|
|
End Try
|
|
l_ruta2.Text = et_nuevaRuta.text
|
|
End If
|
|
p_editaRuta.Visible = False
|
|
End Sub
|
|
|
|
'Cambiamos el almacen actual por el especificado.
|
|
Sub b_guardaAlmacen_Click
|
|
If et_nuevoAlmacen.Text <> "" Then
|
|
skmt.ExecNonQuery($"delete from cat_almacen"$)
|
|
skmt.ExecNonQuery($"insert into cat_almacen (id_almacen) values ('${et_nuevoAlmacen.Text}')"$)
|
|
skmt.ExecNonQuery($"update PEDIDO set PE_CEDIS = '${et_nuevoAlmacen.Text}' where PE_CEDIS = '${l_almacen2.text}'"$)
|
|
skmt.ExecNonQuery($"update PEDIDO_CLIENTE set PC_ALMACEN = '${et_nuevoAlmacen.Text}' where PC_ALMACEN = '${l_almacen2.text}'"$)
|
|
l_almacen2.Text = et_nuevoAlmacen.text
|
|
End If
|
|
p_editaAlmacen.Visible = False
|
|
End Sub
|
|
|
|
'Cambiamos el usuario actual por el especificado.
|
|
Private Sub b_guardaUsuario_Click
|
|
' skmt.ExecNonQuery($"delete from usuarioa"$)
|
|
If et_nuevoUsuario.Text <> "" Then
|
|
skmt.ExecNonQuery($"update usuarioa set usuario = '${et_nuevoUsuario.Text}'"$)
|
|
skmt.ExecNonQuery($"update NOVENTA set NV_USER = '${et_nuevoUsuario.Text}' where NV_USER = '${l_usuario2.text}'"$)
|
|
skmt.ExecNonQuery($"update PEDIDO set PE_USUARIO = '${et_nuevoUsuario.Text}' where PE_USUARIO = '${l_usuario2.text}'"$)
|
|
skmt.ExecNonQuery($"update PEDIDO_CLIENTE set PC_USER = '${et_nuevoUsuario.Text}' where PC_USER = '${l_usuario2.text}'"$)
|
|
l_usuario2.Text = et_nuevoUsuario.text
|
|
End If
|
|
p_editaUsuario.Visible = False
|
|
End Sub
|
|
|
|
Sub p_principal_Click
|
|
p_editaAlmacen.Visible = False
|
|
p_editaRuta.Visible = False
|
|
p_clientes.Visible = False
|
|
p_validacion.Visible = False
|
|
ime.HideKeyboard
|
|
End Sub
|
|
|
|
Sub CreateListItem(mostrar As String) As Panel
|
|
Dim p As B4XView = xui.CreatePanel("")
|
|
p.SetLayoutAnimated(0, 0, 0, 1, 10) 'ignore
|
|
p.LoadLayout("listItem")
|
|
p.Height= 36dip
|
|
p.Width = clv_clientes.GetBase.Width
|
|
p_item.Height = p.Height
|
|
p_item.Width = p.Width
|
|
l_item.Height = p.Height
|
|
l_item.Width = p.Width
|
|
l_item.Text = mostrar
|
|
' cxc.Text = mostrar3
|
|
' Log(p.Width)
|
|
Return p
|
|
End Sub
|
|
|
|
Sub i_engrane_Click
|
|
Subs.panelVisible(p_engrane, 0, 0)
|
|
p_engrane.Width = Root.Width : p_engrane.Height = Root.Height
|
|
End Sub
|
|
|
|
Sub B_SERVER_Click
|
|
p_engrane.Visible = False
|
|
reqManager.Initialize(Me, et_server.text)
|
|
End Sub
|
|
|
|
Sub lv_DBRServer_ItemClick (Position As Int, Value As Object)
|
|
et_server.Text = Value
|
|
reqManager.Initialize(Me, Value)
|
|
End Sub
|
|
|
|
Private Sub lv_empresa_ItemClick (Position As Int, Value As Object)
|
|
empresa = Value
|
|
l_appInfo.Text = $"${empresa}"$
|
|
End Sub
|
|
|
|
Private Sub sp_empresa_ItemClick (Position As Int, Value As Object)
|
|
empresa = Value
|
|
If empresa <> "------------" And empresa <> "" Then
|
|
b_enviar.Enabled = True
|
|
b_valida.Enabled = True
|
|
b_enviar.Text = $"Enviar ${empresa} "$
|
|
b_valida.Text = $"Validar ${empresa} "$
|
|
Else
|
|
b_enviar.Enabled = False
|
|
b_valida.Enabled = False
|
|
End If
|
|
If Value.As(String).ToUpperCase.Contains("REPARTO") Then
|
|
p_datos_reparto.Top = p_datos.Top + 20dip
|
|
p_datos_reparto.Left = p_datos.Left
|
|
p_datos_reparto.BringToFront
|
|
p_datos_reparto.Visible = True
|
|
i_engrane.BringToFront
|
|
leeInfoReparto
|
|
Else
|
|
p_datos_reparto.Visible = False
|
|
leeInfoVenta
|
|
End If
|
|
Log(Value)
|
|
End Sub
|
|
|
|
Sub envioMariana 'ignore
|
|
reqManager.reqsList.Initialize 'inicializamos lista de requests.
|
|
B4XPages.MainPage.skmt.ExecNonQuery2("delete from PEDIDO WHERE PE_PRONOMBRE = ? ", Array As Object("N/A") )
|
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)")
|
|
' PEDIO_CLIENTE
|
|
Dim c As Cursor = B4XPages.MainPage.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_FACTURA FROM PEDIDO_CLIENTE ")
|
|
Dim d As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ")
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount - 1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedidos_MARDS"
|
|
cmd.Parameters = Array As Object(c.GetString("PC_CLIENTE"), c.GetString("PC_FECHA"), c.GetString("PC_USER"), c.GetString("PC_NOART"), c.GetString("PC_MONTO"), c.GetString("PC_LON"), c.GetString("PC_LAT"), almacen, ruta, c.GetString("PC_COSTO_SIN"), c.GetString("PC_FACTURA"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_pedidos_${i}"$)
|
|
Next
|
|
End If
|
|
c.Close
|
|
d.Position=0
|
|
' Dim cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC")
|
|
d.Close
|
|
|
|
' ENVIO DE LOS CODIGOS QR
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" )
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount - 1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_QR_2_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"),C.GetString("CODIGOB"),C.GetString("LON"),C.GetString("LAT"),almacen, ruta)
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_QR_${i}"$)
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA")
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount - 1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_encuesta_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_encuesta_${i}"$)
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
c = B4XPages.MainPage.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 FROM PEDIDO")
|
|
d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount - 1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedido_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"),almacen,C.GetString("PE_COSTO_TOT"),C.GetString("PE_COSTOU"),C.GetString("PE_CANT"),C.GetString("PE_PRONOMBRE"),C.GetString("PE_PROID"),C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_pedido_${i}"$)
|
|
Next
|
|
End If
|
|
c.Close
|
|
d.Position=0
|
|
B4XPages.MainPage.cuantos_pedido = D.GetString("CUANTOS_PEDIDO")
|
|
d.Close
|
|
|
|
' NOVENTA
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON, NV_NOMBRE, NV_DIRECCION FROM NOVENTA")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_noventa_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta,C.GetString("NV_NOMBRE"),C.GetString("NV_DIRECCION"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , $"ins_noventa_${i}"$)
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
d = skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
|
|
d.Position = 0
|
|
Dim cuantos_noventa As String = d.GetString("CUANTOS_NOVENTA")
|
|
d.Close
|
|
|
|
' GEO CERCA
|
|
c = B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_geocerca_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_geocerca")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
' LO DEL LIKE
|
|
c = B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_face_like_MARDS"
|
|
cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_facelike")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
' DROP
|
|
' Dim sDate,sTime As String
|
|
' DateTime.DateFormat = "MM/dd/yyyy"
|
|
' sDate=DateTime.Date(DateTime.Now)
|
|
' sTime=DateTime.Time(DateTime.Now)
|
|
' Dim cmd As DBCommand
|
|
' cmd.Initialize
|
|
' cmd.Name ="insert_drop_MARDS_2"
|
|
' cmd.Parameters = Array As Object(usuario,ruta,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen)
|
|
' reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
End Sub
|
|
|
|
Sub envioGuna_Reparto 'ignore
|
|
Guna_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioIntmex 'ignore
|
|
Intmex.envia
|
|
End Sub
|
|
|
|
Sub envioDurakeloReparto 'ignore
|
|
Durakelo_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioIntmexReparto 'ignore
|
|
Intmex_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioMarquezReparto 'ignore
|
|
Marquez_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioMazapaReparto 'ignore
|
|
Mazapa_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioKelloggs 'ignore
|
|
Kelloggs.envia
|
|
End Sub
|
|
|
|
Sub envioIzca 'ignore
|
|
Izca.envia
|
|
End Sub
|
|
|
|
Sub envioDurakelo 'ignore
|
|
Durakelo.envia
|
|
End Sub
|
|
|
|
Sub envioMarquez 'ignore
|
|
Marquez.envia
|
|
End Sub
|
|
|
|
Sub envioMazapa 'ignore
|
|
Mazapa.envia
|
|
End Sub
|
|
|
|
Sub envioProfina 'ignore
|
|
Profina.envia
|
|
End Sub
|
|
|
|
Sub envioProfinaReparto 'ignore
|
|
Profina_Reparto.envia
|
|
End Sub
|
|
|
|
Sub envioGuna 'ignore
|
|
Private PASO As Int = 1
|
|
reqManager.Initialize(Me, "http://keymon.net:1782")
|
|
reqManager.reqsList.Initialize 'inicializamos lista de requests.
|
|
If PASO = 1 Then
|
|
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where PC_CLIENTE not In (select PE_CLIENTE from pedido)")
|
|
' PEDIO_CLIENTE
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN FROM PEDIDO_CLIENTE ")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedidos_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"), almacen, ruta, C.GetString("PC_COSTO_SIN") )
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedidos")
|
|
Log("ins_pedidos")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ")
|
|
d.Position=0
|
|
Private cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC")
|
|
d.Close
|
|
|
|
' ENVIO DE LOS CODIGOS QR
|
|
'c=skmt.ExecQuery2("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO = ?", Array As String("OK"))
|
|
c=B4XPages.MainPage.skmt.ExecQuery("SELECT CODIGOKMTS, CODIGOB, LAT, LON FROM HIST_CODIGO_BARRAS" )
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount -1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_QR_2_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("CODIGOKMTS"), C.GetString("CODIGOB"), C.GetString("LON"), C.GetString("LAT"), almacen, ruta)
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT CAT_CL_NUM_SERIEFISICO,CAT_CL_CODIGO ,CAT_CL_LONG,CAT_CL_LAT, CAT_CL_FOTO FROM kmt_info where CAT_CL_NUM_SERIEFISICO IS NOT NULL")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
's=skmt.ExecQuery2("SELECT HIST_VI_IMAGEN FROM HIST_VISITAS WHERE HIST_VI_CREDITO =?", Array As String (c.GetString("HIST_VI_CREDITO")))
|
|
's.Position =0
|
|
Private foto1() As Byte = c.GetBlob("CAT_CL_FOTO")
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_QR_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("CAT_CL_NUM_SERIEFISICO"), C.GetString("CAT_CL_CODIGO"), C.GetString("CAT_CL_LONG"), C.GetString("CAT_CL_LAT"), almacen, ruta, foto1)
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_QR")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_encuesta"
|
|
cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
c=B4XPages.MainPage.skmt.ExecQuery2("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 FROM PEDIDO WHERE (PE_RECALCULO = ? or PE_RECALCULO = ? or PE_RECALCULO IS NULL)",Array As String("","null"))
|
|
d=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount -1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedido_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"), almacen, C.GetString("PE_COSTO_TOT"), C.GetString("PE_COSTOU"), C.GetString("PE_CANT"), C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"))
|
|
' Log($"${C.GetString("PE_CEDIS")}, ${almacen}, ${C.GetString("PE_COSTO_TOT")}, ${C.GetString("PE_COSTOU")}, ${C.GetString("PE_CANT")}, C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), ${C.GetString("PE_CLIENTE")},${C.GetString("PE_FECHA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_RUTA")}, C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO")"$)
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido")
|
|
Log("ins_pedido")
|
|
Next
|
|
End If
|
|
c.Close
|
|
d.Position=0
|
|
cuantos_pedido = D.GetString("CUANTOS_PEDIDO")
|
|
d.Close
|
|
|
|
If almacen = "88" Or almacen = "6" Then
|
|
c=B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_RECALCULO,PE_RECALCULOTOT,PE_RECCEDIS,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 FROM PEDIDO WHERE PE_RECALCULO <> ? or PE_RECALCULO <> ? or PE_RECALCULO IS NOT NULL",Array As String("","null"))
|
|
d=B4XPages.MainPage.skmt.ExecQuery($"SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO where PE_RUTA = '${Subs.traeRuta}'"$)
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount -1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedido_GV2_06"
|
|
cmd.Parameters = Array As Object(C.GetString("PE_RECCEDIS"), almacen, C.GetString("PE_RECALCULOTOT"), C.GetString("PE_RECALCULO"), C.GetString("PE_CANT"), C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido")
|
|
Log("ins_pedido")
|
|
Next
|
|
End If
|
|
c.Close
|
|
d.Position=0
|
|
cuantos_pedido = D.GetString("CUANTOS_PEDIDO")
|
|
d.Close
|
|
Else
|
|
c=B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_RECALCULO,PE_RECALCULOTOT,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 FROM PEDIDO WHERE PE_RECALCULO <> ? or PE_RECALCULO <> ? or PE_RECALCULO IS NOT NULL",Array As String("","null"))
|
|
d=B4XPages.MainPage.skmt.ExecQuery($"SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO where PE_RUTA = '${Subs.traeRuta}'"$)
|
|
If c.RowCount>0 Then
|
|
For i=0 To c.RowCount -1
|
|
c.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_pedido_GV2_06"
|
|
cmd.Parameters = Array As Object(C.GetString("PE_CEDIS"), almacen, C.GetString("PE_RECALCULOTOT"), C.GetString("PE_RECALCULO"), C.GetString("PE_CANT"), C.GetString("PE_PRONOMBRE"), C.GetString("PE_PROID"), C.GetString("PE_CLIENTE"),C.GetString("PE_FECHA"),C.GetString("PE_USUARIO"),C.GetString("PE_RUTA"), C.GetString("PE_COSTO_SIN"),C.GetString("PE_DESC"),c.GetString("PE_FOLIO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "ins_pedido")
|
|
Log("ins_pedido")
|
|
Next
|
|
End If
|
|
c.Close
|
|
d.Position=0
|
|
cuantos_pedido = D.GetString("CUANTOS_PEDIDO")
|
|
d.Close
|
|
End If
|
|
|
|
' NOVENTA
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_COMM,NV_LAT,NV_LON FROM NOVENTA")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_noventa_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("NV_CLIENTE"),C.GetString("NV_FECHA"),C.GetString("NV_USER"),C.GetString("NV_MOTIVO"),C.GetString("NV_COMM"),C.GetString("NV_LAT"),C.GetString("NV_LON"), almacen, ruta)
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
|
|
d.Position = 0
|
|
cuantos_noventa = D.GetString("CUANTOS_NOVENTA")
|
|
d.Close
|
|
|
|
' DATOS DE KMTS PARA EL TIPO DE ABARROTE.
|
|
'''CAT_CL_GIRO = ? WHERE CAT_CL_CODIGO = ? And CAT_CL_NOMBRE = ? kmt_info
|
|
c = B4XPages.MainPage.skmt.ExecQuery("Select CAT_CL_GIRO, CAT_CL_CODIGO from kmt_info")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_GIROS_ENC"
|
|
cmd.Parameters = Array As Object(C.GetString("CAT_CL_CODIGO"),C.GetString("CAT_CL_GIRO"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
' GEO CERCA
|
|
c = B4XPages.MainPage.skmt.ExecQuery("Select HGCLIENTE, HGDATE, HGLAT, HGLON from HIST_GEOCERCA")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_geocerca_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("HGCLIENTE"),C.GetString("HGDATE"),C.GetString("HGLAT"),C.GetString("HGLON"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
' LO DEL LIKE
|
|
c = B4XPages.MainPage.skmt.ExecQuery("Select HFCLIENTE, HFALIAS,HFRUTA,HFALMACEN from HIST_FACE")
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_face_like_GV2"
|
|
cmd.Parameters = Array As Object(C.GetString("HFCLIENTE"),C.GetString("HFALIAS"),C.GetString("HFRUTA"),C.GetString("HFALMACEN"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
Next
|
|
End If
|
|
c.Close
|
|
|
|
' DROP
|
|
' t1.Initialize("T1", 30000) ' 1000 = 1 second
|
|
' t1.Enabled = True
|
|
' Dim sDate,sTime As String
|
|
' DateTime.DateFormat = "MM/dd/yyyy"
|
|
' sDate=DateTime.Date(DateTime.Now)
|
|
' sTime=DateTime.Time(DateTime.Now)
|
|
' Dim cmd As DBCommand
|
|
' cmd.Initialize
|
|
' cmd.Name ="insert_drop_GV2_2"
|
|
' cmd.Parameters = Array As Object(usuario,l_ruta.Text,sDate & sTime, l_porvisitar.Text,l_drop.Text,l_efectiva.Text,l_cuantosc.Text,l_cuantosn.Text, L_MONTOD.Text,"ENVIO",almacen)
|
|
' B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "inst_noventa")
|
|
' img2.Visible =True
|
|
' PORCENTAJE = Round(100/ (cuantos_noventa + cuantos_pedido + cuantos_pedidosc + 1))
|
|
' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True)
|
|
End If
|
|
|
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO1")
|
|
If x.RowCount>0 Then
|
|
For i=0 To x.RowCount -1
|
|
x.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_ENCUESTA_MODULO1"
|
|
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO1")
|
|
Next
|
|
End If
|
|
x.Close
|
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6 from ENCUESTA_MODULO2")
|
|
If x.RowCount>0 Then
|
|
For i=0 To x.RowCount -1
|
|
x.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_ENCUESTA_MODULO2"
|
|
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO2")
|
|
Next
|
|
End If
|
|
x.Close
|
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO3")
|
|
If x.RowCount>0 Then
|
|
For i=0 To x.RowCount -1
|
|
x.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_ENCUESTA_MODULO3"
|
|
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO3")
|
|
Next
|
|
End If
|
|
x.Close
|
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8 from ENCUESTA_MODULO4")
|
|
If x.RowCount>0 Then
|
|
For i=0 To x.RowCount -1
|
|
x.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_ENCUESTA_MODULO4"
|
|
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO4")
|
|
Next
|
|
End If
|
|
x.Close
|
|
Private x As Cursor = B4XPages.MainPage.skmt.ExecQuery("Select CLIENTE, ALMACEN, P1, P2, P3, P4, P5, P6, P7, P8, P9 from ENCUESTA_MODULO5")
|
|
If x.RowCount>0 Then
|
|
For i=0 To x.RowCount -1
|
|
x.Position=i
|
|
Dim cmd As DBCommand
|
|
cmd.Initialize
|
|
cmd.Name = "insert_ENCUESTA_MODULO5"
|
|
cmd.Parameters = Array As Object(x.GetString("CLIENTE"), x.GetString("ALMACEN"),x.GetString("P1"), x.GetString("P2"), x.GetString("P3"), x.GetString("P4"), x.GetString("P5"), x.GetString("P6"), x.GetString("P7"), x.GetString("P8"), x.GetString("P9"))
|
|
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "insert_ENCUESTA_MODULO5")
|
|
Next
|
|
End If
|
|
x.Close
|
|
End Sub
|
|
|
|
'Valida la venta contra web.
|
|
'Revisa que la NOVENTA, la cantidad de pedidos y los productos de PEDIDO sean los mismos en web y locales.
|
|
Sub valida(identificador As String)
|
|
Log("Validamos " & identificador)
|
|
If empresa.ToUpperCase.Contains("GUNA") Then
|
|
' reqManager.Initialize(Me, "http://keymon.lat:1782")
|
|
reqManager.Initialize(Me, "http://keymon.net:1782")
|
|
Else
|
|
' reqManager.Initialize(Me, "http://keymon.lat:1781")
|
|
reqManager.Initialize(Me, "http://keymon.net:1781")
|
|
End If
|
|
d = skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM NOVENTA")
|
|
d.Position = 0
|
|
Dim cuantos_noventa As String = d.GetString("CUANTOS_NOVENTA")
|
|
d.Close
|
|
|
|
cmd.Initialize
|
|
cmd.Name = $"select_cuantos_noventa_${identificador}"$
|
|
cmd.Parameters = Array As Object(almacen, ruta)
|
|
reqManager.ExecuteQuery(cmd , 0, "valida_noventa")
|
|
|
|
d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
|
|
d.Position = 0
|
|
cuantos_pedido = D.GetString("CUANTOS_PEDIDO")
|
|
d.Close
|
|
|
|
cmd.Initialize
|
|
cmd.Name = $"select_cuantos_pedido_${identificador}"$
|
|
cmd.Parameters = Array As Object(almacen, ruta)
|
|
reqManager.ExecuteQuery(cmd , 0, "valida_pedido")
|
|
|
|
d = B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDOSC FROM PEDIDO_CLIENTE ")
|
|
d.Position = 0
|
|
Private cuantos_pedidosc As String = D.GetString("CUANTOS_PEDIDOSC")
|
|
d.Close
|
|
|
|
cmd.Initialize
|
|
cmd.Name = $"select_cuantos_pedidoc_${identificador}"$
|
|
cmd.Parameters = Array As Object(almacen, ruta)
|
|
reqManager.ExecuteQuery(cmd , 0, "valida_pedidoc")
|
|
End Sub
|
|
|
|
Private Sub p_empresa_Click
|
|
|
|
End Sub
|
|
|
|
Private Sub b_valida_Click
|
|
l_vPedidos2.Text = ""
|
|
l_vProds2.Text = ""
|
|
l_vNoVenta2.Text = ""
|
|
p_validacion.Visible = True
|
|
If empresa.ToUpperCase.Contains("MARIANA") Then
|
|
valida("MARDS")
|
|
else if empresa.ToUpperCase.Contains("GUNA") Then
|
|
valida("GV2")
|
|
else if empresa.ToUpperCase.Contains("INTMEX") Then
|
|
Intmex.valida
|
|
else if empresa.ToUpperCase.Contains("KELLOGGS") Then
|
|
Kelloggs.valida
|
|
else if empresa.ToUpperCase.Contains("IZCA") Then
|
|
Izca.valida
|
|
else if empresa.ToUpperCase.Contains("MAZAPA") Then
|
|
Mazapa.valida
|
|
else if empresa.ToUpperCase.Contains("DURAKELO") Then
|
|
Durakelo.valida
|
|
else if empresa.ToUpperCase.Contains("MARQUEZ") Then
|
|
Marquez.valida
|
|
else if empresa.ToUpperCase.Contains("PROFINA") Then
|
|
Profina.valida
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub p_engrane_Click
|
|
|
|
End Sub
|
|
|
|
Private Sub p_validacion_Click
|
|
p_validacion.Visible = False
|
|
End Sub
|