Version: 4.09.17.EP_d

Se agrego la suplencia y a cada cliente se le asigna su ruta correspondiente.
This commit is contained in:
IsR0d
2024-09-23 10:10:41 -06:00
parent 4de48f6db6
commit aed29b5deb
7 changed files with 114 additions and 29 deletions

View File

@@ -183,6 +183,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BITACORAGPS(fechab TEXT, usuariob TEXT, almacenb TEXT, rutab TEXT, eventob TEXT, clienteb TEXT, iniciob TEXT, finb TEXT, latitudb TEXT, longitudb TEXT, precision TEXT, motivonoventa TEXT, motivonovisita TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS kmt_info2(CAT_CL_FOTO BLOB, CAT_CL_NUM_SERIEFISICO TEXT, CAT_CL_MTOCOMPRA TEXT, CAT_CL_CEDIS TEXT, CAT_CL_LAT TEXT, CAT_CL_LONG TEXT, CAT_CL_FBAJA TEXT, CAT_CL_FALTA TEXT, CAT_CL_CP TEXT, CAT_CL_EDO TEXT, CAT_CL_MUNI TEXT, CAT_CL_COLONIA TEXT, CAT_CL_CALLE2 TEXT, CAT_CL_CALLE1 TEXT, CAT_CL_NOINT TEXT, CAT_CL_NOEXT TEXT, CAT_CL_CALLE TEXT, CAT_CL_EMAIL TEXT, CAT_CL_TELEFONO TEXT, CAT_CL_ATIENTE2 TEXT, CAT_CL_ATIENDE1 TEXT, CAT_CL_NOMBRE TEXT, CAT_CL_GIRO TEXT, CAT_CL_DIAS_VISITA TEXT, CAT_CL_TIPO_RUTA TEXT, CAT_CL_RUTA TEXT, CAT_CL_CODIGO TEXT, gestion NUMERIC)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_PRO2265(H_IDCLIENTE)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS RUTA_SUPLENCIA(RS_RUTA TEXT)")
' skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_VARIABLES (CAT_VA_DESCRIPCION TEXT, CAT_VA_VALOR TEXT)")
Subs.agregaColumna("HIST_ENCUESTA", "HE_LAT", "TEXT")
@@ -536,7 +537,7 @@ Sub JobDone(Job As HttpJob)
skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(1))
et_codigo.Text = ""
Private c2 As Cursor = skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info2")
Private c2 As Cursor = skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)")
c2.Position = 0
Private rutades As String = c2.GetString("CAT_CL_RUTA")
c2.Close
@@ -853,7 +854,7 @@ End Sub
Private Sub b_aceptar_Click
If et_codigo.Text <> "" Then
Private c2 As Cursor = skmt.ExecQuery("SELECT CAT_CL_RUTA FROM kmt_info2")
Private c2 As Cursor = skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)")
c2.Position = 0
Private rutades As String = c2.GetString("CAT_CL_RUTA")
c2.Close

View File

@@ -19,6 +19,7 @@ Sub Class_Globals
Dim b As Cursor
Dim e As Cursor
Dim f As Cursor
Dim ro As Cursor
Dim D2 As Cursor
Dim lv As ListView
Dim cargar As Button
@@ -225,6 +226,13 @@ Sub Class_Globals
Private p_marcasRes As Panel
Private p_sombra As Panel
Private Label22 As Label
Private l_rutasuplencia As Label
Dim l_ru_pri As Label
Private l_ru_sup As Label
Private Label4 As Label
Private Label2 As Label
Private Label25 As Label
End Sub
'You can add more parameters here.
@@ -263,10 +271,19 @@ Private Sub B4XPage_Created (Root1 As B4XView)
f.Position=0
l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close
' ro = B4XPages.MainPage.skmt.ExecQuery("select count(*) as CAT_CL_RUTA from kmt_info2")
' ro.Position = 0
' l_ru_pri.Text = ro.GetString("CAT_CL_RUTA")
' ro.Close
' If l_ru_pri.Text = 0 Then
' l_ru_pri.Text = 0
' End If
If l_ruta.Text = 0 Then
l_ruta.Text =0
Else
f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info2")
l_ruta.Text = 0
Else If l_ruta.Text > 0 Then
f=B4XPages.MainPage.skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)")
f.Position=0
l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close
@@ -300,8 +317,20 @@ Private Sub B4XPage_Created (Root1 As B4XView)
c.Close
End If
d.Close
e.Close
e.Close
CallSubDelayed(FirebaseMessaging, "SubscribeToTopics")
Private s As Cursor = B4XPages.MainPage.skmt.ExecQuery("select count(RS_RUTA) as cuenta, RS_RUTA FROM RUTA_SUPLENCIA")
s.Position = 0
If s.GetString("cuenta") = 0 Then
Label22.Visible = False
l_rutasuplencia.Visible = False
Else If s.GetString("cuenta") > 0 Then
Label22.Visible = True
l_rutasuplencia.Visible = True
l_rutasuplencia.Text = s.GetString("RS_RUTA")
End If
End Sub
Sub B4XPage_Appear
@@ -365,7 +394,7 @@ Sub B4XPage_Appear
If l_ruta.Text = 0 Then
l_ruta.Text =0
Else
f=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info2")
f=B4XPages.MainPage.skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)")
f.Position=0
l_ruta.Text = f.GetString("CAT_CL_RUTA")
f.Close
@@ -460,6 +489,23 @@ Sub B4XPage_Appear
CallSub(Starter, "ENVIA_ULTIMA_GPS")
' panel_5.Visible = False
' 'Log("panel5 visible FALSE")
Private s As Cursor = B4XPages.MainPage.skmt.ExecQuery("select count(RS_RUTA) as cuenta, RS_RUTA FROM RUTA_SUPLENCIA")
s.Position = 0
If s.GetString("cuenta") = 0 Then
Label22.Visible = False
l_rutasuplencia.Visible = False
l_rutasuplencia.Text = ""
Else If s.GetString("cuenta") > 0 Then
Label22.Visible = True
l_rutasuplencia.Visible = True
l_rutasuplencia.Text = s.GetString("RS_RUTA")
End If
End Sub
Sub Subir_Click
@@ -621,7 +667,7 @@ Sub Subir_Click
d.Close
c=B4XPages.MainPage.skmt.ExecQuery2("SELECT PE_RECALCULO,PE_RECALCULOTOT,PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO FROM PEDIDO WHERE PE_RECALCULO <> ? or PE_RECALCULO <> ? or PE_RECALCULO IS NOT NULL",Array As String("","null"))
d=B4XPages.MainPage.skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO")
d=B4XPages.MainPage.skmt.ExecQuery($"SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO where PE_RUTA = '${Subs.traeRuta}'"$)
If c.RowCount>0 Then
For i=0 To c.RowCount -1
c.Position=i
@@ -984,6 +1030,12 @@ Sub cargar_Click
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_pro2265")
If E_RUTA2.text <> "" Then
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO RUTA_SUPLENCIA(RS_RUTA) VALUES(?)",Array As String(E_RUTA2.Text))
E_RUTA2.Visible = False
Panel11.Visible = False
cmd.Initialize
cmd.Name = "select_cat_clientes_guna_GV2"
cmd.Parameters = Array As Object(E_RUTA2.text, ALMACEN)
@@ -1726,6 +1778,8 @@ Sub JobDone(Job As HttpJob)
If RESULT.Tag = "valida_pedido" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim CUANTOSP As Int = records(RESULT.Columns.Get("CUANTOSP"))
Log(cuantos_pedido)
Log(CUANTOSP)
If cuantos_pedido < = CUANTOSP Then
' ToastMessageShow("rojo val ok 1 cuantosp." , True)
datos_iguales = "ok"
@@ -1868,6 +1922,7 @@ Sub JobDone(Job As HttpJob)
End If
End If
End If
Job.Release
End Sub
@@ -1983,16 +2038,16 @@ Sub t2_tick
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO3")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO4")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM ENCUESTA_MODULO5")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM RUTA_SUPLENCIA")
B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("CARGA_DIA"))
B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("pasword"))
B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD"))
B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD"))
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM BITACORAGPS")
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(0))
B4XPage_Appear
E_RUTA2.Visible = False
E_RUTA2.Text = ""
Panel11.Visible = False
' If PB2.Progress = 0 Then
' S_CP.Text = "ENVIAR DATOS (K-1)"
@@ -2007,11 +2062,13 @@ Sub e_ruta_EnterPressed
RES = Msgbox2("Seguro que desa hacer el cierre todos los datos se borraran?","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
If RES = DialogResponse.POSITIVE Then
Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Fin Día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","")
t2.Initialize("T2", 1000) ' 1000 = 1 second
t2.Enabled = True
Label22.Visible = False
l_rutasuplencia.Visible = False
l_rutasuplencia.Text = ""
End If
End If
@@ -2233,10 +2290,10 @@ Sub resdia_Click
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
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
@@ -2284,24 +2341,51 @@ Sub resdia_Click
s.Position=0
Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE FROM PEDIDO WHERE (PE_RECALCULO <> ? or PE_RECALCULO <> ? OR PE_RECALCULO IS NOT NULL)",Array As String("","null"))
s5.Position = 0
L_REAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
s.Close
' l_ru_pri.Text = NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE"),0,2,2,False)
s.Close
Else If s3.RowCount = 0 Then
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO ")
s.Position=0
' l_ru_pri.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
L_REAL.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
s.Close
End If
'Prueba0
Private ru_o As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT IFNULL(PE_RUTA, 0) AS PE_RUTA, IFNULL(SUM(PE_COSTO_TOT), 0) AS TOTAL_CLIE FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA IS NULL", Null)
ru_o.Position=0
Log("------------->RutaOriginal "&ru_o)
If ru_o.GetString("PE_RUTA") = 0 Then
Label2.Text = "N/A"
Else if ru_o.RowCount >=1 Then
Private rutOr As String = ru_o.GetString("PE_RUTA")
Label2.Text = "Ruta " & rutOr
l_ru_pri.Text = NumberFormat2(ru_o.GetString("TOTAL_CLIE"), 0, 2, 2, False)
End If
ru_o.Close
'Prueba1
Private ru_s As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT IFNULL(PE_RUTA, 0) As PE_RUTA, IFNULL(SUM(PE_COSTO_TOT), 0) As TOTAL_CLIE FROM PEDIDO LEFT JOIN RUTA_SUPLENCIA ON PE_RUTA = RS_RUTA WHERE RS_RUTA Is Not Null", Null)
ru_s.Position = 0
If ru_s.GetString("PE_RUTA") = 0 Then
Label4.Text = "N/A"
Else
Private RuSu As String = ru_s.GetString("PE_RUTA")
Label4.Text = "Ruta " & RuSu
ru_s.Position = 0
l_ru_sup.Text = NumberFormat2(ru_s.GetString("TOTAL_CLIE"), 0, 2, 2, False)
End If
ru_s.Close
Dim cuantos_obj As String
c=B4XPages.MainPage.skmt.ExecQuery("Select count(*) AS TOTAL from HIST_MARCAS_CUOTAS ")
c.Position = 0

Binary file not shown.

Binary file not shown.

View File

@@ -251,7 +251,7 @@ Version=12.8
#Region Project Attributes
#ApplicationLabel: Guna V3.1
#VersionCode: 1
#VersionName: 4.09.06.EP_d
#VersionName: 4.09.17.EP_d
'SupportedOrientations possible values: unspecified, landscape or portrait.
#SupportedOrientations: portrait
#CanInstallToExternalStorage: False

View File

@@ -76,6 +76,6 @@ ModuleClosedNodes6=8,9,10
ModuleClosedNodes7=
ModuleClosedNodes8=
ModuleClosedNodes9=
NavigationStack=Subs,agregaColumna,1173,0,Subs,guardaAppInfo,1186,0,B4XMainPage,Class_Globals,52,0,B4XMainPage,B4XPage_Appear,274,0,B4XMainPage,B4XPage_Created,144,2,Starter,Process_Globals,33,0,Starter,Service_Create,54,0,Main,Globals,25,0,Main,Process_Globals,21,0,Subs,revisaPromoProcterPRO3009,1425,0,Subs,validaPromoProcterPRO3009,1460,0
NavigationStack=C_Principal,Class_Globals,222,0,C_Principal,CARGA_Click,2361,0,Diseñador Visual,resdia.bal,-100,3,C_Principal,resdia_Click,2255,6,C_Principal,Subir_Click,504,0,Diseñador Visual,principal.bal,-100,3,C_Principal,B4XPage_Appear,494,0,B4XMainPage,Class_Globals,25,0,Main,Activity_Create,27,0,Main,Globals,25,0
SelectedBuild=0
VisibleModules=23,2,24,13,14,4,6,9,12,5

View File

@@ -661,7 +661,7 @@ End Sub
Sub traeRuta As String 'ignore
Private c As Cursor
Private r As String
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA from kmt_info2 limit 1")
c=B4XPages.MainPage.skmt.ExecQuery("select distinct CAT_CL_RUTA from kmt_info2 where CAT_CL_RUTA not in (select * from ruta_suplencia)")
r = "0"
If c.RowCount > 0 Then
c.Position=0
@@ -748,7 +748,7 @@ End Sub
Sub guardaProducto(cedis As String, costoU As String, cant As String, nombre As String, prodId As String, clienteId As String, fecha As String, usuario As String, rutaV As String, precioSin As String, tipoVenta As String)
LogColor("guardaProducto: "&prodId&", cant="&cant&" - TV:"&tipoVenta, Colors.Magenta)
Private c As Cursor
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_FOLIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (cedis, (cant * costoU), costoU, cant, nombre, prodId, clienteId, fecha, usuario, rutaV, precioSin, tipoVenta))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO PEDIDO (PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO,PE_RUTA,PE_COSTO_SIN,PE_FOLIO) VALUES(?,?,?,?,?,?,?,?,?,?,?,?) ", Array As Object (cedis, (cant * costoU), costoU, cant, nombre, prodId, clienteId, fecha, usuario, traeRutaBitacora, precioSin, tipoVenta))
B4XPages.MainPage.skmt.ExecNonQuery2("update cat_gunaprod set cat_gp_almacen = cat_gp_almacen - ? where cat_gp_id = ? ", Array As Object(cant, prodId))
c=B4XPages.MainPage.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE, SUM(PE_COSTO_SIN) AS TOTAL_CLIE_SIN FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
c.Position=0
@@ -1262,7 +1262,7 @@ End Sub
'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 )
Log(motivonovisita)
Log("bitacora")
' Log("bitacora")
Private cmd As DBCommand
cmd.Initialize
cmd.Name = "mandaBitacora3_GUNA"
@@ -1281,7 +1281,7 @@ Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As
If eventob = "Carga día suplencia" Then nombreCliente = traeRutasSup
If eventob <> "Termina Venta" And eventob <> "No Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"INSERT INTO BITACORAGPS (fechab, usuariob , almacenb , rutab , eventob , clienteb , iniciob , finb , latitudb, longitudb , precision , motivonoventa , motivonovisita) VALUES ('${fechab}' ,'${usuariob}' , '${almacenb}' , '${rutab}' , '${eventob}' , '${clienteb}' , '${iniciob}' , '${finb}' , '${latitudb}' , '${longitudb}' , '${precision}' , '${motivonoventa}' , '${motivonovisita}')"$)
Log($"'${almacenb}', '${usuariob}', '${rutab}', '${eventob}', '${clienteb}', '${nombreCliente}','${ iniciob}', '${finb}','${ latitudb}','${ longitudb}', '${precision}', '${motivonoventa}', '${motivonovisita}', '${fechab}'"$)
' Log($"'${almacenb}', '${usuariob}', '${rutab}', '${eventob}', '${clienteb}', '${nombreCliente}','${ iniciob}', '${finb}','${ latitudb}','${ longitudb}', '${precision}', '${motivonoventa}', '${motivonovisita}', '${fechab}'"$)
' TMP_ALMACEN, TMP_USUARIO, TMP_RUTA, TMP_EVENTO, TMP_ID_CLIENTE, TMP_NOMBRE_CLIENTE, TMP_INICIO, TMP_FINAL, TMP_LATITUD, TMP_LONGITUD, TMP_PRESICION, TMP_MOTIVO_NO_VENTA, TMP_MOTIVO_NO_VISITA, TMP_FECHA_SINC, TMP_FECHA_MOVIL
' cmd.Parameters = Array As Object(almacenb, usuariob, rutab, eventob, clienteb, nombreCliente, iniciob, finb, latitudb, longitudb, precision, motivonoventa, motivonovisita, fechab)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
@@ -1316,7 +1316,7 @@ Sub bitacora(fechab As String, usuariob As String, almacenb As String, rutab As
Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
Log("Mandamos bitacora")
' Log("Mandamos bitacora")
End Sub
'En geocerca si mete la contraseña poner 0 en precision gps y si esta dentro de los 50 mts poner 1 y 2 para eventos que no lo ocupen