10 Commits

Author SHA1 Message Date
a7c890a612 - VERSION 5.10.03
- Se cambio com ose enviaban las imagenes, antes blob, ahora solo nombre.
- Se agregaron 2 columnas a FOTOINICIAL para poner el nombre de las fotos.
2025-10-09 17:22:41 -06:00
b4010f2d7b - VERSION 5.10.02
- Se agregó el dia 2 para la frecuencia, si un hoy es p. ej. viernes, y un cliente tiene dia de visita 1 lunes y dia de visita 2 viernes, tambien va a aparecer en los clientes.
2025-10-03 19:19:38 -06:00
2c252b2373 - VERSION 5.09.04
- Se agregaron varios motivos de NoVenta.
2025-09-17 21:35:51 -06:00
003e50a6b1 - VERSION 5.09.03
- Se corrigieron textos.
- Se corrigio que a veces mandaba coordenadas en blanco a la bitacora, ahora nos aseguramos de siempre tener las coordenadas disponibles
2025-09-17 13:11:23 -06:00
a73c9d4290 - VERSION 5.09.02
- Se cambio que cuando a una No Venta se le hace venta, en PESOS se sobreescriba y viceversa.
2025-09-11 18:45:04 -06:00
966ed2357b - VERSION 5.09.01
- Cambios en starter para el mandaPendientes
2025-09-11 13:22:56 -06:00
8f0cf7c227 - VERSION 5.08.31
- Habilitar el mandaPendientes.
- Cuando se hace la venta a través del mapa, no la pone como "venta" o algo así.
- En clientes, quitar el mensaje de "Crédito" y "CxC".
- En resumen Día, cambiar el texto de "Total peso" por "Total kilos".
- En TicketsDia, quitar Cantidad, solo dejar el subtotal y quitarle el signo de pesos.
- En TicketsDia, hacer mas altos los renglones.
- En clientes, quitar el ID de la tienda, dejar solo el nombre.
- En el mapa, también quitar el ID del cliente, dejar solo el nombre. (No se puede!! 🤷🏽‍♂️)
- En TicketsDia, alargar la lista para que ocupe TODA la pantalla.
- En TicketsDia, también quitar el ID, solo dejar Nombre y Subtotal y el subtotal SIN signo de pesos.
2025-09-11 12:51:10 -06:00
jaguerrau
8dcc87eb67 Add files via upload 2025-09-01 14:17:41 -06:00
670a875efa - VERSION 5.08.31
- Se modificó el codigo de MAPA_RUTAS para que muestre bien los marcadores
2025-09-01 13:56:47 -06:00
2a64f8cb6e - VERSION 5.08.29
- Se limpió la pantalla de "Resumen Dia".
- Se revisó que se envien bien los datos de la ubicacion en tiempo real a CAT_RUTAS
2025-08-29 17:24:04 -06:00
19 changed files with 774 additions and 430 deletions

View File

@@ -1121,7 +1121,7 @@ Version=12.8
#Region Project Attributes #Region Project Attributes
#ApplicationLabel: ADM #ApplicationLabel: ADM
#VersionCode: 1 #VersionCode: 1
#VersionName: 5.08.28 #VersionName: 5.10.03
'SupportedOrientations possible values: unspecified, landscape or portrait. 'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait #SupportedOrientations: portrait
#CanInstallToExternalStorage: False #CanInstallToExternalStorage: False

View File

@@ -75,8 +75,8 @@ ModuleClosedNodes15=
ModuleClosedNodes16= ModuleClosedNodes16=
ModuleClosedNodes17= ModuleClosedNodes17=
ModuleClosedNodes18= ModuleClosedNodes18=
ModuleClosedNodes19=15,18,19,21,22 ModuleClosedNodes19=
ModuleClosedNodes2= ModuleClosedNodes2=33
ModuleClosedNodes20= ModuleClosedNodes20=
ModuleClosedNodes21= ModuleClosedNodes21=
ModuleClosedNodes22= ModuleClosedNodes22=
@@ -84,19 +84,19 @@ ModuleClosedNodes23=
ModuleClosedNodes24= ModuleClosedNodes24=
ModuleClosedNodes25= ModuleClosedNodes25=
ModuleClosedNodes26= ModuleClosedNodes26=
ModuleClosedNodes27=3,4,8,9,10,11,12,13,14,15,16,17,18,20,21,24,25,27,28 ModuleClosedNodes27=
ModuleClosedNodes28= ModuleClosedNodes28=
ModuleClosedNodes29= ModuleClosedNodes29=
ModuleClosedNodes3= ModuleClosedNodes3=
ModuleClosedNodes30= ModuleClosedNodes30=2,4,5,6,7,8
ModuleClosedNodes31= ModuleClosedNodes31=
ModuleClosedNodes32=15,16,17,18,19 ModuleClosedNodes32=15,16,17,18,19
ModuleClosedNodes4= ModuleClosedNodes4=
ModuleClosedNodes5= ModuleClosedNodes5=1,3
ModuleClosedNodes6=4,6,7,8,9,10,11,12,13,15,19,21 ModuleClosedNodes6=3,29,30
ModuleClosedNodes7= ModuleClosedNodes7=
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= ModuleClosedNodes9=
NavigationStack=C_TicketsDia,b_guardaNoVenta_Click,278,0,C_TicketsDia,b_cancelaNoVenta_Click,282,0,C_Clientes,b_inicioVenta_Click,570,0,C_Clientes,b_guardaNoVenta_Click,671,0,Diseñador Visual,ticketsdia.bal,-100,5,C_TicketsDia,Class_Globals,19,0,C_TicketsDia,b_noventa0_Click,195,0,C_Clientes,b_noVenta_Click,666,6,C_TicketsDia,b_noVenta_Click,303,0,MAPA_RUTAS,b_noVenta_Click,512,0 NavigationStack=MAPA_RUTAS,OnInfoWindowClickListener1_click,367,0,MAPA_RUTAS,Camera1_PictureTaken,723,0,Subs,dameUsuarioDeDB,657,0,Subs,traeAlmacen,668,5,C_Clientes,b_inicioVenta_Click,614,0,Subs,bitacora,1631,0,C_Cliente,Camera1_PictureTaken,2855,0,C_Principal,b_subir_Click,832,6,Starter,mandaForma,249,0,B4XMainPage,B4XPage_Created,179,3
SelectedBuild=0 SelectedBuild=0
VisibleModules=30,2,14,5,6,19,31,27,18 VisibleModules=30,2,14,5,6,19,31,27,32,21

View File

@@ -22,16 +22,11 @@ Version=9.85
'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\ 'Ctrl + click ide://run?file=%WINDIR%\System32\cmd.exe&Args=/c&Args=github&Args=..\..\
' ################################################################### ' ###################################################################
' ################## Pendientes ################## ' ################## Pendientes ##################
' ################################################################### ' ###################################################################
' '
' Bitacora de ubicacioes (como FLP2)
' MotivoNoVisita (como kelloggs cuando tienen un accidente y ya no van a terimnar la ruta) ' MotivoNoVisita (como kelloggs cuando tienen un accidente y ya no van a terimnar la ruta)
' validar que no se meta el peso en blanco (truena la aplicacion)
' si se queda la venta iniciada y se sale de la app, que al iniciar se vaya DIRECTAMENTE A CLIENTE con la venta ya iniciada.
' Cuando guarden el peso, que se vaya directamente a mostrar el boton de terminar venta.
Sub Class_Globals Sub Class_Globals
Dim c2 As Cursor Dim c2 As Cursor
@@ -195,7 +190,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS HIST_SUPERVISOR") Starter.skmt.ExecNonQuery("DROP TABLE IF EXISTS HIST_SUPERVISOR")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CLIENTES_NUEVOS(CN_ID TEXT, CN_FECHA TEXT, CN_USER TEXT, CN_LAT TEXT, CN_LON TEXT, CN_NOMBRE TEXT, CN_DIRECCION TEXT, CN_FOTO TEXT, CN_ALMACEN TEXT, CN_RUTA TEXT,CN_GIRO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CLIENTES_NUEVOS(CN_ID TEXT, CN_FECHA TEXT, CN_USER TEXT, CN_LAT TEXT, CN_LON TEXT, CN_NOMBRE TEXT, CN_DIRECCION TEXT, CN_FOTO TEXT, CN_ALMACEN TEXT, CN_RUTA TEXT,CN_GIRO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTAA (RUTAA TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTAA (RUTAA TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS FOTOINICIAL (RUTAA TEXT, ALMACEN TEXT, LATITUD TEXT, LONGITUD TEXT, FECHAHORA TEXT, FOTO BLOB, FOTO2 BLOB, USUARIO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS FOTOINICIAL (RUTAA TEXT, ALMACEN TEXT, LATITUD TEXT, LONGITUD TEXT, FECHAHORA TEXT, FOTO BLOB, FOTO2 BLOB, FOTO_NOM TEXT, FOTO_NOM2 TEXT, USUARIO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CUOTAS (HC_META6 TEXT, HC_META5 TEXT, HC_META4 TEXT, HC_META3 TEXT, HC_META2 TEXT, HC_META1 TEXT, HC_RUTA TEXT, HC_CUOTA1 TEXT, HC_CUOTA2 TEXT, HC_CUOTA3 TEXT, HC_CUOTA4 TEXT, HC_CUOTA5 TEXT, HC_CUOTA6 TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CUOTAS (HC_META6 TEXT, HC_META5 TEXT, HC_META4 TEXT, HC_META3 TEXT, HC_META2 TEXT, HC_META1 TEXT, HC_RUTA TEXT, HC_CUOTA1 TEXT, HC_CUOTA2 TEXT, HC_CUOTA3 TEXT, HC_CUOTA4 TEXT, HC_CUOTA5 TEXT, HC_CUOTA6 TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_GPS (HGDATE TEXT, HGLAT TEXT, HGLON TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_GPS (HGDATE TEXT, HGLAT TEXT, HGLON TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GIRO(GIRO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GIRO(GIRO TEXT)")
@@ -716,7 +711,7 @@ Sub JobDone(Job As HttpJob)
p_validacion.Visible = False p_validacion.Visible = False
et_codigo.Text = "" et_codigo.Text = ""
If recarga = "0" Then If recarga = "0" Then
Subs.panelVisible(P_CIEGO,0,0) Subs.panelVisible(p_ciego,0,0)
Else If recarga = "1" Then Else If recarga = "1" Then
Starter.skmt.ExecNonQuery("delete from CUENTAA") Starter.skmt.ExecNonQuery("delete from CUENTAA")
Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("1")) Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("1"))
@@ -1332,3 +1327,7 @@ End Sub
Private Sub p_add_monto_Click Private Sub p_add_monto_Click
End Sub End Sub
Private Sub ImageView1_LongClick
Starter.mandaForma(1,1,123, "1759862644988_10_cerrado.jpg")
End Sub

View File

@@ -4,10 +4,6 @@ ModulesStructureVersion=1
Type=Class Type=Class
Version=11.5 Version=11.5
@EndOfDesignText@ @EndOfDesignText@
Sub MODS 'ignore
'V3.04.10 - Se agregó código para el registro de abonos, en B4XMainPage se genera la tabla y aquí se agregó el panel p_abonos para ralizar el abono, y el codigo en el sub "mandaPendientes" para cambiar la bandera de enviado en el abono.
End Sub
Sub Class_Globals Sub Class_Globals
Private Root As B4XView 'ignore Private Root As B4XView 'ignore
Private xui As XUI 'ignore Private xui As XUI 'ignore
@@ -318,7 +314,7 @@ Sub B4XPage_Appear
Subs.centraPanel(p_abono, Root.Width) Subs.centraPanel(p_abono, Root.Width)
Subs.centraPanel(p_credito, Root.Width) Subs.centraPanel(p_credito, Root.Width)
skmt.Initialize(ruta,"kmt.db", True) skmt.Initialize(ruta,"kmt.db", True)
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa) UNION ALL select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info2 where CAT_CL_CODIGO In (Select cuenta from cuentaa)") c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa) UNION ALL select CAT_CL_CODIGO,CAT_CL_RUTA,CAT_CL_NOMBRE,CAT_CL_ATIENDE1,CAT_CL_ATIENTE2,CAT_CL_TELEFONO,CAT_CL_EMAIL,CAT_CL_CALLE,CAT_CL_NOEXT,CAT_CL_NOINT,CAT_CL_CALLE1,CAT_CL_CALLE2,CAT_CL_COLONIA,CAT_CL_MUNI,CAT_CL_EDO,CAT_CL_CP,CAT_CL_LONG,CAT_CL_LAT,CAT_CL_MTOCOMPRA,CAT_CL_NUM_SERIEFISICO from kmt_info2 where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
s=B4XPages.MainPage.skmt.ExecQuery("Select ifnull(SUM(PE_COSTO_TOT),0) As TOTAL_CLIE, SUM(PE_CANT) As CANT_CLIE, PC_FACTURA FROM PEDIDO_CLIENTE INNER JOIN PEDIDO ON PEDIDO_CLIENTE.PC_CLIENTE = PEDIDO.PE_CLIENTE WHERE (PE_CLIENTE IN (Select cuenta from cuentaa))") s=B4XPages.MainPage.skmt.ExecQuery("Select ifnull(SUM(PE_COSTO_TOT),0) As TOTAL_CLIE, SUM(PE_CANT) As CANT_CLIE, PC_FACTURA FROM PEDIDO_CLIENTE INNER JOIN PEDIDO ON PEDIDO_CLIENTE.PC_CLIENTE = PEDIDO.PE_CLIENTE WHERE (PE_CLIENTE IN (Select cuenta from cuentaa))")
b = B4XPages.MainPage.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa)") b = B4XPages.MainPage.skmt.ExecQuery("select COUNT(*) AS CLIENTE FROM ABONOSP WHERE CLIENTE IN (Select CUENTA from cuentaa)")
b.Position = 0 b.Position = 0
@@ -845,7 +841,7 @@ Sub GuardaVenta2
' LogColor($"actualizamos "${la_cuenta.text}, hora_final=${DateTime.now}"$,Colors.Red) ' LogColor($"actualizamos "${la_cuenta.text}, hora_final=${DateTime.now}"$,Colors.Red)
Subs.actualizaTET(la_cuenta.text) Subs.actualizaTET(la_cuenta.text)
DateTime.TimeFormat = "HH:mm:ss" DateTime.TimeFormat = "HH:mm:ss"
mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!! Subs.mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
mandapiezas mandapiezas
B4XPages.MainPage.productos.reiniciarlistaProds = True B4XPages.MainPage.productos.reiniciarlistaProds = True
B4XPages.MainPage.productos.prodsMap.Initialize B4XPages.MainPage.productos.prodsMap.Initialize
@@ -906,12 +902,12 @@ Sub GuardaVenta2
DateTime.TimeFormat = "HH:mm:ss" DateTime.TimeFormat = "HH:mm:ss"
' mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!! ' mandaPendientes 'LO COMENTAMOS PARA PRUEBAS, ACTIVAR AL FINAL!!!
' mandapiezas ' mandapiezas
mandaPendientesrecarga ' mandaPendientesrecarga
mandapiezasrecarga ' mandapiezasrecarga
B4XPages.MainPage.productos.reiniciarlistaProds = True B4XPages.MainPage.productos.reiniciarlistaProds = True
B4XPages.MainPage.productos.prodsMap.Initialize B4XPages.MainPage.productos.prodsMap.Initialize
B4XPages.MainPage.promos.promosMap.Initialize B4XPages.MainPage.promos.promosMap.Initialize
B4XPages.ShowPage("login") B4XPages.ShowPage("principal")
B4XPages.MainPage.recarga = "0" B4XPages.MainPage.recarga = "0"
End If End If
End Sub End Sub
@@ -2823,7 +2819,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(LA_RUTA, ALMACEN, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD)) Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO_NOM, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(LA_RUTA, ALMACEN, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, fototomada, Subs.traeUsuarioDeBD))
b_foto_inci.Text = "Foto usuario" b_foto_inci.Text = "Foto usuario"
ChangeCamera_Click ChangeCamera_Click
Else If b_foto_inci.Text = "Foto usuario" Then Else If b_foto_inci.Text = "Foto usuario" Then
@@ -2865,7 +2861,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False) Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,LA_RUTA, ALMACEN )) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO_NOM2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (fototomada, Subs.traeUsuarioDeBD,LA_RUTA, ALMACEN ))
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
ChangeCamera_Click ChangeCamera_Click
p_camara.Visible = False p_camara.Visible = False

View File

@@ -53,6 +53,8 @@ Sub Class_Globals
Private b_guardaNoVenta As Button Private b_guardaNoVenta As Button
Private p_botonesNoVenta As Panel Private p_botonesNoVenta As Panel
Private et_comentarioNoVenta As EditText Private et_comentarioNoVenta As EditText
Private r_opcion7 As RadioButton
Private r_opcion6 As RadioButton
Private r_opcion5 As RadioButton Private r_opcion5 As RadioButton
Private r_opcion4 As RadioButton Private r_opcion4 As RadioButton
Private r_opcion3 As RadioButton Private r_opcion3 As RadioButton
@@ -73,6 +75,9 @@ Sub Class_Globals
Dim fotoCerrado As String = "" Dim fotoCerrado As String = ""
Private p_botonesCam As Panel Private p_botonesCam As Panel
Dim reqManager As DBRequestManager Dim reqManager As DBRequestManager
Private p_clientesLista As Panel
Private p_transparenciaEsperaGPS As Panel
Private p_esperaGPS As Panel
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -99,7 +104,9 @@ Private Sub B4XPage_Created (Root1 As B4XView)
Subs.centraPanel(p_inicioFinVenta, Root.Width) Subs.centraPanel(p_inicioFinVenta, Root.Width)
p_guardarPeso.Top = p_inicioFinVenta.top : p_guardarPeso.left = p_inicioFinVenta.left p_guardarPeso.Top = p_inicioFinVenta.top : p_guardarPeso.left = p_inicioFinVenta.left
Subs.centraPanel(p_noVenta, Root.Width) Subs.centraPanel(p_noVenta, Root.Width)
p_transparenciaEsperaGPS.Width = Root.Width : p_transparenciaEsperaGPS.Height = Root.Height
p_transparenciaEsperaGPS.Top = 0 : p_transparenciaEsperaGPS.Left = 0
Subs.centraPanel(p_esperaGPS, p_transparenciaEsperaGPS.Width)
' se crea o no el archivo de la base de ddatos de kmt ' se crea o no el archivo de la base de ddatos de kmt
'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE 'NOTAS SI SE MODIFICA LA ESTRUCTURA SE QUITA EL IF Y SE VA DIRECTO A LA SENTENCIA FILE.COPY PARA QUE
'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA 'TOME LA NUEVA ESTRUCTURA ES MUY IMPORTANTE TENER EL IF DE LO CONTRARIO SOLO LO ESCRIBE UNA VEZ Y LO BORRA
@@ -113,7 +120,25 @@ Private Sub B4XPage_Created (Root1 As B4XView)
End Sub End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
' p_transparenciaEsperaGPS.Visible = True
Log("################ Iniciando revision de ubicación #############")
Log($"${B4XPages.MainPage.lat_gps},${B4XPages.MainPage.lon_gps}"$)
If B4XPages.MainPage.lat_gps.Length < 4 Or B4XPages.MainPage.lon_gps.Length < 4 Then
ProgressDialogShow2("Buscando ubicación ...", False)
CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
wait for GPS_LocationChanged (location1 As Location)
ProgressDialogHide
End If
Log("############### Terminando revision de ubicación #############")
l_baseodia.Text = "Clientes del día de visita" l_baseodia.Text = "Clientes del día de visita"
p_clientes.Width = Root.Width : p_clientes.Height = Root.Height
p_clientes.Top = 0 : p_clientes.Left = 0
Subs.centraPanel(p_clientesLista, p_clientes.Width)
p_clientesLista.Height = Root.Height * 0.65
CustomListView1.AsView.Height = Root.Height * 0.6
CustomListView1.Base_Resize(Root.Width, Root.Height * 0.6)
CHECK = 0 CHECK = 0
busca.Text = "" busca.Text = ""
entro ="2" entro ="2"
@@ -181,12 +206,17 @@ Sub B4XPage_Appear
End If End If
End Sub End Sub
Sub GPS_LocationChanged (Location1 As Location)
' If p_transparenciaEsperaGPS.IsInitialized Then p_transparenciaEsperaGPS.Visible = False
ProgressDialogHide
End Sub
Sub CreateListItem(nombre As String, direccion0 As String, cliente As String) As Panel Sub CreateListItem(nombre As String, direccion0 As String, cliente As String) As Panel
Dim p As B4XView = xui.CreatePanel("") Dim p As B4XView = xui.CreatePanel("")
p.SetLayoutAnimated(0, 0, 0, 1, 220) p.SetLayoutAnimated(0, 0, 0, 1, 220)
' p.LoadLayout("datoscliente") ' p.LoadLayout("datoscliente")
p.LoadLayout("datosclienteBotones") p.LoadLayout("datosclienteBotones")
p.Height= 100dip p.Height = 95dip
b_inicioVenta.Tag = cliente b_inicioVenta.Tag = cliente
' p.Width = clv_orden.GetBase.Width ' p.Width = clv_orden.GetBase.Width
nombrecliente.Text = nombre nombrecliente.Text = nombre
@@ -279,7 +309,6 @@ Sub BUSCA_TextChanged (Old As String, New As String)
cxc.Visible = True cxc.Visible = True
End If End If
d = B4XPages.MainPage.skmt.ExecQuery($"select IFNULL(CAT_CL_BCREDITO,0) AS CAT_CL_BCREDITO FROM kmt_info WHERE CAT_CL_CODIGO = '${c2.GetString("CAT_CL_CODIGO")}'"$) d = B4XPages.MainPage.skmt.ExecQuery($"select IFNULL(CAT_CL_BCREDITO,0) AS CAT_CL_BCREDITO FROM kmt_info WHERE CAT_CL_CODIGO = '${c2.GetString("CAT_CL_CODIGO")}'"$)
' LogColor(d.RowCount,Colors.Blue) ' LogColor(d.RowCount,Colors.Blue)
If d.RowCount > 0 Then If d.RowCount > 0 Then
@@ -296,7 +325,6 @@ Sub BUSCA_TextChanged (Old As String, New As String)
End If End If
Next Next
If c2.RowCount>0 Then If c2.RowCount>0 Then
For i=0 To c2.RowCount -1 For i=0 To c2.RowCount -1
c2.Position=i c2.Position=i
@@ -345,7 +373,6 @@ Sub BUSCA_TextChanged (Old As String, New As String)
End If End If
Next Next
If c2.RowCount>0 Then If c2.RowCount>0 Then
For i=0 To c2.RowCount -1 For i=0 To c2.RowCount -1
c2.Position=i c2.Position=i
@@ -488,7 +515,7 @@ Private Sub b_buscar_Click
End If End If
d = B4XPages.MainPage.skmt.ExecQuery($"select IFNULL(CAT_CL_BCREDITO,0) AS CAT_CL_BCREDITO FROM kmt_info WHERE CAT_CL_CODIGO = '${c.GetString("CAT_CL_CODIGO")}'"$) d = B4XPages.MainPage.skmt.ExecQuery($"select IFNULL(CAT_CL_BCREDITO,0) AS CAT_CL_BCREDITO FROM kmt_info WHERE CAT_CL_CODIGO = '${c.GetString("CAT_CL_CODIGO")}'"$)
' LogColor(d.RowCount,Colors.Blue) ' LogColor(d.RowCount,Colors.Blue)
If d.RowCount > 0 Then If d.RowCount > 0 Then
d.Position = 0 d.Position = 0
LogColor(d.GetString("CAT_CL_BCREDITO"),Colors.Blue) LogColor(d.GetString("CAT_CL_BCREDITO"),Colors.Blue)
@@ -591,7 +618,7 @@ Private Sub b_inicioVenta_Click
Else Else
p_transparenciaIniciaInicioFinVenta.Visible = True p_transparenciaIniciaInicioFinVenta.Visible = True
b_finVenta.Enabled = True b_finVenta.Enabled = True
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "") Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
Starter.enVenta = True Starter.enVenta = True
Subs.enVenta(1, "CLIENTES") Subs.enVenta(1, "CLIENTES")
LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red) LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red)
@@ -616,7 +643,7 @@ Private Sub ventaIniciada
' Log($"insert into cuentaa (cuenta) values ('${cliente}')"$) ' Log($"insert into cuentaa (cuenta) values ('${cliente}')"$)
p_transparenciaIniciaInicioFinVenta.Visible = True p_transparenciaIniciaInicioFinVenta.Visible = True
b_finVenta.Enabled = True b_finVenta.Enabled = True
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "") Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
Starter.enVenta = True Starter.enVenta = True
Subs.enVenta(1, "CLIENTES") Subs.enVenta(1, "CLIENTES")
LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red) LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
@@ -645,7 +672,7 @@ Private Sub b_guardarPeso_Click
et_guardarPeso.Text = peso et_guardarPeso.Text = peso
Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "") Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "")
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$)
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)")
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
@@ -654,7 +681,8 @@ Private Sub b_guardarPeso_Click
' b_inicioVenta.Enabled = True ' b_inicioVenta.Enabled = True
b_finVenta.Enabled = False b_finVenta.Enabled = False
B4XPages.MainPage.clientes.B4XPage_Appear B4XPages.MainPage.clientes.B4XPage_Appear
mandaPendientes Subs.mandaPendientes
B4XPage_Appear
End If End If
End Sub End Sub
@@ -684,13 +712,17 @@ Private Sub b_guardaNoVenta_Click
If r_opcion1.Checked Then If r_opcion1.Checked Then
motivo = "CERRADO" motivo = "CERRADO"
Else If r_opcion2.Checked Then Else If r_opcion2.Checked Then
motivo = "NO COMPRA" motivo = "NO TIENE DINERO"
Else If r_opcion3.Checked Then Else If r_opcion3.Checked Then
motivo = "CON PRODUCTO" motivo = "NO ABRE MAÑANA"
Else If r_opcion4.Checked Then Else If r_opcion4.Checked Then
motivo = "NO ESTA EL ENCARGADO" motivo = "FALTA DE PRODUCTO"
Else If r_opcion5.Checked Then
motivo = "PROMOCION CON OTRO DISTRIBUIDOR"
Else If r_opcion6.Checked Then
motivo = "RECIBEN MUCHOS PROVEEDORES"
Else Else
motivo = "CANCELACION" motivo = "NO LE QUEDA EL DIA"
End If End If
Log("FOTOCERRADO: " & fotoCerrado) Log("FOTOCERRADO: " & fotoCerrado)
@@ -710,7 +742,7 @@ Private Sub b_guardaNoVenta_Click
DateTime.DateFormat="yy-MM-dd HH:mm:ss" DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Dim fecha As String=DateTime.Date(DateTime.Now) Dim fecha As String=DateTime.Date(DateTime.Now)
Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado) Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado)
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
@@ -718,8 +750,8 @@ Private Sub b_guardaNoVenta_Click
p_guardarPeso.Visible = False p_guardarPeso.Visible = False
p_transparenciaIniciaInicioFinVenta.Visible = False p_transparenciaIniciaInicioFinVenta.Visible = False
End If End If
mandaPendientes Subs.mandaPendientes
B4XPage_Appear
' DateTime.DateFormat="yy-MM-dd HH:mm:ss" ' DateTime.DateFormat="yy-MM-dd HH:mm:ss"
' Dim fecha As String=DateTime.Date(DateTime.Now) ' Dim fecha As String=DateTime.Date(DateTime.Now)
' '
@@ -810,7 +842,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
If nombreFoto = "inicio" Then If nombreFoto = "inicio" Then
Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD)) Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO_NOM, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, fototomada, Subs.traeUsuarioDeBD))
b_foto_inci.Text = "Foto usuario" b_foto_inci.Text = "Foto usuario"
ChangeCamera_Click ChangeCamera_Click
Else Else
@@ -818,9 +850,14 @@ Sub Camera1_PictureTaken (Data() As Byte)
p_camara.Visible = False p_camara.Visible = False
StopCamera StopCamera
End If End If
LogColor("Mandamos foto: " & fototomada, Colors.red)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${Subs.traeCliente}, ${fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
Else If b_foto_inci.Text = "Foto usuario" Then Else If b_foto_inci.Text = "Foto usuario" Then
DateTime.DateFormat="ddMMyyyyHHmmss" DateTime.DateFormat="ddMMyyyyHHmmss"
fototomada = fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$ nombreFoto = "usuario"
fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
Dim filename As String = fototomada Dim filename As String = fototomada
Dim dir As String = File.DirInternal Dim dir As String = File.DirInternal
camEx.SavePictureToFile(Data, dir, filename) camEx.SavePictureToFile(Data, dir, filename)
@@ -857,7 +894,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False) Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen )) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO_NOM2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (fototomada, Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen ))
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
ChangeCamera_Click ChangeCamera_Click
p_camara.Visible = False p_camara.Visible = False
@@ -869,6 +906,11 @@ Sub Camera1_PictureTaken (Data() As Byte)
Else Else
B4XPages.MainPage.tipo_venta = "PREVENTA" B4XPages.MainPage.tipo_venta = "PREVENTA"
End If End If
LogColor("Mandamos foto: " & fototomada, Colors.red)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${Subs.traeCliente}, ${fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
' B4XPages.ShowPage("productos") ' B4XPages.ShowPage("productos")
' p_transparentePidePeso.Visible = True ' p_transparentePidePeso.Visible = True
End If End If
@@ -888,40 +930,39 @@ Private Sub StopCamera
End Sub End Sub
Sub mandaPendientes Sub mandaPendientes
' PEDIDO_CLIENTE (Pendientes) '' PEDIDO_CLIENTE (Pendientes)
Log(">>>>>>> MANDA PENDIENTES") ' Log(">>>>>>> MANDA PENDIENTES")
Dim PCNoArts As String ' Dim PCNoArts As String
Dim PCMonto As String ' Dim PCMonto As String
If Subs.traeUsuarioDeBD <> "KMTS1" Then ' If Subs.traeUsuarioDeBD <> "KMTS1" Then
'PESOS (Pendientes) ' 'PESOS (Pendientes)
c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$) ' c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$)
Log($"PESOS PENDIENTE: ${c.RowCount}"$) ' Log($"PESOS PENDIENTE: ${c.RowCount}"$)
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
Dim cmd As DBCommand ' Dim cmd As DBCommand
cmd.Initialize ' cmd.Initialize
' cmd.Name = "insert_pedido2_ADM" '' cmd.Name = "insert_pedido2_ADM"
' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO")) '' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO"))
' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$) '' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$)
' Log($">>>> INS_PEDIDO= ${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")}, ${PCNoArts}, ${PCMonto}"$) '' Log($">>>> INS_PEDIDO= ${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")}, ${PCNoArts}, ${PCMonto}"$)
' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?)) '' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?))
' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?)) '' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?))
'
Dim cmd As DBCommand ' Dim cmd As DBCommand
cmd.Initialize ' cmd.Initialize
cmd.Name = "insertPesos" ' cmd.Name = "insertPesos"
' Log(c.GetString("PE_IDALMACEN")&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN) '' Log(c.GetString("PE_IDALMACEN")&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN)
cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO")) ' cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO"))
' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$) '' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$)
reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$) ' reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$)
Next ' Next
End If ' End If
c.Close ' c.Close
End If ' End If
End Sub End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
Log("INICA JOBDONE CLIENTES - " & Job.Tag) Log("INICA JOBDONE CLIENTES - " & Job.Tag)
If reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos. If reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos.
@@ -964,3 +1005,7 @@ Sub JobDone(Job As HttpJob)
LogColor(">>>>> Job.Release Clientes - " & Job.Tag, Colors.RGB(179, 146, 0)) LogColor(">>>>> Job.Release Clientes - " & Job.Tag, Colors.RGB(179, 146, 0))
Job.Release Job.Release
End Sub End Sub
Private Sub p_transparenciaEsperaGPS_Click
End Sub

View File

@@ -131,7 +131,7 @@ Sub GUARDA_Click
B4XPages.MainPage.skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, cuenta)) B4XPages.MainPage.skmt.ExecNonQuery2("update PEDIDO_INICIO_FINAL set PIF_HORA_FINAL = ? where PIF_CLIENTE = ? and PIF_HORA_FINAL = 0", Array As Object (DateTime.Now, cuenta))
LogColor($"actualizamos "${cuenta}, hora_final=${DateTime.now}"$,Colors.Red) LogColor($"actualizamos "${cuenta}, hora_final=${DateTime.now}"$,Colors.Red)
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, B4XPages.MainPage.cliente.precision, motivo, e_comm.text, "") Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.cliente.precision, motivo, e_comm.text, "")
mandaPendientesnoventa mandaPendientesnoventa
B4XPages.ShowPage("Principal") B4XPages.ShowPage("Principal")

View File

@@ -223,6 +223,12 @@ Sub Class_Globals
Dim q_buscar As String Dim q_buscar As String
Private et_buspc As EditText Private et_buspc As EditText
Private Panel9 As Panel Private Panel9 As Panel
Private p_transResumenDia As Panel
Private p_resumenDia As Panel
Private l_totalPesoActual As Label
Private l_conVenta As Label
Private l_visitados As Label
Private l_totalAVisitar As Label
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -278,7 +284,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
l_ctast.Text = d.GetString("TOTAL_VISITAR") l_ctast.Text = d.GetString("TOTAL_VISITAR")
l_porvisitar.Text = e.GetString("POR_VISITAR") l_porvisitar.Text = e.GetString("POR_VISITAR")
Else Else
c=B4XPages.MainPage.skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente where PC_CLIENTE <> 0 AND PC_CLIENTE <> 1") ' c=B4XPages.MainPage.skmt.ExecQuery("select sum(pc_monto) as MONTO_DIA, count(pc_cliente) AS CLIENTES_DIA from pedido_cliente where PC_CLIENTE <> 0 AND PC_CLIENTE <> 1")
c=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_peso) as MONTO_DIA, count(pe_cliente) AS CLIENTES_DIA from pedido_cliente where PC_CLIENTE <> 0 AND PC_CLIENTE <> 1")
b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa") b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa")
'where pc_fecha = ?", Array As String(fecha) 'where pc_fecha = ?", Array As String(fecha)
c.Position=0 c.Position=0
@@ -308,14 +315,12 @@ Private Sub B4XPage_Created (Root1 As B4XView)
l_rutasuplencia.Visible = True l_rutasuplencia.Visible = True
l_rutasuplencia.Text = s.GetString("RS_RUTA") l_rutasuplencia.Text = s.GetString("RS_RUTA")
End If End If
p_mandaInfo.Top = 0 : p_mandaInfo.Left = 0 p_mandaInfo.Top = 0 : p_mandaInfo.Left = 0
Panel5.Top = 0 : Panel5.Left = 0 Panel5.Top = 0 : Panel5.Left = 0
P_RESUMEN.Top = 0 : P_RESUMEN.Left = 0 P_RESUMEN.Top = 0 : P_RESUMEN.Left = 0
SCROLL_RESDIA.Top = 0 : SCROLL_RESDIA.Left = 0 SCROLL_RESDIA.Top = 0 : SCROLL_RESDIA.Left = 0
SCROLL_RESDIA.Height = Root.Height * 0.9 SCROLL_RESDIA.Height = Root.Height * 0.9
SCROLL_RESDIA.Left = (Root.Width / 2) - (SCROLL_RESDIA.Width / 2) SCROLL_RESDIA.Left = (Root.Width / 2) - (SCROLL_RESDIA.Width / 2)
Starter.Skmt.ExecNonQuery($"create table if not exists kmt_info2 (${getTableColumnList(Starter.skmt, "kmt_info")})"$) Starter.Skmt.ExecNonQuery($"create table if not exists kmt_info2 (${getTableColumnList(Starter.skmt, "kmt_info")})"$)
End Sub End Sub
@@ -377,6 +382,11 @@ Sub B4XPage_Appear
rd.respaldaInventarios rd.respaldaInventarios
rd.respaldaPaquetes rd.respaldaPaquetes
HORAINGRESO ="000000" HORAINGRESO ="000000"
p_transResumenDia.Left = 0 : p_transResumenDia.top = 0
p_transResumenDia.Height = Root.Height : p_transResumenDia.Width = Root.Width
Subs.centraPanel(p_resumenDia, Root.Width)
' Private inicioL As Float = (nvo_cliente.Left + nvo_cliente.Width) ' Private inicioL As Float = (nvo_cliente.Left + nvo_cliente.Width)
' Private finR As Float = Panel9.Left ' Private finR As Float = Panel9.Left
' Btn_Ubicar.Left = ((nvo_cliente.Left + nvo_cliente.Width)) - (Btn_Ubicar.Width / 2) + ((finR - inicioL)/2) + 15 ' Btn_Ubicar.Left = ((nvo_cliente.Left + nvo_cliente.Width)) - (Btn_Ubicar.Width / 2) + ((finR - inicioL)/2) + 15
@@ -461,13 +471,14 @@ Sub B4XPage_Appear
b.close b.close
Else Else
c=B4XPages.MainPage.skmt.ExecQuery("select SUM(PE_COSTO_TOT) as MONTO_DIA, COUNT(DISTINCT(PE_CLIENTE)) AS CLIENTES_DIA from PEDIDO WHERE PE_CLIENTE <> 0") c=B4XPages.MainPage.skmt.ExecQuery("select SUM(PE_COSTO_TOT) as MONTO_DIA, COUNT(DISTINCT(PE_CLIENTE)) AS CLIENTES_DIA from PEDIDO WHERE PE_CLIENTE <> 0")
b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa") ' b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from noventa")
b=B4XPages.MainPage.skmt.ExecQuery("select count(*) as CUANTOS from pesos where PE_TIPO = 'NO VENTA'")
c.Position=0 c.Position=0
b.Position=0 b.Position=0
L_MONTOD.Text = c.GetString("MONTO_DIA") L_MONTOD.Text = c.GetString("MONTO_DIA")
l_cuantosc.Text = c.GetString("CLIENTES_DIA") l_cuantosc.Text = c.GetString("CLIENTES_DIA")
D2=B4XPages.MainPage.skmt.ExecQuery("select COUNT(*) AS CUANTOS from PEDIDO ") D2 = B4XPages.MainPage.skmt.ExecQuery("select COUNT(*) AS CUANTOS from PEDIDO")
D2.Position = 0 D2.Position = 0
LPT = D2.GetString("CUANTOS") / l_cuantosc.Text LPT = D2.GetString("CUANTOS") / l_cuantosc.Text
D2.Close D2.Close
@@ -581,7 +592,7 @@ Sub B4XPage_Appear
End Sub End Sub
Sub b_subir_Click Sub b_subir_Click
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, ALMACEN, l_ruta.Text, "Enviar Dia", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, "2", "", "", "") Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, ALMACEN, l_ruta.Text, "Enviar Dia", "", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
CARGA = "SUBIR" CARGA = "SUBIR"
p_mandaInfo.Width = Root.Width p_mandaInfo.Width = Root.Width
p_mandaInfo.Height = Root.Height p_mandaInfo.Height = Root.Height
@@ -816,7 +827,7 @@ Sub b_subir_Click
cuantos_noventa = D.GetString("CUANTOS_NOVENTA") cuantos_noventa = D.GetString("CUANTOS_NOVENTA")
d.Close d.Close
' NOVENTA ' FOTOINICIAL
c=B4XPages.MainPage.skmt.ExecQuery("SELECT * FROM FOTOINICIAL") c=B4XPages.MainPage.skmt.ExecQuery("SELECT * FROM FOTOINICIAL")
If c.RowCount>0 Then If c.RowCount>0 Then
For i=0 To c.RowCount -1 For i=0 To c.RowCount -1
@@ -826,7 +837,7 @@ Sub b_subir_Click
foto2 = c.GetBlob("FOTO2") foto2 = c.GetBlob("FOTO2")
cmd.Initialize cmd.Initialize
cmd.Name = "insert_foto_ADM" cmd.Name = "insert_foto_ADM"
cmd.Parameters = Array As Object(C.GetString("RUTAA"),C.GetString("USUARIO"),C.GetString("LONGITUD"),C.GetString("ALMACEN"),C.GetString("FECHAHORA"),C.GetString("LATITUD"),foto1,foto2) cmd.Parameters = Array As Object(C.GetString("RUTAA"),C.GetString("USUARIO"),C.GetString("LONGITUD"),C.GetString("ALMACEN"),C.GetString("FECHAHORA"),C.GetString("LATITUD"),Subs.traeCliente&"_"&c.GetString("FOTO_NOM"),Subs.traeCliente&"_"&c.GetString("FOTO_NOM2"))
reqManager.ExecuteCommand(cmd , "inst_FOTO") reqManager.ExecuteCommand(cmd , "inst_FOTO")
Next Next
End If End If
@@ -1068,7 +1079,7 @@ Sub b_cargar_Click
reqManager.ExecuteQuery(cmd , 0, "detallepaq") reqManager.ExecuteQuery(cmd , 0, "detallepaq")
cmd.Initialize cmd.Initialize
cmd.Name = "select_cat_clientes_ADM" cmd.Name = "select_cat_clientes2_ADM"
cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) cmd.Parameters = Array As Object(e_ruta.text, ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "kmt_datos") reqManager.ExecuteQuery(cmd , 0, "kmt_datos")
@@ -1111,7 +1122,7 @@ Sub b_cargar_Click
Panel11.Visible = False Panel11.Visible = False
cmd.Initialize cmd.Initialize
cmd.Name = "select_cat_clientes_ADM" cmd.Name = "select_cat_clientes2_ADM"
cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN) cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN)
reqManager.ExecuteQuery(cmd , 0, "kmt_datos") reqManager.ExecuteQuery(cmd , 0, "kmt_datos")
@@ -1290,6 +1301,7 @@ Sub JobDone(Job As HttpJob)
If Job.JobName = "DBRequest" Then If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = reqManager.HandleJob(Job) Dim RESULT As DBResult = reqManager.HandleJob(Job)
If RESULT.Tag = "kmt_datos" Then 'query tag If RESULT.Tag = "kmt_datos" Then 'query tag
Subs.logJobDoneResultados(RESULT)
S_CC.TEXT = "CARGANDO" S_CC.TEXT = "CARGANDO"
For Each records() As Object In RESULT.Rows For Each records() As Object In RESULT.Rows
Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO")) Dim CAT_CL_CODIGO As String = records(RESULT.Columns.Get("CAT_CL_CODIGO"))
@@ -2090,8 +2102,9 @@ End Sub
Private Sub B4XPage_CloseRequest As ResumableSub Private Sub B4XPage_CloseRequest As ResumableSub
'Return True to close, False to cancel 'Return True to close, False to cancel
If p_transResumenDia.Visible Then
If SCROLL_RESDIA.Visible Then p_transResumenDia.Visible = False
Else If SCROLL_RESDIA.Visible Then
SCROLL_RESDIA.Visible = False SCROLL_RESDIA.Visible = False
B_OK_RES_Click B_OK_RES_Click
Return False Return False
@@ -2341,7 +2354,6 @@ Sub B_OK_PAS_Click
img2.Visible=False img2.Visible=False
Subs.panelVisible(p_principal, 0, 0) Subs.panelVisible(p_principal, 0, 0)
If E_RUTA2.Text <> "" Then If E_RUTA2.Text <> "" Then
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text))
End If End If
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTAA(RUTAA) VALUES(?)",Array As String(e_ruta.Text)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTAA(RUTAA) VALUES(?)",Array As String(e_ruta.Text))
@@ -2413,193 +2425,225 @@ Sub CARGA_Click
End Sub End Sub
Sub resdia_Click Sub resdia_Click
p_principal.Visible = False P_RESUMEN.Top = 0 : P_RESUMEN.Left = 0
Btn_Ubicar.Visible=False SCROLL_RESDIA.Top = 0 : SCROLL_RESDIA.Left = 0
SCROLL_RESDIA.Visible = True SCROLL_RESDIA.Height = Root.Height * 0.9
SCROLL_RESDIA.Panel.LoadLayout("RESDIA") SCROLL_RESDIA.Left = (Root.Width / 2) - (SCROLL_RESDIA.Width / 2)
SCROLL_RESDIA.Panel.Height = Panel4.Height p_transResumenDia.Top = 0
Panel4.Visible = True p_transResumenDia.Left = 0
p_transResumenDia.Width = Root.Width
p_transResumenDia.Height = Root.Height
p_transResumenDia.BringToFront
Private totalPesoActual As String = 0
Private conVenta As String = 0
Private visitados As String = 0
Private totalAVisitar As String = 0
NUEVO.Visible =False Private utr As Cursor = Starter.skmt.ExecQuery($"select ifnull(sum(pe_peso),0) as totalPesoActual,
BUSCA.Visible=False (select count(pe_cliente) from pesos where pe_tipo = 'VENTA') as conVenta,
connecta.Visible=False (select count(distinct pe_cliente) from pesos) as visitados,
b_subir.Visible=False (select count(cat_cl_codigo) from kmt_info where cat_cl_codigo not in ('0', '1')) as totalAVisitar
b_cargar.Visible=False from pesos"$)
Resumen.Visible= False If utr.RowCount > 0 Then
utr.position = 0
d=B4XPages.MainPage.skmt.ExecQuery2("select COUNT(*) AS CUANTOS FROM HIST_ENCUESTA WHERE HE_TIPO = ?", Array As String("TELEFONO")) l_totalPesoActual.text = NumberFormat2(utr.GetString("totalPesoActual"), 0, 2, 0, True)
d.Position = 0 l_conVenta.text = utr.GetString("conVenta")
l_encuesta.Text = d.GetString("CUANTOS") l_visitados.text = utr.GetString("visitados")
d.Close l_totalAVisitar.text = utr.GetString("totalAVisitar")
Log("totalPesoActual: " & utr.GetString("totalPesoActual"))
L_MARCAS.CLEAR Log("conVenta: " & utr.GetString("conVenta"))
d=B4XPages.MainPage.skmt.ExecQuery2("select distinct HE_CLIE AS CLIENTE FROM HIST_ENCUESTA WHERE HE_TIPO = ?", Array As String("TELEFONO")) Log("visitados: " & utr.GetString("visitados"))
If D.RowCount>0 Then Log("totalAVisitar: " & utr.GetString("totalAVisitar"))
For i=0 To D.RowCount -1
D.Position=i
c=B4XPages.MainPage.skmt.ExecQuery2("Select HE_RES from HIST_ENCUESTA where HE_CLIE = ? AND HE_TIPO = ?", Array As String(d.GetString("CLIENTE"), "TELEFONO"))
c.Position = 0
Dim label1 As Label
label1 = L_MARCAS.TwoLinesLayout.Label
label1.TextSize = 13
label1.TextColor = Colors.Black
Dim label2 As Label
label2 = L_MARCAS.TwoLinesLayout.SecondLabel
label2.TextSize = 13
label2.TextColor = Colors.Black
L_MARCAS.AddTwoLines(d.GetString("CLIENTE"),"TELEFONO :" & c.GetString("HE_RES") )
c.Close
Next
End If End If
d.Close
c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("RTEC")) p_transResumenDia.Visible = True
c.Position = 0 ' p_principal.Visible = False
l_monto_k.Text = c.GetString("MONTO_DIA") ' Btn_Ubicar.Visible=False
If l_monto_k.Text = "null" Then ' SCROLL_RESDIA.Visible = True
l_monto_k.Text = "0" ' SCROLL_RESDIA.Panel.LoadLayout("RESDIA")
End If ' SCROLL_RESDIA.Panel.Height = Panel4.Height
c.Close ' Panel4.Visible = True
'
c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("PING")) ' NUEVO.Visible =False
c.Position = 0 ' BUSCA.Visible=False
l_monto_kp.Text = c.GetString("MONTO_DIA") ' connecta.Visible=False
If l_monto_kp.Text = "null" Then ' b_subir.Visible=False
l_monto_kp.Text = "0" ' b_cargar.Visible=False
End If ' Resumen.Visible= False
c.Close '
' d=B4XPages.MainPage.skmt.ExecQuery2("select COUNT(*) AS CUANTOS FROM HIST_ENCUESTA WHERE HE_TIPO = ?", Array As String("TELEFONO"))
' c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("SALTY SNACKS")) ' d.Position = 0
' l_encuesta.Text = d.GetString("CUANTOS")
' d.Close
'
' L_MARCAS.CLEAR
' d=B4XPages.MainPage.skmt.ExecQuery2("select distinct HE_CLIE AS CLIENTE FROM HIST_ENCUESTA WHERE HE_TIPO = ?", Array As String("TELEFONO"))
' If D.RowCount>0 Then
' For i=0 To D.RowCount -1
' D.Position=i
' c=B4XPages.MainPage.skmt.ExecQuery2("Select HE_RES from HIST_ENCUESTA where HE_CLIE = ? AND HE_TIPO = ?", Array As String(d.GetString("CLIENTE"), "TELEFONO"))
' c.Position = 0
' Dim label1 As Label
' label1 = L_MARCAS.TwoLinesLayout.Label
' label1.TextSize = 13
' label1.TextColor = Colors.Black
' Dim label2 As Label
' label2 = L_MARCAS.TwoLinesLayout.SecondLabel
' label2.TextSize = 13
' label2.TextColor = Colors.Black
' L_MARCAS.AddTwoLines(d.GetString("CLIENTE"),"TELEFONO :" & c.GetString("HE_RES") )
' c.Close
' Next
' End If
' d.Close
'
' c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("RTEC"))
' c.Position = 0 ' c.Position = 0
' l_monto_ks.Text = c.GetString("MONTO_DIA") ' l_monto_k.Text = c.GetString("MONTO_DIA")
' If l_monto_k.Text = "null" Then
' l_monto_k.Text = "0"
' End If
' c.Close
'
' c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("PING"))
' c.Position = 0
' l_monto_kp.Text = c.GetString("MONTO_DIA")
' If l_monto_kp.Text = "null" Then
' l_monto_kp.Text = "0"
' End If
' c.Close
'
'' c=skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 and pe_proid in (Select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPO = ? )", Array As String("SALTY SNACKS"))
'' c.Position = 0
'' l_monto_ks.Text = c.GetString("MONTO_DIA")
'' If l_monto_ks.Text = "null" Then
'' l_monto_ks.Text = "0"
'' End If
' '
'' c.Close
' c=B4XPages.MainPage.skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 ")
' c.Position = 0
' l_monto_ks.Text = Subs.traeTotalCliente
'
' If l_monto_ks.Text = "null" Then ' If l_monto_ks.Text = "null" Then
' l_monto_ks.Text = "0" ' l_monto_ks.Text = "0"
' End If ' End If
'
' c.Close ' c.Close
c=B4XPages.MainPage.skmt.ExecQuery("Select sum(PE_COSTO_TOT) As MONTO_DIA from pedido where PE_CLIENTE <> 0 ") ' c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As PREVENTA from pedido where PE_FOLIO = ? AND PE_CLIENTE <> 0", Array As String ("PREVENTA"))
c.Position = 0 ' If c.RowCount > 0 Then
l_monto_ks.Text = Subs.traeTotalCliente ' c.Position = 0
' L_PREVENTA.Text = Subs.traeTotalClientepreventa
If l_monto_ks.Text = "null" Then ' If L_PREVENTA.TEXT = "null" Then
l_monto_ks.Text = "0" ' L_PREVENTA.Text = "0"
End If ' End If
c.Close ' End If
c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As PREVENTA from pedido where PE_FOLIO = ? AND PE_CLIENTE <> 0", Array As String ("PREVENTA")) ' c.Close
If c.RowCount > 0 Then ' c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As VENTA from pedido where PE_FOLIO = ? AND PE_CLIENTE <> 0", Array As String ("VENTA"))
c.Position = 0 ' If c.RowCount > 0 Then
L_PREVENTA.Text = Subs.traeTotalClientepreventa ' c.Position = 0
If L_PREVENTA.TEXT = "null" Then ' L_VENTA.Text = Subs.traeTotalClienteventa
L_PREVENTA.Text = "0" ' If L_VENTA.TEXT = "null" Then
End If ' L_VENTA.Text = "0"
End If ' End If
c.Close ' End If
c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As VENTA from pedido where PE_FOLIO = ? AND PE_CLIENTE <> 0", Array As String ("VENTA")) ' c.Close
If c.RowCount > 0 Then ' c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As ABORDO from pedido where PE_FOLIO = ? AND PE_CLIENTE = ?", Array As String ("ABORDO", "0"))
c.Position = 0 ' If c.RowCount > 0 Then
L_VENTA.Text = Subs.traeTotalClienteventa ' c.Position = 0
If L_VENTA.TEXT = "null" Then ' L_ABORDO.Text = Subs.traeTotalClienteabordo
L_VENTA.Text = "0" ' If L_ABORDO.TEXT = "null" Then
End If ' L_ABORDO.Text = "0"
End If ' End If
c.Close ' End If
c=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) As ABORDO from pedido where PE_FOLIO = ? AND PE_CLIENTE = ?", Array As String ("ABORDO", "0")) ' c.Close
If c.RowCount > 0 Then ' Dim cuantos_obj As String
c.Position = 0 ' c=B4XPages.MainPage.skmt.ExecQuery("Select count(*) AS TOTAL from HIST_MARCAS_CUOTAS ")
L_ABORDO.Text = Subs.traeTotalClienteabordo ' c.Position = 0
If L_ABORDO.TEXT = "null" Then ' cuantos_obj = c.GetString("TOTAL")
L_ABORDO.Text = "0" ' c.Close
End If '
End If ' If cuantos_obj > 0 Then
c.Close ' c=B4XPages.MainPage.skmt.ExecQuery("Select SUM( HMC_TOTAL) AS TOTAL from HIST_MARCAS_CUOTAS ")
Dim cuantos_obj As String ' c.Position = 0
c=B4XPages.MainPage.skmt.ExecQuery("Select count(*) AS TOTAL from HIST_MARCAS_CUOTAS ") ' L_NES.Text = c.GetString("TOTAL")
c.Position = 0 ' c.Close
cuantos_obj = c.GetString("TOTAL") ' End If
c.Close ' L_REAL.Text = l_monto_ks.Text
' L_ALCANCE.Text = Round2((L_NES.Text / L_REAL.Text + 1),2)
If cuantos_obj > 0 Then ' L_VPLAN.Text = l_porvisitar.Text
c=B4XPages.MainPage.skmt.ExecQuery("Select SUM( HMC_TOTAL) AS TOTAL from HIST_MARCAS_CUOTAS ") ' L_VREAL.Text = L_CUANTOST.text
c.Position = 0 ' L_EFEC_VIS.Text = Round2(L_VREAL.text / L_VPLAN.Text,2)
L_NES.Text = c.GetString("TOTAL") ' L_VISITCC.Text = l_cuantosc.text
c.Close ' L_EFEC_PV.Text = Round2(L_VISITCC.Text / L_VREAL.Text,2)
End If ' L_EFEC_PURA.Text = Round2(L_VISITCC.Text / L_VPLAN.Text,2)
L_REAL.Text = l_monto_ks.Text ' L_LIN_TICK.Text = LPT
L_ALCANCE.Text = Round2((L_NES.Text / L_REAL.Text + 1),2) ' If l_monto_ks.Text <> "0" Then
L_VPLAN.Text = l_porvisitar.Text '
L_VREAL.Text = L_CUANTOST.text ' c=B4XPages.MainPage.skmt.ExecQuery2("Select COUNT(DISTINCT(PE_CLIENTE)) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = ? ", Array As String(ALMACEN))
L_EFEC_VIS.Text = Round2(L_VREAL.text / L_VPLAN.Text,2) ' c.Position = 0
L_VISITCC.Text = l_cuantosc.text ' L_CTE_PROMO.Text = c.GetString("CUANTOS")
L_EFEC_PV.Text = Round2(L_VISITCC.Text / L_VREAL.Text,2) ' c.Close
L_EFEC_PURA.Text = Round2(L_VISITCC.Text / L_VPLAN.Text,2) ' d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("PRIORITARIO"))
L_LIN_TICK.Text = LPT ' d.Position = 0
If l_monto_ks.Text <> "0" Then ' '///////////////////////////////////////////////////////////////////////////////
' '//////////////////////////// ULTIMA LINEA ANTES DEL ERROR //////////////////
c=B4XPages.MainPage.skmt.ExecQuery2("Select COUNT(DISTINCT(PE_CLIENTE)) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = ? ", Array As String(ALMACEN)) ' '////////// java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference
c.Position = 0 ' '
L_CTE_PROMO.Text = c.GetString("CUANTOS") ' '/// Al parecer d.GetString("MONTO_DIA") regresa null y la funcion numberFormat truena
c.Close ' '/////////////////////////////////////////////////////////////////////////////////
d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("PRIORITARIO")) ' Log("|"&d.GetString("MONTO_DIA")&"|")
d.Position = 0 ' 'L_PRIO.Text = NumberFormat(d.GetString("MONTO_DIA"),0,2)
'/////////////////////////////////////////////////////////////////////////////// ' L_PRIO.Text = d.GetString("MONTO_DIA")
'//////////////////////////// ULTIMA LINEA ANTES DEL ERROR ////////////////// ' d.Close
'////////// java.lang.NullPointerException: Attempt to invoke virtual method 'int java.lang.String.length()' on a null object reference '
' ' d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("ESTRATEGICO"))
'/// Al parecer d.GetString("MONTO_DIA") regresa null y la funcion numberFormat truena ' d.Position = 0
'///////////////////////////////////////////////////////////////////////////////// ' L_SECUND.Text =d.GetString("MONTO_DIA")
Log("|"&d.GetString("MONTO_DIA")&"|") ' d.Close
'L_PRIO.Text = NumberFormat(d.GetString("MONTO_DIA"),0,2) '
L_PRIO.Text = d.GetString("MONTO_DIA") ' d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("COMPLEMENTARIO"))
d.Close ' d.Position = 0
' L_COMP.Text =d.GetString("MONTO_DIA")
d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("ESTRATEGICO")) ' d.Close
d.Position = 0 ' Else
L_SECUND.Text =d.GetString("MONTO_DIA") ' L_PRIO.Text = "0"
d.Close ' L_SECUND.Text = "0"
' L_COMP.Text = "0"
d=B4XPages.MainPage.skmt.ExecQuery2("Select sum(PE_COSTO_TOT) AS MONTO_DIA FROM PEDIDO WHERE PE_PROID IN (select CAT_GP_ID from cat_gunaprod where CAT_GP_TIPOPROD = ?) ", Array As String("COMPLEMENTARIO")) ' End If
d.Position = 0 '
L_COMP.Text =d.GetString("MONTO_DIA") ' c=B4XPages.MainPage.skmt.ExecQuery("Select COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = PE_PROID ")
d.Close ' c.Position = 0
Else ' If c.GetString("CUANTOS") > 0 Then
L_PRIO.Text = "0" ' d=B4XPages.MainPage.skmt.ExecQuery("Select sum(pe_cant) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = PE_PROID ")
L_SECUND.Text = "0" ' d.Position = 0
L_COMP.Text = "0" ' L_CTE_PROMO.Text = d.GetString("CUANTOS")
End If ' d.Close
' L_REDEN_PROMO.TEXT = Round2(L_VISITCC.Text / L_CTE_PROMO.Text,2)
c=B4XPages.MainPage.skmt.ExecQuery("Select COUNT(*) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = PE_PROID ") ' Else
c.Position = 0 ' L_CTE_PROMO.Text = 0
If c.GetString("CUANTOS") > 0 Then ' L_REDEN_PROMO.Text = 0
d=B4XPages.MainPage.skmt.ExecQuery("Select sum(pe_cant) AS CUANTOS FROM PEDIDO WHERE PE_CEDIS = PE_PROID ") ' End If
d.Position = 0 ' c.Close
L_CTE_PROMO.Text = d.GetString("CUANTOS") ' d=B4XPages.MainPage.skmt.ExecQuery("Select COUNT(*) AS CUANTOS FROM PEDIDO ")
d.Close ' d.Position = 0
L_REDEN_PROMO.TEXT = Round2(L_VISITCC.Text / L_CTE_PROMO.Text,2) ' L_LIN_TICK.Text = Round2(d.GetString("CUANTOS") / L_VISITCC.Text,2)
Else ' d.Close
L_CTE_PROMO.Text = 0 '
L_REDEN_PROMO.Text = 0 ' d=B4XPages.MainPage.skmt.ExecQuery("Select count(*) as CUANTOS from HIST_CUOTAS ")
End If ' d.Position = 0
c.Close ' If d.GetString("CUANTOS") > 0 Then
d=B4XPages.MainPage.skmt.ExecQuery("Select COUNT(*) AS CUANTOS FROM PEDIDO ") ' ' c=skmt.ExecQuery("Select HC_CUOTA1,HC_CUOTA2,HC_CUOTA3 from HIST_CUOTAS ")
d.Position = 0 ' ' c.Position = 0
L_LIN_TICK.Text = Round2(d.GetString("CUANTOS") / L_VISITCC.Text,2) ' ' l_monto_c1.Text = Round( c.GetString("HC_CUOTA1") / 6)
d.Close ' ' l_monto_c2.Text = Round(c.GetString("HC_CUOTA2") / 6)
' ' l_monto_c3.Text = Round(c.GetString("HC_CUOTA3") / 6)
d=B4XPages.MainPage.skmt.ExecQuery("Select count(*) as CUANTOS from HIST_CUOTAS ") ' ' c.Close
d.Position = 0 ' Else
If d.GetString("CUANTOS") > 0 Then ' l_monto_c1.Text = 4000
' c=skmt.ExecQuery("Select HC_CUOTA1,HC_CUOTA2,HC_CUOTA3 from HIST_CUOTAS ") ' l_monto_c2.Text = 2000
' c.Position = 0 ' l_monto_c3.Text = 1000
' l_monto_c1.Text = Round( c.GetString("HC_CUOTA1") / 6) ' End If
' l_monto_c2.Text = Round(c.GetString("HC_CUOTA2") / 6) ' d.Close
' l_monto_c3.Text = Round(c.GetString("HC_CUOTA3") / 6)
' c.Close
Else
l_monto_c1.Text = 4000
l_monto_c2.Text = 2000
l_monto_c3.Text = 1000
End If
d.Close
End Sub End Sub
Sub hacer_ped_Click Sub hacer_ped_Click
@@ -2803,8 +2847,6 @@ Private Sub p_mandaInfo_Click
End Sub End Sub
Private Sub iv_abordo_Click Private Sub iv_abordo_Click
Starter.skmt.ExecNonQuery("delete from CUENTAA") Starter.skmt.ExecNonQuery("delete from CUENTAA")
Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("0")) Starter.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object("0"))
@@ -2812,14 +2854,21 @@ Private Sub iv_abordo_Click
B4XPages.ShowPage("Productos") B4XPages.ShowPage("Productos")
End Sub End Sub
' Revisa si hay pesos (venta) en la tabla "PESOS" y si hay, cambia "gestion" en "kmt_info"
Sub checaPedido Sub checaPedido
Private c As Cursor = Starter.skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE") ' Private c As Cursor = Starter.skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE")
Private c As Cursor = Starter.skmt.ExecQuery("SELECT PE_CLIENTE FROM PESOS order by PE_FECHA")
If c.RowCount > 0 Then If c.RowCount > 0 Then
Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 2 WHERE CAT_CL_CODIGO IN (SELECT PC_CLIENTE FROM PEDIDO_CLIENTE)") ' Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 2 WHERE CAT_CL_CODIGO IN (SELECT PC_CLIENTE FROM PEDIDO_CLIENTE)")
End If Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 2 WHERE CAT_CL_CODIGO IN (SELECT PE_CLIENTE FROM PESOS where PE_TIPO = 'VENTA')")
Private c As Cursor = Starter.skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA") Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 3 WHERE CAT_CL_CODIGO IN (SELECT PE_CLIENTE FROM PESOS where PE_TIPO = 'NO VENTA')")
If c.RowCount > 0 Then
Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 3 WHERE CAT_CL_CODIGO IN (SELECT NV_CLIENTE FROM NOVENTA)")
End If End If
' Private c As Cursor = Starter.skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA")
' If c.RowCount > 0 Then
' Starter.skmt.ExecNonQuery("Update kmt_info set gestion = 3 WHERE CAT_CL_CODIGO IN (SELECT NV_CLIENTE FROM NOVENTA)")
' End If
End Sub End Sub
Private Sub p_transResumenDia_Click
p_transResumenDia.Visible = False
End Sub

View File

@@ -33,6 +33,9 @@ Sub Class_Globals
Private Panel5 As Panel Private Panel5 As Panel
Private et_comentarioNoVenta As EditText Private et_comentarioNoVenta As EditText
Private Label3 As Label Private Label3 As Label
Private r_opcion7 As RadioButton
Private r_opcion6 As RadioButton
Private r_opcion5 As RadioButton
Private r_opcion4 As RadioButton Private r_opcion4 As RadioButton
Private r_opcion3 As RadioButton Private r_opcion3 As RadioButton
Private r_opcion2 As RadioButton Private r_opcion2 As RadioButton
@@ -71,23 +74,22 @@ Private Sub B4XPage_Created (Root1 As B4XView)
If File.Exists(ruta, "kmt.db") = False Then If File.Exists(ruta, "kmt.db") = False Then
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db") File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
End If End If
c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") ' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc")
' ListView1.Clear
ListView1.Clear ' 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 ' Dim label1 As Label
Dim label1 As Label ' label1 = ListView1.TwoLinesLayout.Label
label1 = ListView1.TwoLinesLayout.Label ' label1.TextSize = 10
label1.TextSize = 10 ' label1.TextColor = Colors.Black
label1.TextColor = Colors.Black ' Dim label2 As Label
Dim label2 As Label ' label2 = ListView1.TwoLinesLayout.SecondLabel
label2 = ListView1.TwoLinesLayout.SecondLabel ' label2.TextSize = 13
label2.TextSize = 13 ' label2.TextColor = Colors.Blue
label2.TextColor = Colors.Blue ' ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"SubTotal "& c.GetString("PC_MONTO") & " kgs.")
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),"Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) ' Next
Next ' End If
End If
p_transparenciaIniciaInicioFinVenta.top = 0 : p_transparenciaIniciaInicioFinVenta.Left = 0 p_transparenciaIniciaInicioFinVenta.top = 0 : p_transparenciaIniciaInicioFinVenta.Left = 0
p_transparenciaIniciaInicioFinVenta.Height = Root.Height : p_transparenciaIniciaInicioFinVenta.Width = Root.Width p_transparenciaIniciaInicioFinVenta.Height = Root.Height : p_transparenciaIniciaInicioFinVenta.Width = Root.Width
Subs.centraPanel(p_inicioFinVenta, Root.Width) Subs.centraPanel(p_inicioFinVenta, Root.Width)
@@ -100,11 +102,19 @@ End Sub
Sub B4XPage_Appear Sub B4XPage_Appear
nombre_boton = "NOVENTA" nombre_boton = "NOVENTA"
p_transparenciaIniciaInicioFinVenta.Visible = False
p_ticketsdia.Height = Root.Height : p_ticketsdia.Width = Root.Width
p_ticketsdia.Top = 0 : p_ticketsdia.Left = 0
ListView1.Left = (Root.Width / 2) - (ListView1.Width / 2)
ListView1.Width = Root.Width * 0.8
' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") ' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE, PC_MONTO, PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc")
c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as PC_CLIENTE, PE_PESO AS PC_MONTO, 1 as PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'VENTA' ORDER BY PE_FECHA asc") c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as PC_CLIENTE, PE_PESO AS PC_MONTO, 1 as PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'VENTA' ORDER BY PE_FECHA asc")
Dim noArticulos As Int = 0 Dim noArticulos As Int = 0
fotoCerrado = "" fotoCerrado = ""
ListView1.Clear ListView1.Clear
ListView1.Height = Root.Height * 0.8
b_noventa0.Top = ListView1.Top + ListView1.Height
ListView1.TwoLinesLayout.ItemHeight = 90dip
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
@@ -118,12 +128,15 @@ Sub B4XPage_Appear
Dim label1 As Label Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 10 label1.TextSize = 10
label1.Visible = False
label1.TextColor = Colors.Black label1.TextColor = Colors.Black
Dim label2 As Label Dim label2 As Label
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 13 label2.TextSize = 13
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& noArticulos & " SubTotal $"& c.GetString("PC_MONTO")) label2.Height = 88dip
label2.Width = ListView1.Width - 10dip
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Total "& c.GetString("PC_MONTO") & " kgs.")
Next Next
End If End If
c.Close c.Close
@@ -148,7 +161,18 @@ Sub Activity_KeyPress (key As Int) As Boolean
End Sub End Sub
Sub ListView1_ItemLongClick (Position As Int, Value As Object) Sub ListView1_ItemLongClick (Position As Int, Value As Object)
Log("################ Iniciando revision de ubicación #############")
Log($"${B4XPages.MainPage.lat_gps},${B4XPages.MainPage.lon_gps}"$)
If B4XPages.MainPage.lat_gps.Length < 4 Or B4XPages.MainPage.lon_gps.Length < 4 Then
ProgressDialogShow2("Buscando ubicación ...", False)
CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
wait for GPS_LocationChanged (location1 As Location)
ProgressDialogHide
End If
Log("############### Terminando revision de ubicación #############")
Private cliente As String = Value Private cliente As String = Value
Log(Value)
Starter.skmt.ExecNonQuery($"delete from cuentaa"$) Starter.skmt.ExecNonQuery($"delete from cuentaa"$)
Starter.skmt.ExecNonQuery($"insert into cuentaa (cuenta) values ('${cliente}')"$) Starter.skmt.ExecNonQuery($"insert into cuentaa (cuenta) values ('${cliente}')"$)
Log($"insert into cuentaa (cuenta) values ('${cliente}')"$) Log($"insert into cuentaa (cuenta) values ('${cliente}')"$)
@@ -163,7 +187,7 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object)
Else Else
p_transparenciaIniciaInicioFinVenta.Visible = True p_transparenciaIniciaInicioFinVenta.Visible = True
b_finVenta.Enabled = True b_finVenta.Enabled = True
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "Tickets Día") Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", cliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "Tickets Día")
Starter.enVenta = True Starter.enVenta = True
Subs.enVenta(1, "CLIENTES") Subs.enVenta(1, "CLIENTES")
LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red) LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${cliente}"$, Colors.red)
@@ -178,8 +202,6 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object)
c.Close c.Close
Log("CLIENTE: " & cliente) Log("CLIENTE: " & cliente)
' B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA") ' B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value)) ' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(Value))
' DateTime.TimeFormat = "HHmmss" ' DateTime.TimeFormat = "HHmmss"
@@ -199,10 +221,15 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object)
' B4XPages.ShowPage("cliente") ' B4XPages.ShowPage("cliente")
End Sub End Sub
Sub GPS_LocationChanged (Location1 As Location)
' If p_transparenciaEsperaGPS.IsInitialized Then p_transparenciaEsperaGPS.Visible = False
ProgressDialogHide
End Sub
Sub b_noventa0_Click Sub b_noventa0_Click
If nombre_boton = "NOVENTA" Then If nombre_boton = "NOVENTA" Then
nombre_boton = "VENTA" nombre_boton = "VENTA"
b_noventa0.Text ="VENTA" b_noventa0.Text ="Ir a Venta"
' c = B4XPages.MainPage.skmt.ExecQuery("select NV_CLIENTE,NV_MOTIVO,NV_COMM, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = NV_CLIENTE ) as NOMBRE FROM NOVENTA ORDER BY NV_CLIENTE asc") ' c = B4XPages.MainPage.skmt.ExecQuery("select NV_CLIENTE,NV_MOTIVO,NV_COMM, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = NV_CLIENTE ) as NOMBRE FROM NOVENTA ORDER BY NV_CLIENTE asc")
c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as NV_CLIENTE, PE_MOTIVO as NV_MOTIVO, PE_COMENTARIO as NV_COMM, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'NO VENTA' ORDER BY PE_FECHA asc") c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as NV_CLIENTE, PE_MOTIVO as NV_MOTIVO, PE_COMENTARIO as NV_COMM, (select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'NO VENTA' ORDER BY PE_FECHA asc")
ListView1.Clear ListView1.Clear
@@ -217,12 +244,12 @@ Sub b_noventa0_Click
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 10
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("NV_CLIENTE"),c.GetString("NOMBRE") &" Motivo #"& c.GetString("NV_MOTIVO")& " Comentario: "& c.GetString("NV_COMM")) ListView1.AddTwoLines(c.GetString("NV_CLIENTE"),c.GetString("NOMBRE") &" Motivo: "& c.GetString("NV_MOTIVO")& " Comentario: "& c.GetString("NV_COMM"))
Next Next
End If End If
Else Else
nombre_boton = "NOVENTA" nombre_boton = "NOVENTA"
b_noventa0.Text ="NO VENTA" b_noventa0.Text ="Ir a No Venta"
' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc") ' c = B4XPages.MainPage.skmt.ExecQuery("select PC_CLIENTE,PC_MONTO,PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pc_cliente ) as NOMBRE FROM PEDIDO_CLIENTE ORDER BY PC_FECHA asc")
c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as PC_CLIENTE, PE_PESO AS PC_MONTO, 1 as PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'VENTA' ORDER BY PE_FECHA asc") c = B4XPages.MainPage.skmt.ExecQuery("select PE_CLIENTE as PC_CLIENTE, PE_PESO AS PC_MONTO, 1 as PC_NOART,(select CAT_CL_NOMBRE from kmt_info where cat_cl_codigo = pe_cliente UNION select CAT_CL_NOMBRE from kmt_info2 where cat_cl_codigo = pe_cliente ) as NOMBRE FROM PESOS where PE_TIPO = 'VENTA' ORDER BY PE_FECHA asc")
ListView1.Clear ListView1.Clear
@@ -232,13 +259,13 @@ Sub b_noventa0_Click
c.Position=i c.Position=i
Dim label1 As Label Dim label1 As Label
label1 = ListView1.TwoLinesLayout.Label label1 = ListView1.TwoLinesLayout.Label
label1.TextSize = 15 label1.TextSize = 10
label1.TextColor = Colors.Black label1.TextColor = Colors.Black
Dim label2 As Label Dim label2 As Label
label2 = ListView1.TwoLinesLayout.SecondLabel label2 = ListView1.TwoLinesLayout.SecondLabel
label2.TextSize = 10 label2.TextSize = 13
label2.TextColor = Colors.Blue label2.TextColor = Colors.Blue
ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Cantidad #"& c.GetString("PC_NOART")& " SubTotal $"& c.GetString("PC_MONTO")) ListView1.AddTwoLines(c.GetString("PC_CLIENTE"),c.GetString("NOMBRE") &" Total "& c.GetString("PC_MONTO") & " kgs.")
Next Next
End If End If
c.Close c.Close
@@ -253,13 +280,17 @@ Private Sub b_guardaNoVenta_Click
If r_opcion1.Checked Then If r_opcion1.Checked Then
motivo = "CERRADO" motivo = "CERRADO"
Else If r_opcion2.Checked Then Else If r_opcion2.Checked Then
motivo = "NO COMPRA" motivo = "NO TIENE DINERO"
Else If r_opcion3.Checked Then Else If r_opcion3.Checked Then
motivo = "CON PRODUCTO" motivo = "NO ABRE MAÑANA"
Else If r_opcion4.Checked Then Else If r_opcion4.Checked Then
motivo = "NO ESTA EL ENCARGADO" motivo = "FALTA DE PRODUCTO"
Else If r_opcion5.Checked Then
motivo = "PROMOCION CON OTRO DISTRIBUIDOR"
Else If r_opcion6.Checked Then
motivo = "RECIBEN MUCHOS PROVEEDORES"
Else Else
motivo = "CANCELACION" motivo = "NO LE QUEDA EL DIA"
End If End If
If motivo = "CERRADO" And fotoCerrado = "" Then If motivo = "CERRADO" And fotoCerrado = "" Then
nombreFoto = Subs.traeCliente & "_cerrado" nombreFoto = Subs.traeCliente & "_cerrado"
@@ -273,7 +304,7 @@ Private Sub b_guardaNoVenta_Click
DateTime.DateFormat="yy-MM-dd HH:mm:ss" DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Dim fecha As String=DateTime.Date(DateTime.Now) Dim fecha As String=DateTime.Date(DateTime.Now)
Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado) Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado)
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Tickets Día Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Tickets Día Venta:${et_guardarPeso.text}"$)
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
@@ -281,6 +312,8 @@ Private Sub b_guardaNoVenta_Click
p_guardarPeso.Visible = False p_guardarPeso.Visible = False
p_transparenciaIniciaInicioFinVenta.Visible = False p_transparenciaIniciaInicioFinVenta.Visible = False
End If End If
Subs.mandaPendientes
B4XPage_Appear
End Sub End Sub
Private Sub b_cancelaNoVenta_Click Private Sub b_cancelaNoVenta_Click
@@ -293,7 +326,7 @@ Private Sub b_guardarPeso_Click
et_guardarPeso.Text = peso et_guardarPeso.Text = peso
Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "") Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "")
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, "", "", $"Tickets Día Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, "", "", $"Tickets Día Venta:${et_guardarPeso.text}"$)
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)")
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
@@ -302,7 +335,8 @@ Private Sub b_guardarPeso_Click
' b_inicioVenta.Enabled = True ' b_inicioVenta.Enabled = True
b_finVenta.Enabled = False b_finVenta.Enabled = False
B4XPages.MainPage.ticketsDia.B4XPage_Appear B4XPages.MainPage.ticketsDia.B4XPage_Appear
mandaPendientes Subs.mandaPendientes
B4XPage_Appear
End If End If
End Sub End Sub
@@ -325,37 +359,37 @@ Private Sub et_guardarPeso_TextChanged (Old As String, New As String)
End Sub End Sub
Sub mandaPendientes Sub mandaPendientes
' PEDIDO_CLIENTE (Pendientes) '' PEDIDO_CLIENTE (Pendientes)
Log(">>>>>>> MANDA PENDIENTES") ' Log(">>>>>>> MANDA PENDIENTES")
Dim PCNoArts As String ' Dim PCNoArts As String
Dim PCMonto As String ' Dim PCMonto As String
If Subs.traeUsuarioDeBD <> "KMTS1" Then ' If Subs.traeUsuarioDeBD <> "KMTS1" Then
'PESOS (Pendientes) ' 'PESOS (Pendientes)
c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$) ' c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$)
Log($"PESOS PENDIENTE: ${c.RowCount}"$) ' Log($"PESOS PENDIENTE: ${c.RowCount}"$)
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
Dim cmd As DBCommand ' Dim cmd As DBCommand
cmd.Initialize ' cmd.Initialize
' cmd.Name = "insert_pedido2_ADM" '' cmd.Name = "insert_pedido2_ADM"
' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO")) '' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO"))
' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$) '' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$)
' Log($">>>> INS_PEDIDO= ${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")}, ${PCNoArts}, ${PCMonto}"$) '' Log($">>>> INS_PEDIDO= ${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")}, ${PCNoArts}, ${PCMonto}"$)
' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?)) '' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?))
' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?)) '' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?))
'
Dim cmd As DBCommand ' Dim cmd As DBCommand
cmd.Initialize ' cmd.Initialize
cmd.Name = "insertPesos" ' cmd.Name = "insertPesos"
' Log(c.GetString("PE_IDALMACEN")&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN) '' Log(c.GetString("PE_IDALMACEN")&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN)
cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO")) ' cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO"))
' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$) '' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$)
reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$) ' reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$)
Next ' Next
End If ' End If
c.Close ' c.Close
End If ' End If
End Sub End Sub
Private Sub b_finVenta_Click Private Sub b_finVenta_Click
@@ -434,7 +468,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
If nombreFoto = "inicio" Then If nombreFoto = "inicio" Then
Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & STIME, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD)) Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO_NOM, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & STIME, fototomada, Subs.traeUsuarioDeBD))
b_foto_inci.Text = "Foto usuario" b_foto_inci.Text = "Foto usuario"
ChangeCamera_Click ChangeCamera_Click
Else Else
@@ -442,9 +476,13 @@ Sub Camera1_PictureTaken (Data() As Byte)
p_camara.Visible = False p_camara.Visible = False
StopCamera StopCamera
End If End If
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
Else If b_foto_inci.Text = "Foto usuario" Then Else If b_foto_inci.Text = "Foto usuario" Then
DateTime.DateFormat="ddMMyyyyHHmmss" DateTime.DateFormat="ddMMyyyyHHmmss"
fototomada = fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$ nombreFoto = "usuario"
fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
Dim filename As String = fototomada Dim filename As String = fototomada
Dim dir As String = File.DirInternal Dim dir As String = File.DirInternal
camEx.SavePictureToFile(Data, dir, filename) camEx.SavePictureToFile(Data, dir, filename)
@@ -481,7 +519,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False) Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen )) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO_NOM2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (fototomada, Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen ))
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
ChangeCamera_Click ChangeCamera_Click
p_camara.Visible = False p_camara.Visible = False
@@ -493,6 +531,10 @@ Sub Camera1_PictureTaken (Data() As Byte)
Else Else
B4XPages.MainPage.tipo_venta = "PREVENTA" B4XPages.MainPage.tipo_venta = "PREVENTA"
End If End If
LogColor("Mandamos foto: " & fototomada, Colors.red)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${Subs.traeCliente}, ${fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
' B4XPages.ShowPage("productos") ' B4XPages.ShowPage("productos")
' p_transparentePidePeso.Visible = True ' p_transparentePidePeso.Visible = True
End If End If

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -73,6 +73,8 @@ Sub Globals
Private p_botonesNoVenta As Panel Private p_botonesNoVenta As Panel
Private Panel5 As Panel Private Panel5 As Panel
Private et_comentarioNoVenta As EditText Private et_comentarioNoVenta As EditText
Private r_opcion7 As RadioButton
Private r_opcion6 As RadioButton
Private r_opcion5 As RadioButton Private r_opcion5 As RadioButton
Private r_opcion4 As RadioButton Private r_opcion4 As RadioButton
Private r_opcion3 As RadioButton Private r_opcion3 As RadioButton
@@ -219,7 +221,7 @@ Sub MapFragment1_Ready
'''''''----------------------------MARKER AZUL - POR VISITAR '''''''----------------------------MARKER AZUL - POR VISITAR
If azul = 1 Or todos = 1 Then If azul = 1 Or todos = 1 Then
c.IsInitialized c.IsInitialized
c=skmt.ExecQuery("select CAT_CL_CODIGO,CAT_CL_NOMBRE,CAT_CL_LAT,CAT_CL_LONG from kmt_info where gestion = 0 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_LAT <> ' ' and CAT_CL_LONG <> ' ' and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1") c=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE, CAT_CL_LAT, CAT_CL_LONG from kmt_info where gestion = 0 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_LAT <> ' ' and CAT_CL_LONG <> ' ' and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
' skmt.Initialize(ruta,"kmt.db", True) ' skmt.Initialize(ruta,"kmt.db", True)
Log($"============== Resultados = ${c.RowCount}"$) Log($"============== Resultados = ${c.RowCount}"$)
If c.RowCount > 0 Then If c.RowCount > 0 Then
@@ -227,53 +229,70 @@ Sub MapFragment1_Ready
c.Position = i c.Position = i
' Log($"|${c.GetString("CAT_CL_LONG")}|${c.GetString("CAT_CL_LAT")}|"$) ' Log($"|${c.GetString("CAT_CL_LONG")}|${c.GetString("CAT_CL_LAT")}|"$)
' Log(i&"|"&c.GetString("CAT_CL_LAT")&"|") ' Log(i&"|"&c.GetString("CAT_CL_LAT")&"|")
LatitudRu = 0 ' LatitudRu = 0
Log(c.GetString("CAT_CL_CODIGO")&" "& c.GetString("CAT_CL_LAT")) If c.GetString("CAT_CL_LAT") = Null Or c.GetString("CAT_CL_LAT") = "null" Or c.GetString("CAT_CL_LAT") = "NULL" _
If c.GetString("CAT_CL_LAT") <> "" Then LatitudRu = c.GetString("CAT_CL_LAT") Or c.GetString("CAT_CL_LONG") = Null Or c.GetString("CAT_CL_LONG") = "null" Or c.GetString("CAT_CL_LONG") = "NULL" _
LongitudRU = 0 Then
If c.GetString("CAT_CL_LONG") <> "" Then LongitudRU = c.GetString("CAT_CL_LONG") ToastMessageShow($"Tienda con coordenadas incorrectas (${c.GetString("CAT_CL_CODIGO")})"$, False)
CODIGO=c.GetString("CAT_CL_CODIGO") Else
Tienda= c.GetString("CAT_CL_NOMBRE") Log(c.GetString("CAT_CL_CODIGO")&" "& c.GetString("CAT_CL_LAT")&", "&c.GetString("CAT_CL_LAT"))
MARK_AZUL = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_BLUE) If c.GetString("CAT_CL_LAT") <> "" Then LatitudRu = c.GetString("CAT_CL_LAT")
MARK_AZUL.Snippet = Tienda LongitudRU = 0
If c.GetString("CAT_CL_LONG") <> "" Then LongitudRU = c.GetString("CAT_CL_LONG")
CODIGO=c.GetString("CAT_CL_CODIGO")
Tienda= c.GetString("CAT_CL_NOMBRE")
MARK_AZUL = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_BLUE)
MARK_AZUL.Snippet = Tienda
Log(LatitudRu & "," & LongitudRU)
End If
Next Next
End If End If
c .Close c .Close
' Log("4")
If MARK_AZUL.IsInitialized Then LIST_AZUL.Add(MARK_AZUL) If MARK_AZUL.IsInitialized Then LIST_AZUL.Add(MARK_AZUL)
End If End If
'''''''----------------------------MARKER VERDE - VENTA '''''''----------------------------MARKER VERDE - VENTA
If verde = 1 Or todos = 1 Then If verde = 1 Or todos = 1 Then
c2.IsInitialized c2.IsInitialized
c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1 UNION select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info2 where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1") c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE, CAT_CL_LONG, CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1 UNION select CAT_CL_CODIGO, CAT_CL_NOMBRE, CAT_CL_LONG, CAT_CL_LAT from kmt_info2 where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
Log($"============== Resultados = ${c2.RowCount}"$) Log($"============== Resultados = ${c2.RowCount}"$)
For i = 0 To c2.RowCount -1 For i = 0 To c2.RowCount -1
c2.Position = i c2.Position = i
' Log($"|${c2.GetString("CAT_CL_LONG")}|${c2.GetString("CAT_CL_LAT")}|"$) ' Log($"|${c2.GetString("CAT_CL_LONG")}|${c2.GetString("CAT_CL_LAT")}|"$)
If IsNumber(c2.GetString("CAT_CL_LONG")) Then If c2.GetString("CAT_CL_LAT") = Null Or c2.GetString("CAT_CL_LAT") = "null" Or c2.GetString("CAT_CL_LAT") = "NULL" _
Or c2.GetString("CAT_CL_LONG") = Null Or c2.GetString("CAT_CL_LONG") = "null" Or c2.GetString("CAT_CL_LONG") = "NULL" _
Then
ToastMessageShow($"Tienda con coordenadas incorrectas (${c.GetString("CAT_CL_CODIGO")})"$, False)
Else
LongitudRU = c2.GetString("CAT_CL_LONG") LongitudRU = c2.GetString("CAT_CL_LONG")
LatitudRu = c2.GetString("CAT_CL_LAT") LatitudRu = c2.GetString("CAT_CL_LAT")
CODIGO=c2.GetString("CAT_CL_CODIGO") CODIGO=c2.GetString("CAT_CL_CODIGO")
Tienda= c2.GetString("CAT_CL_NOMBRE") Tienda= c2.GetString("CAT_CL_NOMBRE")
MARK_VERDE = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO,gmap.HUE_GREEN) MARK_VERDE = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO,gmap.HUE_GREEN)
MARK_VERDE.Snippet = Tienda MARK_VERDE.Snippet = Tienda
Log(LatitudRu & "," & LongitudRU)
End If End If
Next Next
Else Else
If verde = 1 Or todos = 1 Then If verde = 1 Or todos = 1 Then
c2.IsInitialized c2.IsInitialized
c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1") c2=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE, CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 2 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
Log($"============== Resultados = ${c2.RowCount}"$) Log($"============== Resultados = ${c2.RowCount}"$)
For i = 0 To c2.RowCount -1 For i = 0 To c2.RowCount -1
c2.Position = i c2.Position = i
' Log($"|${c2.GetString("CAT_CL_LONG")}|${c2.GetString("CAT_CL_LAT")}|"$) ' Log($"|${c2.GetString("CAT_CL_LONG")}|${c2.GetString("CAT_CL_LAT")}|"$)
LongitudRU = c2.GetString("CAT_CL_LONG") If c2.GetString("CAT_CL_LAT") = Null Or c2.GetString("CAT_CL_LAT") = "null" Or c2.GetString("CAT_CL_LAT") = "NULL" _
LatitudRu = c2.GetString("CAT_CL_LAT") Or c2.GetString("CAT_CL_LONG") = Null Or c2.GetString("CAT_CL_LONG") = "null" Or c2.GetString("CAT_CL_LONG") = "NULL" _
CODIGO=c2.GetString("CAT_CL_CODIGO") Then
Tienda= c2.GetString("CAT_CL_NOMBRE") ToastMessageShow($"Tienda con coordenadas incorrectas (${c.GetString("CAT_CL_CODIGO")})"$, False)
MARK_VERDE = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO,gmap.HUE_GREEN) Else
MARK_VERDE.Snippet = Tienda LongitudRU = c2.GetString("CAT_CL_LONG")
LatitudRu = c2.GetString("CAT_CL_LAT")
CODIGO=c2.GetString("CAT_CL_CODIGO")
Tienda= c2.GetString("CAT_CL_NOMBRE")
MARK_VERDE = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO,gmap.HUE_GREEN)
MARK_VERDE.Snippet = Tienda
Log(LatitudRu & "," & LongitudRU)
End If
Next Next
c2 .Close c2 .Close
If MARK_VERDE.IsInitialized Then LIST_VERDE.Add(MARK_VERDE) If MARK_VERDE.IsInitialized Then LIST_VERDE.Add(MARK_VERDE)
@@ -283,32 +302,46 @@ Sub MapFragment1_Ready
If rojo = 1 Or todos = 1 Then If rojo = 1 Or todos = 1 Then
c3.IsInitialized c3.IsInitialized
c3=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 3 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1") c3=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 3 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
Log($"============== Resultados = ${c3.RowCount}"$) Log($"============== Resultados = ${c3.RowCount}"$)
For i = 0 To c3.RowCount -1 For i = 0 To c3.RowCount -1
c3.Position = i c3.Position = i
' Log($"|${c3.GetString("CAT_CL_LONG")}|${c3.GetString("CAT_CL_LAT")}|"$) ' Log($"|${c3.GetString("CAT_CL_LONG")}|${c3.GetString("CAT_CL_LAT")}|"$)
LongitudRU = c3.GetDouble("CAT_CL_LONG") If c3.GetString("CAT_CL_LAT") = Null Or c3.GetString("CAT_CL_LAT") = "null" Or c3.GetString("CAT_CL_LAT") = "NULL" _
LatitudRu = c3.GetDouble("CAT_CL_LAT") Or c3.GetString("CAT_CL_LONG") = Null Or c3.GetString("CAT_CL_LONG") = "null" Or c3.GetString("CAT_CL_LONG") = "NULL" _
CODIGO = c3.GetString("CAT_CL_CODIGO") Then
Tienda= c3.GetString("CAT_CL_NOMBRE") ToastMessageShow($"Tienda con coordenadas incorrectas (${c.GetString("CAT_CL_CODIGO")})"$, False)
MARK_ROJO = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_RED) Else
MARK_ROJO.Snippet = Tienda
Next
Else
If rojo = 1 Or todos = 1 Then
c3.IsInitialized
c3=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 3 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
Log($"============== Resultados = ${c3.RowCount}"$)
For i = 0 To c3.RowCount -1
c3.Position = i
' Log($"|${c3.GetString("CAT_CL_LONG")}|${c3.GetString("CAT_CL_LAT")}|"$)
LongitudRU = c3.GetDouble("CAT_CL_LONG") LongitudRU = c3.GetDouble("CAT_CL_LONG")
LatitudRu = c3.GetDouble("CAT_CL_LAT") LatitudRu = c3.GetDouble("CAT_CL_LAT")
CODIGO = c3.GetString("CAT_CL_CODIGO") CODIGO = c3.GetString("CAT_CL_CODIGO")
Tienda= c3.GetString("CAT_CL_NOMBRE") Tienda= c3.GetString("CAT_CL_NOMBRE")
MARK_ROJO = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_RED) MARK_ROJO = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_RED)
MARK_ROJO.Snippet = Tienda MARK_ROJO.Snippet = Tienda
Log(LatitudRu & "," & LongitudRU)
End If
Next
Else
If rojo = 1 Or todos = 1 Then
c3.IsInitialized
c3=skmt.ExecQuery("select CAT_CL_CODIGO, CAT_CL_NOMBRE,CAT_CL_LONG,CAT_CL_LAT from kmt_info where gestion = 3 and CAT_CL_LAT is not null and CAT_CL_LONG is not null and CAT_CL_LAT <> 0 and CAT_CL_LONG <> 0 and CAT_CL_CODIGO <> 0 and CAT_CL_CODIGO <> 1")
Log($"============== Resultados = ${c3.RowCount}"$)
For i = 0 To c3.RowCount -1
c3.Position = i
' Log($"|${c3.GetString("CAT_CL_LONG")}|${c3.GetString("CAT_CL_LAT")}|"$)
If c3.GetString("CAT_CL_LAT") = Null Or c3.GetString("CAT_CL_LAT") = "null" Or c3.GetString("CAT_CL_LAT") = "NULL" _
Or c3.GetString("CAT_CL_LONG") = Null Or c3.GetString("CAT_CL_LONG") = "null" Or c3.GetString("CAT_CL_LONG") = "NULL" _
Then
ToastMessageShow($"Tienda con coordenadas incorrectas (${c.GetString("CAT_CL_CODIGO")})"$, False)
Else
LongitudRU = c3.GetDouble("CAT_CL_LONG")
LatitudRu = c3.GetDouble("CAT_CL_LAT")
CODIGO = c3.GetString("CAT_CL_CODIGO")
Tienda= c3.GetString("CAT_CL_NOMBRE")
MARK_ROJO = gmap.AddMarker2(LatitudRu, LongitudRU, CODIGO, gmap.HUE_RED)
Log(LatitudRu & "," & LongitudRU)
MARK_ROJO.Snippet = Tienda
End If
Next Next
If MARK_ROJO.IsInitialized Then LIST_ROJO.Add(MARK_ROJO) If MARK_ROJO.IsInitialized Then LIST_ROJO.Add(MARK_ROJO)
c3.Close c3.Close
@@ -320,7 +353,7 @@ Sub MapFragment1_Ready
' If MARK_VERDE.Visible Or MARK_ROJO.Visible Then ' If MARK_VERDE.Visible Or MARK_ROJO.Visible Then
' MARK_CEDIS.Remove ' MARK_CEDIS.Remove
' End If ' End If
' Log("Centramos camara " & LatitudRu & ", " & LongitudRU) Log("Centramos camara " & LatitudRu & ", " & LongitudRU)
Dim aa As CameraPosition Dim aa As CameraPosition
aa.Initialize(LatitudRu, LongitudRU, 15) ''' RECOMENDABLE CAMBIAR A 10 PARA QUE SE VEAN MAS MARCADORES aa.Initialize(LatitudRu, LongitudRU, 15) ''' RECOMENDABLE CAMBIAR A 10 PARA QUE SE VEAN MAS MARCADORES
gmap.AnimateCamera(aa) gmap.AnimateCamera(aa)
@@ -387,6 +420,7 @@ Sub GPS_LocationChanged (Parametro As Location)
' gmap.AnimateCamera(cp) ' gmap.AnimateCamera(cp)
' End If ' End If
' End If ' End If
ProgressDialogHide
End Sub End Sub
Sub Activity_Pause (UserClosed As Boolean) Sub Activity_Pause (UserClosed As Boolean)
@@ -437,10 +471,10 @@ Private Sub b_inicioVenta_Click
r_opcion3.Checked = False r_opcion3.Checked = False
r_opcion4.Checked = False r_opcion4.Checked = False
b_finVenta.Enabled = True b_finVenta.Enabled = True
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", Starter.lat_gps, Starter.lon_gps, "2", "", "", "") Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Inicia Venta", Subs.traeCliente, Subs.fechanormal(DateTime.Now), "", B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, "2", "", "", "")
Starter.enVenta = True Starter.enVenta = True
Subs.enVenta(1, "MAPA") Subs.enVenta(1, "MAPA")
l_venta.Text = "Ve a tu app de venta y cuando termines regresa aqui y presiona el botón para ingresar ""Peso"" o ""No Venta""" l_venta.Text = "Ve a tu app de venta y cuando termines regresa aqui y presiona el botón para ingresar ""Kilos"" o ""No Venta"""
LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red) LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
End Sub End Sub
@@ -485,7 +519,7 @@ Private Sub b_guardarPeso_Click
et_guardarPeso.Text = peso et_guardarPeso.Text = peso
Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "") Subs.guardaPeso("VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, peso, "", "", "")
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "Termina Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, "", "", $"Venta:${et_guardarPeso.text}"$)
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)")
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
@@ -498,6 +532,7 @@ Private Sub b_guardarPeso_Click
gmap.Clear gmap.Clear
todos = 1 todos = 1
MapFragment1_Ready MapFragment1_Ready
Subs.mandaPendientes
End Sub End Sub
Private Sub p_guardarPeso_Click Private Sub p_guardarPeso_Click
@@ -526,13 +561,17 @@ Private Sub b_guardaNoVenta_Click
If r_opcion1.Checked Then If r_opcion1.Checked Then
motivo = "CERRADO" motivo = "CERRADO"
Else If r_opcion2.Checked Then Else If r_opcion2.Checked Then
motivo = "NO COMPRA" motivo = "NO TIENE DINERO"
Else If r_opcion3.Checked Then Else If r_opcion3.Checked Then
motivo = "CON PRODUCTO" motivo = "NO ABRE MAÑANA"
Else If r_opcion4.Checked Then Else If r_opcion4.Checked Then
motivo = "NO ESTA EL ENCARGADO" motivo = "FALTA DE PRODUCTO"
Else If r_opcion5.Checked Then
motivo = "PROMOCION CON OTRO DISTRIBUIDOR"
Else If r_opcion6.Checked Then
motivo = "RECIBEN MUCHOS PROVEEDORES"
Else Else
motivo = "CANCELACION" motivo = "NO LE QUEDA EL DIA"
End If End If
If motivo = "CERRADO" And fotoCerrado = "" Then If motivo = "CERRADO" And fotoCerrado = "" Then
nombreFoto = Subs.traeCliente & "_cerrado" nombreFoto = Subs.traeCliente & "_cerrado"
@@ -546,7 +585,7 @@ Private Sub b_guardaNoVenta_Click
DateTime.DateFormat="yy-MM-dd HH:mm:ss" DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Dim fecha As String=DateTime.Date(DateTime.Now) Dim fecha As String=DateTime.Date(DateTime.Now)
Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado) Subs.guardaPeso("NO VENTA", Subs.traeAlmacen, Subs.traeRuta2(Subs.traeCliente), Subs.traeUsuarioDeBD, Subs.traeCliente, "0", motivo, et_comentarioNoVenta.text, fotoCerrado)
Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), Starter.lat_gps, Starter.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$) Subs.bitacora(Subs.fechanormal(DateTime.Now), Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeRuta, "No Venta", Subs.traeCliente, "", Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, motivo, et_comentarioNoVenta.text, $"Venta:${et_guardarPeso.text}"$)
Starter.enVenta = False Starter.enVenta = False
Subs.enVenta(0, "") Subs.enVenta(0, "")
Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)") Starter.skmt.ExecNonQuery("UPDATE kmt_info set gestion = 3 where CAT_CL_CODIGO In (select cuenta from cuentaa)")
@@ -557,6 +596,7 @@ Private Sub b_guardaNoVenta_Click
todos = 1 todos = 1
MapFragment1_Ready MapFragment1_Ready
End If End If
Subs.mandaPendientes
End Sub End Sub
Private Sub b_cancelaNoVenta_Click Private Sub b_cancelaNoVenta_Click
@@ -636,7 +676,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
If nombreFoto = "inicio" Then If nombreFoto = "inicio" Then
Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD)) Starter.skmt.ExecNonQuery2("INSERT INTO FOTOINICIAL (RUTAA, ALMACEN, LATITUD, LONGITUD, FECHAHORA, FOTO_NOM, USUARIO) VALUES (?,?,?,?,?,?,?)",Array As Object(Subs.traeRuta, Subs.traeAlmacen, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, sDate & " " & sTime, fototomada, Subs.traeUsuarioDeBD))
b_foto_inci.Text = "Foto usuario" b_foto_inci.Text = "Foto usuario"
ChangeCamera_Click ChangeCamera_Click
Else Else
@@ -644,9 +684,13 @@ Sub Camera1_PictureTaken (Data() As Byte)
p_camara.Visible = False p_camara.Visible = False
StopCamera StopCamera
End If End If
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
Else If b_foto_inci.Text = "Foto usuario" Then Else If b_foto_inci.Text = "Foto usuario" Then
DateTime.DateFormat="ddMMyyyyHHmmss" DateTime.DateFormat="ddMMyyyyHHmmss"
fototomada = fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$ nombreFoto = "usuario"
fototomada = DateTime.Now & $"_${nombreFoto}.jpg"$
Dim filename As String = fototomada Dim filename As String = fototomada
Dim dir As String = File.DirInternal Dim dir As String = File.DirInternal
camEx.SavePictureToFile(Data, dir, filename) camEx.SavePictureToFile(Data, dir, filename)
@@ -683,7 +727,7 @@ Sub Camera1_PictureTaken (Data() As Byte)
Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False) Dim out As OutputStream = File.OpenOutput(File.DirInternal & dir & Dir2, filename, False)
img.WriteToStream(out, 100, "PNG") img.WriteToStream(out, 100, "PNG")
out.Close out.Close
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (File.ReadBytes(File.DirInternal & dir & Dir2, fototomada), Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen )) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE FOTOINICIAL set FOTO_NOM2 = ? where USUARIO = ? and RUTAA = ? and ALMACEN = ? ", Array As Object (fototomada, Subs.traeUsuarioDeBD,Subs.traeRuta, Subs.traeAlmacen ))
b_foto_inci.Text = "Foto tienda" b_foto_inci.Text = "Foto tienda"
ChangeCamera_Click ChangeCamera_Click
p_camara.Visible = False p_camara.Visible = False
@@ -695,6 +739,10 @@ Sub Camera1_PictureTaken (Data() As Byte)
Else Else
B4XPages.MainPage.tipo_venta = "PREVENTA" B4XPages.MainPage.tipo_venta = "PREVENTA"
End If End If
LogColor("Mandamos foto: " & fototomada, Colors.red)
Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${Subs.traeCliente}, ${fototomada}"$)
Starter.mandaForma(Subs.traeAlmacen, Subs.traeRuta, Subs.traeCliente, fototomada)
' B4XPages.ShowPage("productos") ' B4XPages.ShowPage("productos")
' p_transparentePidePeso.Visible = True ' p_transparentePidePeso.Visible = True
End If End If

View File

@@ -93,7 +93,7 @@ Sub Service_Destroy
End Sub End Sub
Sub ENVIA_ULTIMA_GPS Sub ENVIA_ULTIMA_GPS
Dim logger As Boolean = False Dim logger As Boolean = True
If logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.Magenta) If logger Then LogColor("Iniciamos ENVIA_ULTIMA_GPS", Colors.Magenta)
Dim cmd As DBCommand Dim cmd As DBCommand
' cmd.Initialize ' cmd.Initialize
@@ -102,9 +102,37 @@ Sub ENVIA_ULTIMA_GPS
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize
cmd.Name = "UPDATE_ADM_ACTUAL2_GPS" cmd.Name = "UPDATE_ADM_ACTUAL2_GPS"
' En el campo CAT_RU_MONTO_ACT necesito que Me mandes el monto total de peso que llevan al momento. 1
' En el campo CAT_RU_TTOTAL_ACT necesito saber si Me estas mandando los clientes totales por día. 4
' En el campo CAT_RU_TVISIT_ACT necesito que Me mandes el total de visitas realizadas. 2
' En el campo CAT_RU_TVENTA_ACT necesito que Me mandes el total de visitas con venta. 3
Private totalPesoActual As String = 0
Private conVenta As String = 0
Private visitados As String = 0
Private totalAVisitar As String = 0
Private utr As Cursor = skmt.ExecQuery($"select sum(pe_peso) as totalPesoActual,
(select count(pe_cliente) from pesos where pe_tipo = 'VENTA') as conVenta,
(select count(distinct pe_cliente) from pesos) as visitados,
(select count(cat_cl_codigo) from kmt_info) as totalAVisitar
from pesos"$)
If utr.RowCount > 0 Then
utr.position = 0
If logger Then Log("totalPesoActual: " & utr.GetString("totalPesoActual"))
totalPesoActual = utr.GetString("totalPesoActual")
conVenta = utr.GetString("conVenta")
If logger Then Log("conVenta: " & utr.GetString("conVenta"))
visitados = utr.GetString("visitados")
If logger Then Log("visitados: " & utr.GetString("visitados"))
totalAVisitar = utr.GetString("totalAVisitar")
If logger Then Log("totalAVisitar: " & utr.GetString("totalAVisitar"))
End If
If B4XPages.MainPage.lat_gps.Length < 15 Then B4XPages.MainPage.lat_gps = B4XPages.MainPage.lat_gps&"0" If B4XPages.MainPage.lat_gps.Length < 15 Then B4XPages.MainPage.lat_gps = B4XPages.MainPage.lat_gps&"0"
cmd.Parameters = Array As Object(B4XPages.MainPage.montoActual, B4XPages.MainPage.clientestotal, B4XPages.MainPage.clientesventa,B4XPages.MainPage.clientesvisitados,B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,B4XPages.MainPage.batt,0, 0, 0,B4XPages.MainPage.ALMACEN,B4XPages.MainPage.rutapreventa) cmd.Parameters = Array As Object(totalPesoActual, visitados, conVenta, totalAVisitar, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, B4XPages.MainPage.batt, 0, 0, 0, B4XPages.MainPage.ALMACEN, B4XPages.MainPage.rutapreventa)
If logger Then Log($"montoActual: ${B4XPages.MainPage.montoActual}, cTotal: ${B4XPages.MainPage.clientestotal}, cVenta: ${B4XPages.MainPage.clientesventa}, cVisitados: ${B4XPages.MainPage.clientesvisitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, 0, 0, 0, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$) If logger Then Log($"Ruta: ${B4XPages.MainPage.rutapreventa}, pesoActual: ${totalPesoActual}, cTotal: ${totalAVisitar}, cVenta: ${conVenta}, cVisitados: ${visitados}, ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}, Batt: ${B4XPages.MainPage.batt}, 0, 0, 0, Almacen: ${B4XPages.MainPage.ALMACEN}, Ruta: ${B4XPages.MainPage.rutapreventa}"$)
reqManager.ExecuteCommand(cmd, "ubicacionTiempoReal") reqManager.ExecuteCommand(cmd, "ubicacionTiempoReal")
skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso")) skmt.ExecNonQuery2("Update cat_variables set CAT_VA_VALOR = ? WHERE CAT_VA_DESCRIPCION = ?" , Array As String(DateTime.Time(DateTime.Now),"HoraIngreso"))
'Reiniciamos el timer para cuando llamamos el Sub desde "seleccion" 'Reiniciamos el timer para cuando llamamos el Sub desde "seleccion"
@@ -142,6 +170,10 @@ Sub reinicializaReqManager(srv As String)
LogColor(srv, Colors.red) LogColor(srv, Colors.red)
End Sub End Sub
public Sub Tracker_UbicacionActualizada (Location1 As Location)
End Sub
Sub JobDone(Job As HttpJob) Sub JobDone(Job As HttpJob)
Log("JOBDONE STARTER") Log("JOBDONE STARTER")
Try Try
@@ -198,6 +230,20 @@ Sub JobDone(Job As HttpJob)
End If End If
Next Next
End If End If
'GUARDA PESOS
If result.Tag.As(String).StartsWith("insertPesos_") Then
For Each records() As Object In result.Rows
Private id() = Regex.Split("_", result.tag)
If id.Length > 1 Then
For Each k As String In result.Columns.Keys
' Log(RESULT.Tag & ": " & k & ": " & records(RESULT.Columns.Get(k)))
skmt.ExecNonQuery($"update pesos set PE_ENVIO_OK = 1 where PE_CLIENTE = '${id(1)}'"$)
' Log($"update bitacoragps set enviado = 1 where id = '${id(1)}'"$)
Next
End If
Next
End If
End If End If
End If End If
Log(">>>>> Job.Release Starter") Log(">>>>> Job.Release Starter")
@@ -206,3 +252,56 @@ Sub JobDone(Job As HttpJob)
Log(LastException) Log(LastException)
End Try End Try
End Sub End Sub
Sub mandaForma(almacen_ As String, ruta_ As String, cliente_ As String, imagen_ As String)
' 1. Inicializa un nuevo HttpJob
Dim job As HttpJob
job.Initialize("", Me)
' 2. Define la URL del servidor
Dim url As String = "https://keymon.net/ADM/POST_IMAGEN.aspx"
' 3. Crea un Map para los campos de texto del formulario
Dim params As Map
params.Initialize
params.Put("Almacen", almacen_)
params.Put("Ruta", ruta_)
params.Put("Cliente", cliente_)
params.Put("btnUpload", "Subir Imagen") ' El botón de submit también envía su valor
' --- CAMPOS OCULTOS DE ASP.NET ---
' Estos valores suelen ser dinámicos. Para este ejemplo, los ponemos fijos.
' Si falla, es posible que primero necesites hacer un GET a la página para obtener los valores actualizados.
' params.Put("__VIEWSTATE", "/wEPDwUKMjA1ODU4NjY1MGRkhSExd19qC1l3GdX6jvTnbM9pxPQR8urGAvs76UsqsDU=")
' params.Put("__VIEWSTATEGENERATOR", "6050E242")
' params.Put("__EVENTVALIDATION", "/wEdAAX5q9hoCUC745WBVO+/1ZWhraEDRZI2xn7OC3a5LAUoRlfyZCZSVcs/gLubOxTf2dCyEN4makXuwRjezU2tU1hn5vhDofrSSRcWtmHPtJVt4HHStaEfV6fkOi3uRRJDHybxwaB9FuVcVFxi7uoxeGMX")
' 4. Crea una lista de archivos a subir
Dim files As List
files.Initialize
' Creamos el objeto MultipartFileData para nuestra imagen
' KeyName: Es el atributo "name" del input en HTML ("Imagen")
' ContentType: El tipo de archivo
Dim mfd As MultipartFileData = Subs.CreateMultipartFileData(File.DirInternal&"/adm", imagen_, "Imagen", "image/jpeg")
files.Add(mfd)
' 5. Realiza la petición POST de tipo multipart
job.PostMultipart(url, params, files)
' 6. Espera a que el trabajo termine
Wait For (job) JobDone(job As HttpJob)
If job.Success Then
' El servidor respondió correctamente (HTTP 200 OK)
Log("Respuesta del servidor: " & job.GetString)
' MsgboxAsync("¡Imagen subida con éxito!", "Completado")
Else
' Hubo un error en la conexión o el servidor respondió con un error
Log("Error al subir la imagen: " & job.ErrorMessage)
' MsgboxAsync("Error: " & job.ErrorMessage, "Fallo")
End If
' Libera los recursos del job
job.Release
End Sub

View File

@@ -665,10 +665,12 @@ End Sub
'Regresa el almacen actual de la base de datos. 'Regresa el almacen actual de la base de datos.
Sub traeAlmacen As String 'ignore Sub traeAlmacen As String 'ignore
Private c As Cursor Private c As Cursor
Private a As String Private a As String = 0
c=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN") c=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN")
c.Position = 0 If c.RowCount > 0 Then
a = C.GetString("ID_ALMACEN") c.Position = 0
a = c.GetString("ID_ALMACEN")
End If
c.Close c.Close
Return a Return a
End Sub End Sub
@@ -808,7 +810,7 @@ Sub guardaPeso(tipo As String, almacen As String, ruta As String, usuario As Str
' CREATE TABLE PESOS(PE_IDALMACEN TEXT, PE_RUTA TEXT, PE_USUARIO TEXT, PE_CLIENTE TEXT, PE_PESO TEXT, PE_FECHA TEXT, PE_FECHA_SINC TEXT) ' CREATE TABLE PESOS(PE_IDALMACEN TEXT, PE_RUTA TEXT, PE_USUARIO TEXT, PE_CLIENTE TEXT, PE_PESO TEXT, PE_FECHA TEXT, PE_FECHA_SINC TEXT)
DateTime.DateFormat="yy-MM-dd HH:mm:ss" DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Dim fecha As String=DateTime.Date(DateTime.Now) Dim fecha As String=DateTime.Date(DateTime.Now)
B4XPages.MainPage.skmt.ExecNonQuery($"delete from pesos where pe_cliente in (select cuenta from cuentaa) and pe_tipo = '${tipo}'"$) B4XPages.MainPage.skmt.ExecNonQuery($"delete from pesos where pe_cliente in (select cuenta from cuentaa)"$) ' and pe_tipo = '${tipo}'
B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO, PE_FOTO_CERRADO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}', '${fotoCerrado}')"$) B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO, PE_FOTO_CERRADO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}', '${fotoCerrado}')"$)
' Log($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}')"$) ' Log($"INSERT INTO PESOS (PE_TIPO, PE_IDALMACEN, PE_RUTA, PE_USUARIO, PE_CLIENTE, PE_PESO, PE_FECHA, PE_MOTIVO, PE_COMENTARIO) VALUES('${tipo.ToUpperCase}', '${almacen}', '${ruta}', '${usuario}', '${cliente}', '${peso}', '${fecha}', '${motivo}', '${comentario}')"$)
End Sub End Sub
@@ -1584,6 +1586,18 @@ End Sub
'Mandar fecha de sync(sysdate) 'Mandar fecha de sync(sysdate)
Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precision As String, motivonoventa As String, motivonovisita As String, otro As String) Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As String, eventob As String, clienteb As String, iniciob As String, finb As String, latitudb As String, longitudb As String, precision As String, motivonoventa As String, motivonovisita As String, otro As String)
Log($"Bitacora: ${eventob}, mnven: ${motivonoventa}, mnvis: ${motivonovisita}"$) Log($"Bitacora: ${eventob}, mnven: ${motivonoventa}, mnvis: ${motivonovisita}"$)
If latitudb.Length < 4 Then
ProgressDialogShow2("Buscando ubicación ...", False)
CallSubDelayed(Tracker, "Track")
CallSubDelayed(Tracker, "StartFLPSmall")
Log($"Coords actuales: ${B4XPages.MainPage.lat_gps}, ${B4XPages.MainPage.lon_gps}"$)
If B4XPages.MainPage.lat_gps.Length > 3 And B4XPages.MainPage.lon_gps.Length > 3 Then
ProgressDialogHide
End If
End If
If Starter.Logger Then Log("bitacora") If Starter.Logger Then Log("bitacora")
Private cmd As DBCommand Private cmd As DBCommand
Private id As String Private id As String
@@ -1623,6 +1637,7 @@ Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As
End If End If
End If End If
If eventob <> "Inicia Venta" Then If eventob <> "Inicia Venta" Then
Log("===== MANDAMOS BITACORA ====")
Private c As Cursor = Starter.skmt.ExecQuery($"select * from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' order by fechab desc"$) Private c As Cursor = Starter.skmt.ExecQuery($"select * from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' order by fechab desc"$)
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
@@ -1651,3 +1666,48 @@ Sub nosQuedamosEnVenta As Boolean
End If End If
Return False Return False
End Sub End Sub
Sub mandaPendientes
Log(">>>>>>> MANDA PENDIENTES <<<<<<<")
' Dim PCNoArts As String
' Dim PCMonto As String
Private c As Cursor
If traeUsuarioDeBD <> "KMTS1" Then
'PESOS (Pendientes)
c = Starter.skmt.ExecQuery($"SELECT * FROM PESOS where PE_ENVIO_OK <> 1"$)
Log($"PESOS PENDIENTE: ${c.RowCount}"$)
If c.RowCount > 0 Then
For i = 0 To c.RowCount -1
c.Position = i
Dim cmd As DBCommand
cmd.Initialize
' cmd.Name = "insert_pedido2_ADM"
' cmd.Parameters = Array As Object(c.GetString("PE_CEDIS"),c.GetString("PE_CEDIS"),c.GetString("PE_IDALMACEN"),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"),Subs.traeRuta2(c.GetString("PE_CLIENTE")), c.GetString("PE_COSTO_SIN"),c.GetString("PE_DESC"),c.GetString("PE_FOLIO"),c.GetString("PE_CANTC"),c.GetString("PE_BCAJAS"),c.GetString("PE_TIPOPAGO"),c.GetString("PE_COMENTARIO"))
' reqManager.ExecuteCommand(cmd , $"ins_pedidosPendientes_prods_${c.GetString("PE_CLIENTE")}_${c.GetString("PE_PROID")}"$)
' Log($">>>> INS_PEDIDO= ${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")}, ${PCNoArts}, ${PCMonto}"$)
' sql.insert_pedido_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?))
' sql.insert_pedido2_INTMEX=INSERT INTO INTMEX.PEDIDO (PE_CODPROMO,PE_FECHA_SINC,PE_IDALMACEN,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN, PE_DESCUENTO, PE_TIPO, PE_CANT_TOTAL, PE_VENTA_TOTAL) VALUES ((?),SYSDATE,(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),(?),nvl((?),0),(?),(?),(?))
Dim cmd As DBCommand
cmd.Initialize
cmd.Name = "insertPesos"
' Log(c.GetString("PE_IDALMACEN")&", "&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")&", "&Subs.traeRuta2(c.GetString("PE_CLIENTE"))&", "& c.GetString("PE_COSTO_SIN")&", "&c.GetString("PE_DESC")&", "&c.GetString("PE_FOLIO")&", "& ALMACEN)
cmd.Parameters = Array As Object(c.GetString("PE_IDALMACEN"),c.GetString("PE_RUTA"),c.GetString("PE_USUARIO"),c.GetString("PE_CLIENTE"),c.GetString("PE_PESO"),c.GetString("PE_FECHA"),c.GetString("PE_TIPO"),c.GetString("PE_COMENTARIO"),c.GetString("PE_FOTO_CERRADO"))
' Log($">>>> insertPesos= ${C.GetString("PE_IDALMACEN")},${c.GetString("PE_RUTA")},${C.GetString("PE_USUARIO")},${C.GetString("PE_CLIENTE")},${C.GetString("PE_PESO")}, ${C.GetString("PE_FECHA")}"$)
Starter.reqManager.ExecuteCommand(cmd , $"insertPesos_${c.GetString("PE_CLIENTE")}"$)
Next
End If
c.Close
End If
End Sub
' Función de ayuda para crear el objeto MultipartFileData de forma más limpia
Sub CreateMultipartFileData(Dir As String, FileName As String, KeyName As String, ContentType As String) As MultipartFileData
Dim mfd As MultipartFileData
mfd.Initialize
mfd.Dir = Dir
mfd.FileName = FileName
mfd.KeyName = KeyName
mfd.ContentType = ContentType
Return mfd
End Sub

View File

@@ -158,9 +158,9 @@ Public Sub StopFLP
End If End If
End Sub End Sub
Sub flp_LocationChanged (Location1 As Location) public Sub flp_LocationChanged (Location1 As Location)
' ToastMessageShow("Loc changed", False) ' ToastMessageShow("Loc changed", False)
Log($"Loc changed:${Location1.Longitude},${Location1.Latitude}"$) LogColor($">>> Loc changed:${Location1.Longitude},${Location1.Latitude}"$, Colors.red)
B4XPages.MainPage.lat_gps = Location1.Latitude B4XPages.MainPage.lat_gps = Location1.Latitude
B4XPages.MainPage.lon_gps = Location1.Longitude B4XPages.MainPage.lon_gps = Location1.Longitude
Starter.lat_gps = Location1.Latitude Starter.lat_gps = Location1.Latitude
@@ -196,6 +196,8 @@ Sub flp_LocationChanged (Location1 As Location)
End If End If
CallSub2(Starter, "GPS_LocationChanged", Location1) CallSub2(Starter, "GPS_LocationChanged", Location1)
CallSub2(B4XPages.MainPage.clientes, "GPS_LocationChanged", Location1)
' CallSub2(B4XPages.MainPage.clientes, "Tracker_UbicacionActualizada", Location1)
' CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1) ' CallSub2(B4XPages.MainPage.cliente, "GPS_LocationChanged", Location1)
' CallSub2(gestion, "GPS_LocationChanged", Location1) ' CallSub2(gestion, "GPS_LocationChanged", Location1)
If B4XPages.MainPage.cliente.BT_QR.IsInitialized Then If B4XPages.MainPage.cliente.BT_QR.IsInitialized Then
@@ -304,6 +306,9 @@ Sub revisaUUG 'ignore
End Sub End Sub
Sub guardaYEnviaUbicacion(lat As String, lon As String) Sub guardaYEnviaUbicacion(lat As String, lon As String)
LogColor("#######################################", Colors.Magenta)
LogColor("#######################################", Colors.Magenta)
' LogColor("#######################################", Colors.Magenta)
DateTime.DateFormat="yy-MM-dd HH:mm:ss" DateTime.DateFormat="yy-MM-dd HH:mm:ss"
Private fecha As String = DateTime.Date(DateTime.Now) Private fecha As String = DateTime.Date(DateTime.Now)
DateTime.DateFormat="yyMMddHHmmss" DateTime.DateFormat="yyMMddHHmmss"
@@ -315,5 +320,6 @@ Sub guardaYEnviaUbicacion(lat As String, lon As String)
cmd.Name = "guardaHistorialUbicaciones" cmd.Name = "guardaHistorialUbicaciones"
If B4XPages.MainPage.lat_gps.Length < 15 Then B4XPages.MainPage.lat_gps = B4XPages.MainPage.lat_gps&"0" If B4XPages.MainPage.lat_gps.Length < 15 Then B4XPages.MainPage.lat_gps = B4XPages.MainPage.lat_gps&"0"
cmd.Parameters = Array As Object(Subs.traeAlmacen, Subs.traeRuta, usuario, lat, lon, fecha) cmd.Parameters = Array As Object(Subs.traeAlmacen, Subs.traeRuta, usuario, lat, lon, fecha)
' Log($"${Subs.traeAlmacen}, ${Subs.traeRuta}, ${usuario}, ${lat}, ${lon}, ${fecha}"$)
Starter.reqManager.ExecuteCommand(cmd, $"guardaHistorialUbicaciones_${id}"$) Starter.reqManager.ExecuteCommand(cmd, $"guardaHistorialUbicaciones_${id}"$)
End Sub End Sub