Version 4.08.18.EP_d

Se agregaron las funciones de Bitacora GPS
Se agrego el boton de Inicio / Fin Venta
La bitacora GPS guarda La hora de cargar dia, al darle fin dia tambien guarda su venta.
This commit is contained in:
IsR0d
2024-08-20 16:21:06 -06:00
parent 0e8ab30f53
commit cb2290b729
10 changed files with 382 additions and 74 deletions

View File

@@ -180,7 +180,8 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_CLIENTE (HEC_CLIENTE TEXT, HEC_MODULO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_CLIENTE (HEC_CLIENTE TEXT, HEC_MODULO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_AVISO_GIRO (HEAV_CLIENTE TEXT, HEAV_MODULO TEXT, HEAV_AVISO TEXT, HEAV_GIRO TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA_AVISO_GIRO (HEAV_CLIENTE TEXT, HEAV_MODULO TEXT, HEAV_AVISO TEXT, HEAV_GIRO TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT, HE_LAT TEXT, HE_LON TEXT)") skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_ENCUESTA (HE_CLIE TEXT, HE_RES TEXT, HE_FECHA TEXT, HE_TIPO TEXT, HE_LAT TEXT, HE_LON 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 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)")
Subs.agregaColumna("HIST_ENCUESTA", "HE_LAT", "TEXT") Subs.agregaColumna("HIST_ENCUESTA", "HE_LAT", "TEXT")
Subs.agregaColumna("HIST_ENCUESTA", "HE_FOTO", "BLOB") Subs.agregaColumna("HIST_ENCUESTA", "HE_FOTO", "BLOB")
Subs.agregaColumna("PEDIDO", "PE_RECALCULO", "TEXT") Subs.agregaColumna("PEDIDO", "PE_RECALCULO", "TEXT")

View File

@@ -416,7 +416,13 @@ Sub Class_Globals
Private teclado As IME Private teclado As IME
Dim fototomada As String Dim fototomada As String
Private b_foto As Button Private b_foto As Button
Dim precision As String
Private b_Inicio_Fin_venta As Button
Dim dentroDeGeocerca As Boolean = False
Dim motivoNoVenta, motivoNoVisita As String
Dim contadorIniciarVenta As Int = 0
Dim IniVenNO As Boolean = False
End Sub End Sub
'You can add more parameters here. 'You can add more parameters here.
@@ -474,8 +480,11 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear Sub B4XPage_Appear
que_modulo = 1 que_modulo = 1
dentroDeGeocerca = False
indicePregunta = 0 indicePregunta = 0
If TOMAR_FOTO <> 0 Then Cuestionario If TOMAR_FOTO <> 0 Then Cuestionario
@@ -654,9 +663,18 @@ Sub B4XPage_Appear
End If End If
' Log(distance) ' Log(distance)
b_Inicio_Fin_venta.Text = "INICIAR VENTA"
b_Inicio_Fin_venta.BringToFront
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
' If Not(Starter.enVenta) And la_cuenta.Text <> "0" Then
b_Inicio_Fin_venta.Visible = True
Log("EnVenta Visible")
Else
Log("EnVenta NO Visible")
b_Inicio_Fin_venta.Visible = False
End If
' LogColor(">>>>>> EN VENTA: " & Starter.enVenta, Colors.red)
' Log(Subs.InvSuficientePromoEsp) ' Log(Subs.InvSuficientePromoEsp)
@@ -719,19 +737,67 @@ Sub B4XPage_Appear
Private cantres As Float = des + rec Private cantres As Float = des + rec
Log( NumberFormat2(cantres,0,2,2,False)) Log( NumberFormat2(cantres,0,2,2,False))
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(NumberFormat2(cantres,0,2,2,False)))
If c4.RowCount > 0 Then Private c5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT Ifnull(SUM(PE_CANT),0) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU > ? and PE_COSTOU < ?",Array As String(des, cantres))
For i = 0 To c4.RowCount -1 If c5.RowCount > 0 Then
c4.Position = i c5.Position = 0
Private recalculo As Float = c4.GetString("PE_COSTOU") - NumberFormat2(cantres,0,2,2,False) Log(c5.GetString("PE_CANT"))
LogColor(recalculo,Colors.Blue)
Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False) If c5.GetString("PE_CANT") = "0" Then
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(NumberFormat2(cantres,0,2,2,False)))
If c4.RowCount > 0 Then
For i = 0 To c4.RowCount -1
c4.Position = i
Private recalculo As Float = c4.GetString("PE_COSTOU") - NumberFormat2(cantres,0,2,2,False)
LogColor(recalculo,Colors.Blue)
Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False)
' Log(recalculo&"|||||"&recalculototal) ' Log(recalculo&"|||||"&recalculototal)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String(NumberFormat2(recalculo,0,2,2,False) ,NumberFormat2(recalculototal,0,2,2,False), c4.GetString("PE_PROID"))) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String(NumberFormat2(recalculo,0,2,2,False) ,NumberFormat2(recalculototal,0,2,2,False), c4.GetString("PE_PROID")))
Next Next
End If
c4.Close
Else
Private c6 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT SUM(PE_CANT) AS PE_CANT FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(cantres))
If c6.RowCount > 0 Then
c6.Position = 0
Log(c6.GetString("PE_CANT"))
Private rec1 As Float = (cantres * c5.GetString("PE_CANT"))/c6.GetString("PE_CANT")
Log( NumberFormat2(rec1,0,2,2,False))
Private cantres1 As Float = cantres + rec1
Log( NumberFormat2(cantres1,0,2,2,False))
Private c4 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("SELECT * FROM PEDIDO JOIN CAT_PROMO_ESP ON CAT_PE_ID = PE_PROID WHERE PE_CLIENTE IN (Select CUENTA FROM CUENTAA) AND PE_COSTOU >= ?",Array As String(NumberFormat2(cantres1,0,2,2,False)))
If c4.RowCount > 0 Then
For i = 0 To c4.RowCount -1
c4.Position = i
Private recalculo As Float = c4.GetString("PE_COSTOU") - NumberFormat2(cantres1,0,2,2,False)
LogColor(recalculo,Colors.Blue)
Private recalculototal As Float = c4.GetString("PE_CANT") * NumberFormat2(recalculo,0,2,2,False)
' Log(recalculo&"|||||"&recalculototal)
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE PEDIDO set PE_RECALCULO = ?, PE_RECALCULOTOT = ? WHERE PE_CLIENTE IN (SELECT CUENTA FROM CUENTAA) AND PE_PROID = ? ",Array As String(NumberFormat2(recalculo,0,2,2,False) ,NumberFormat2(recalculototal,0,2,2,False), c4.GetString("PE_PROID")))
Next
End If
c4.Close
End If
End If
End If End If
End If End If
End If End If
@@ -739,7 +805,7 @@ Sub B4XPage_Appear
c.Close c.Close
c2.Close c2.Close
c3.Close c3.Close
c4.Close
End If End If
If Not(Subs.traemontoprod) Then If Not(Subs.traemontoprod) Then
@@ -788,7 +854,7 @@ Sub B4XPage_Appear
If s.GetString("TOTAL_CLIE") = Null Then If s.GetString("TOTAL_CLIE") = Null Then
l_total.Text = 0 l_total.Text = 0
Else Else
l_total.Text =NumberFormat2((s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE")),0,2,2,False) l_total.Text =NumberFormat2((s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE")),0,2,2,False)
End If End If
total_cliente = s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE") total_cliente = s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE")
m_lat = "0" m_lat = "0"
@@ -834,8 +900,8 @@ Sub B4XPage_Appear
Log(s.GetString("TOTAL_CLIE")) Log(s.GetString("TOTAL_CLIE"))
If s.GetString("TOTAL_CLIE") = Null Then If s.GetString("TOTAL_CLIE") = Null Then
l_total.Text = 0 l_total.Text = 0
Else Else
l_total.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False) l_total.Text =NumberFormat2(s.GetString("TOTAL_CLIE"),0,2,2,False)
End If End If
total_cliente = s.GetString("TOTAL_CLIE") total_cliente = s.GetString("TOTAL_CLIE")
m_lat = "0" m_lat = "0"
@@ -873,10 +939,13 @@ Sub B4XPage_Appear
If geo = "0" Then If geo = "0" Then
gest.Visible = True gest.Visible = True
Tels.Visible = True Tels.Visible = True
Log("AQUI") ' b_Inicio_Fin_venta.Visible = True
precision = "1"
' Log("Hacemos visible el boton de Inicio Venta")
Else If geo = "1" And distance > 100 Then Else If geo = "1" And distance > 100 Then
gest.Visible = False gest.Visible = False
Tels.Visible = False Tels.Visible = False
b_Inicio_Fin_venta.Visible = False
' ToastMessageShow("aaa", False) ' ToastMessageShow("aaa", False)
End If End If
@@ -890,13 +959,11 @@ Sub GPS_LocationChanged (Location1 As Location)
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps) ' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
End If End If
If m_lat.Length > 0 And B4XPages.MainPage.lat_gps <> "0" Then If m_lat.Length > 0 And B4XPages.MainPage.lat_gps <> "0" Then
Dim l1, l2 As Location Dim l1, l2 As Location
l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps) l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
' Log($"Coordenadas de la tienda - lat:${m_lat}, lon:${m_lon}"$) ' Log($"Coordenadas de la tienda - lat:${m_lat}, lon:${m_lon}"$)
l2.Initialize2(m_lat, m_lon) l2.Initialize2(m_lat, m_lon)
BT_QR.Enabled = True BT_QR.Enabled = True
LA_GPS.TextColor = Colors.Blue LA_GPS.TextColor = Colors.Blue
LA_GPS.Text = "CON UBICACION GPS" LA_GPS.Text = "CON UBICACION GPS"
@@ -917,124 +984,128 @@ Sub GPS_LocationChanged (Location1 As Location)
End If End If
c.Close c.Close
If gest.IsInitialized And Tels.IsInitialized Then If gest.IsInitialized And Tels.IsInitialized Then
If geo = "0" Then
If geo = "0" Then gest.Visible = True
gest.Visible = True Tels.Visible = True
Tels.Visible = True iniciofin
Else If geo = "1" Then Else If geo = "1" Then
gest.Visible = False gest.Visible = False
Tels.Visible = False Tels.Visible = False
b_Inicio_Fin_venta.Visible = False
End If
End If End If
End If
If geo = "1" Then If geo = "1" Then
If distance < 100 Then If distance < 100 Then
LA_GEO.TextColor = Colors.Blue LA_GEO.TextColor = Colors.Blue
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
iniciofin
precision = "1"
ToastMessageShow("DENTRO de rango GPS", False) ToastMessageShow("DENTRO de rango GPS", False)
Else If habi = "1" Then Else If habi = "1" Then
c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD")) c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LATITUD"))
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
Dim al_latitud As String = c.GetString("CAT_VA_VALOR") Dim al_latitud As String = c.GetString("CAT_VA_VALOR")
End If End If
c.Close c.Close
c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD")) c = skmt.ExecQuery2("SELECT CAT_VA_VALOR FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD"))
If c.RowCount > 0 Then If c.RowCount > 0 Then
c.Position = 0 c.Position = 0
Dim al_longitud As String = c.GetString("CAT_VA_VALOR") Dim al_longitud As String = c.GetString("CAT_VA_VALOR")
End If End If
c.Close c.Close
Dim ubi1, ubi2 As Location Dim ubi1, ubi2 As Location
ubi1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps) ubi1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
ubi2.Initialize2(al_latitud, al_longitud) ubi2.Initialize2(al_latitud, al_longitud)
Dim distancealm As Long Dim distancealm As Long
distancealm = ubi1.DistanceTo(ubi2) distancealm = ubi1.DistanceTo(ubi2)
If distancealm < 50 Then If distancealm < 50 Then
precision = "0"
LA_GEO.TextColor = Colors.Blue LA_GEO.TextColor = Colors.Blue
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
iniciofin
ToastMessageShow("DENTRO de rango GPS", False) ToastMessageShow("DENTRO de rango GPS", False)
Else If distancealm > 50 Then Else If distancealm > 50 Then
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)") c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then If c.RowCount > 0 Then
precision = "0"
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
iniciofin
Else If c.RowCount = 0 Then Else If c.RowCount = 0 Then
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)") c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then If c.RowCount > 0 Then
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
precision = "0"
iniciofin
Else If c.RowCount = 0 Then Else If c.RowCount = 0 Then
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
gest.Visible = True gest.Visible = True
iniciofin
End If End If
End If End If
End If End If
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
gest.Visible = True gest.Visible = True
iniciofin
End If End If
End If End If
Else If habi = 0 Then Else If habi = 0 Then
c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)") c = skmt.ExecQuery("SELECT PC_CLIENTE FROM PEDIDO_CLIENTE WHERE PC_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then If c.RowCount > 0 Then
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
iniciofin
Else If c.RowCount = 0 Then Else If c.RowCount = 0 Then
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
b_Inicio_Fin_venta.Visible = False
c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)") c = skmt.ExecQuery("SELECT NV_CLIENTE FROM NOVENTA CLIENTE WHERE NV_CLIENTE IN (Select CUENTA from cuentaa)")
If c.RowCount > 0 Then If c.RowCount > 0 Then
Tels.Visible = True Tels.Visible = True
gest.Visible = True gest.Visible = True
iniciofin
Else If c.RowCount = 0 Then Else If c.RowCount = 0 Then
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
gest.Visible = True gest.Visible = True
iniciofin
End If End If
End If End If
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
gest.Visible = True gest.Visible = True
iniciofin
End If End If
End If End If
Else Else
Tels.Visible = False Tels.Visible = False
gest.Visible = False gest.Visible = False
b_Inicio_Fin_venta.Visible = False
LA_GEO.TextColor = Colors.Red LA_GEO.TextColor = Colors.Red
If ALMACEN = "1" Then If ALMACEN = "1" Then
Tels.Visible = False Tels.Visible = False
gest.Visible = True gest.Visible = True
iniciofin
End If End If
End If End If
End If End If
End If End If
@@ -1051,7 +1122,20 @@ Sub GPS_LocationChanged (Location1 As Location)
End Sub End Sub
Private Sub p_pideGeoPass_Click Private Sub p_pideGeoPass_Click
End Sub
Private Sub iniciofin
If Starter.VarX = 0 Then
b_Inicio_Fin_venta.Visible = True
Log("Hacemos visible el boton de Inicio Venta2")
Else
b_Inicio_Fin_venta.Visible = False
End If
End Sub End Sub
Private Sub b_geopass_Click Private Sub b_geopass_Click
@@ -1877,6 +1961,13 @@ Sub DATOS_Click
End Sub End Sub
Sub Guardar_Click Sub Guardar_Click
Guardar.SendToBack
b_Inicio_Fin_venta.Visible = True
b_Inicio_Fin_venta.Text = "TERMINAR VENTA"
Log("Hacemos visible el boton de Terminar Venta3")
End Sub
Sub guardadoventa
DateTime.DateFormat = "MM/dd/yyyy" DateTime.DateFormat = "MM/dd/yyyy"
sDate=DateTime.Date(DateTime.Now) sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now) sTime=DateTime.Time(DateTime.Now)
@@ -1896,21 +1987,15 @@ Sub Guardar_Click
LogColor(s3.RowCount,Colors.Yellow) LogColor(s3.RowCount,Colors.Yellow)
If s3.RowCount > 0 Then If s3.RowCount > 0 Then
Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO = ? AND PE_RECALCULO = ? AND PE_RECALCULO = ?",Array As String("","null",Null)) Private s As Cursor=B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(pe_costo_tot),0) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO = ? AND PE_RECALCULO = ? AND PE_RECALCULO = ?",Array As String("","null",Null))
s.Position = 0 s.Position = 0
Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO <> ? AND PE_RECALCULO <> ? AND PE_RECALCULO <> ?",Array As String("","null",Null)) Private s5 As Cursor = B4XPages.MainPage.skmt.ExecQuery2("select iFNULL(sum(PE_RECALCULOTOT),0) as TOTAL_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa) and PE_RECALCULO <> ? AND PE_RECALCULO <> ? AND PE_RECALCULO <> ?",Array As String("","null",Null))
s5.Position = 0 s5.Position = 0
Private suma As Float = s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE") Private suma As Float = s.GetString("TOTAL_CLIE") + s5.GetString("TOTAL_CLIE")
s.Close s.Close
Else If s3.RowCount = 0 Then 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 WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") 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 WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)")
s.Position=0 s.Position=0
@@ -1951,6 +2036,20 @@ Sub Guardar_Click
End Try End Try
DateTime.TimeFormat = "HH:mm:ss" DateTime.TimeFormat = "HH:mm:ss"
B4XPages.ShowPage("Principal") B4XPages.ShowPage("Principal")
If la_cuenta.Text <> "0" Then 'Si es ABORDO, no mostramos el boton b_Inicio_Fin_venta y regresamos a Principal.
b_Inicio_Fin_venta.Visible = True
Log("Hacemos visible el boton de Inicio Venta3")
Else
b_Inicio_Fin_venta.Visible = False
Starter.enVenta = False
LogColor(">>>>>> ABORDO: " & Starter.enVenta, Colors.red)
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Venta Abordo", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
Subs.iniciaActividad("principal")
B4XPages.ShowPageAndRemovePreviousPages("Principal")
End If
End Sub End Sub
Sub NUEVO_Click Sub NUEVO_Click
@@ -2071,9 +2170,6 @@ Sub B_IMP_Click
Impresion Impresion
End If End If
End Sub End Sub
Sub Impresion2 Sub Impresion2
@@ -2151,7 +2247,6 @@ Sub Impresion2
Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
Printer1.WriteString("-----------PREVENTA-----------" & CRLF) Printer1.WriteString("-----------PREVENTA-----------" & CRLF)
' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show.
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS <> ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("DUR")) s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS <> ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("DUR"))
@@ -2354,7 +2449,6 @@ Sub Impresion
Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF) Printer1.WriteString("Entre calle1: " & l_entre1.Text & CRLF)
Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF) Printer1.WriteString("Entre Calle2: " & l_entre2.Text & CRLF)
Printer1.WriteString("-----------PREVENTA-----------" & CRLF) Printer1.WriteString("-----------PREVENTA-----------" & CRLF)
' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show. ' aqui es donde esta el pedo de julieta de los descuentos quitar el precio2 pero meter un if para saber si es ruta especial o es normal o que show.
s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS <> ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("DUR")) s=skmt.ExecQuery2("select PE_PRONOMBRE, PE_CANT, length(pe_cant) as L_CANT, PE_COSTOU, length(PE_COSTOU) as L_COSTOU,PE_CANT * PE_COSTOU AS PE_COSTO_TOT, length(PE_CANT * PE_COSTOU) as L_COSTO_TOT,PE_PROID, PE_CEDIS FROM PEDIDO WHERE PE_CEDIS <> ? AND LENGTH(PE_CEDIS) < 4 AND PE_CLIENTE IN (Select CUENTA from cuentaa) order by PE_PROID", Array As String("DUR"))
@@ -2671,7 +2765,7 @@ Sub B_GPS_Click
Dim result As Int Dim result As Int
result = Msgbox2("Esta seguro de cambiar las coordenadas de este cliente", "Aviso GPS", "SI", "", "NO", LoadBitmap(File.DirAssets, "alerta.jpg")) 'Ignore result = Msgbox2("Esta seguro de cambiar las coordenadas de este cliente", "Aviso GPS", "SI", "", "NO", LoadBitmap(File.DirAssets, "alerta.jpg")) 'Ignore
If result = DialogResponse.Positive Then If result = DialogResponse.Positive Then
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE kmt_info2 SET CAT_CL_LAT = ?, CAT_CL_LONG = ? where CAT_CL_CODIGO In (Select cuenta from cuentaa)", Array As Object(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE kmt_info2 SET CAT_CL_LAT = ?, CAT_CL_LONG = ? where CAT_CL_CODIGO In (Select cuenta from cuentaa)", Array As Object(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
B4XPage_Appear B4XPage_Appear
End If End If
End Sub End Sub
@@ -2680,7 +2774,6 @@ Private Sub p_cliente_Click
'Nada aqui, solo esta para que los clics no se pasen hacia atras. 'Nada aqui, solo esta para que los clics no se pasen hacia atras.
End Sub End Sub
Private Sub Panel5_Click Private Sub Panel5_Click
End Sub End Sub
@@ -2739,7 +2832,6 @@ Private Sub RadioButton15_CheckedChange(Checked As Boolean)
End Sub End Sub
' fin p2_1 m1 ' fin p2_1 m1
'PREGUNTA 1 MODULO 1 'PREGUNTA 1 MODULO 1
Private Sub RadioButton1_CheckedChange(Checked As Boolean) Private Sub RadioButton1_CheckedChange(Checked As Boolean)
@@ -4244,7 +4336,7 @@ Sub Cuestionario
enc.Position = i enc.Position = i
Log($"POSICION = ${enc.Position}"$) Log($"POSICION = ${enc.Position}"$)
If enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 5 Then 'esto es para la foto If enc.GetString("CAT_EP_IDTIPOPREGUNTA") = 5 Then 'esto es para la foto
If logger Then Log("Pregunta tipo 5") If logger Then Log("Pregunta tipo 5")
id_encuesta = enc.GetString("CAT_EP_ID") id_encuesta = enc.GetString("CAT_EP_ID")
idencuestaaguardar = enc.GetString("CAT_EP_ID") idencuestaaguardar = enc.GetString("CAT_EP_ID")
@@ -4665,3 +4757,39 @@ Private Sub StopCamera2
camEx.Release camEx.Release
End If End If
End Sub End Sub
Private Sub b_Inicio_Fin_venta_Click
' b_Inicio_Fin_venta.Visible = False
' Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "Pre-venta", "0", Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, precision, "", "")
contadorIniciarVenta = 0
IniVenNO = False
If dentroDeGeocerca Then precision = 1
LogColor("-------> "&contadorIniciarVenta & " <-------", Colors.Red)
motivoNoVenta = ""
motivoNoVisita = ""
If b_Inicio_Fin_venta.Text = "TERMINAR VENTA" Then
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, precision, motivoNoVenta, motivoNoVisita)
Starter.enVenta = False
' LogColor($">>>>>> TERMINA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
B4XPages.ShowPageAndRemovePreviousPages("Principal")
Starter.VarX = 0
guardadoventa
Else if b_Inicio_Fin_venta.Text = "INICIAR VENTA" Then
contadorIniciarVenta = 0
IniVenNO = False
contadorIniciarVenta = contadorIniciarVenta + 1
If contadorIniciarVenta = 1 And IniVenNO = False Then
IniVenNO = True
Starter.VarX = 1
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, precision, motivoNoVenta, "")
Starter.enVenta = True
' LogColor($">>>>>> INICIA VENTA: ${Starter.enVenta} - ${Subs.traeCliente}"$, Colors.red)
Else If contadorIniciarVenta > 1 Then
b_Inicio_Fin_venta.Visible = False
End If
End If
b_Inicio_Fin_venta.Visible = False
End Sub

View File

@@ -88,6 +88,7 @@ Sub B4XPage_Appear
End Sub End Sub
Sub ListView1_ItemClick (Position As Int, Value As Object) Sub ListView1_ItemClick (Position As Int, Value As Object)
If colonia = 0 Then If colonia = 0 Then
colonia = Value colonia = Value
End If End If
@@ -114,6 +115,7 @@ Sub ListView1_ItemClick (Position As Int, Value As Object)
End If End If
entro = "4" entro = "4"
Else If entro = "4" Then Else If entro = "4" Then
Starter.VarX = 0
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"

View File

@@ -71,6 +71,7 @@ End Sub
Sub CANCELA_Click Sub CANCELA_Click
B4XPages.ShowPage("Cliente") B4XPages.ShowPage("Cliente")
End Sub End Sub
Sub GUARDA_Click Sub GUARDA_Click
If r_1.Checked Then If r_1.Checked Then
motivo = "CERRADO" motivo = "CERRADO"
@@ -98,6 +99,11 @@ Sub GUARDA_Click
Next Next
End If End If
If B4XPages.MainPage.cliente.IsInitialized Then
B4XPages.MainPage.cliente.motivoNoVenta = motivo
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)
Starter.enVenta = False
End If
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)") B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido_cliente where pc_cliente in (Select CUENTA from cuentaa)")
B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)") B4XPages.MainPage.skmt.ExecNonQuery("delete from pedido where pe_cliente in (Select CUENTA from cuentaa)")
@@ -123,5 +129,6 @@ Sub GUARDA_Click
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss)) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_STORE set HSS_TOT = ? where HSS_CODIGO In (select cuenta from cuentaa)", Array As Object(stay_hh + stay_mi + stay_ss))
B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime)) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE HIST_STAY_OUT set HSO_FIN = ? ", Array As Object(sTime))
DateTime.TimeFormat = "HH:mm:ss" DateTime.TimeFormat = "HH:mm:ss"
Subs.bitacora(Subs.fechanormal(DateTime.Now), usuario, Subs.traeAlmacen, Subs.traeRuta, "MOTIVO NO VENTA ACTIVO", Subs.traeCliente, Subs.fechanormal(DateTime.Now), Subs.fechanormal(DateTime.Now), B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps, 2, "", r_1.Checked)
B4XPages.ShowPage("Principal") B4XPages.ShowPage("Principal")
End Sub End Sub

View File

@@ -559,6 +559,31 @@ Sub Subir_Click
End If End If
c.Close c.Close
'BITACORA (PROYECTO GPS)
Private h As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select * from bitacoraGPS"$)
Do While h.nextrow
cmd.Initialize
Private eventob As String = h.GetString("eventob")
cmd.Name = "mandaBitacora3_GUNA"
Log("BITACORA3")
Private clienteb As String = h.GetString("clienteb")
Private finb As String = h.GetString("finb")
Private nombreCliente As String =Subs. traeNombreCliente(h.GetString("clienteb"))
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
clienteb = ""
finb = h.GetString("iniciob")
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
' 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(h.GetString("almacenb"), h.GetString("usuariob"), h.GetString("rutab"), eventob, clienteb, nombreCliente, h.GetString("iniciob"), finb, h.GetString("latitudb"), h.GetString("longitudb"), h.GetString("precision"), h.GetString("motivonoventa"), h.GetString("motivonovisita"), h.GetString("fechab"))
B4XPages.MainPage.reqManager.ExecuteCommand(cmd , "mandaBitacora")
Loop
Log("MANDAMOS BITACORA")
c=B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON, HE_FOTO FROM HIST_ENCUESTA") c=B4XPages.MainPage.skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO, HE_LAT, HE_LON, HE_FOTO FROM HIST_ENCUESTA")
If c.RowCount>0 Then If c.RowCount>0 Then
For i=0 To c.RowCount -1 For i=0 To c.RowCount -1
@@ -805,7 +830,6 @@ Sub cargar_Click
' NUEVOS CLIENTE ' NUEVOS CLIENTE
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2") B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2")
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
B4XPages.MainPage.skmt.ExecNonQuery("delete from PROMO_ESP") B4XPages.MainPage.skmt.ExecNonQuery("delete from PROMO_ESP")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cod_result") B4XPages.MainPage.skmt.ExecNonQuery("delete from cod_result")
B4XPages.MainPage.skmt.ExecNonQuery("delete from hist_gest") B4XPages.MainPage.skmt.ExecNonQuery("delete from hist_gest")
@@ -1061,7 +1085,7 @@ Sub JobDone(Job As HttpJob)
If n = "OKActivo" Then If n = "OKActivo" Then
Dim cmd As DBCommand Dim cmd As DBCommand
cmd.Initialize cmd.Initialize
cmd.Name = "select_ruta_GV2_70_6" cmd.Name = "select_ruta_GV2_70_5"
cmd.Parameters = Array As Object(ALMACEN,e_ruta.text) cmd.Parameters = Array As Object(ALMACEN,e_ruta.text)
B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta") B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta")
'Log("Usuario guardado en BD es 'Valido'") 'Log("Usuario guardado en BD es 'Valido'")
@@ -1102,7 +1126,6 @@ Sub JobDone(Job As HttpJob)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info2(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, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_CL_CODIGO,e_ruta.Text,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)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info2(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, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_CL_CODIGO,e_ruta.Text,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))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (CAT_CL_CODIGO)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (CAT_CL_CODIGO))
Next Next
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
Listo1 = 1 Listo1 = 1
S_CC.Text = "LISTO" S_CC.Text = "LISTO"
' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Clientes Actualizados." , True) ' If Starter.marcaCel <> "Sony" Then ToastMessageShow("Catalogo Clientes Actualizados." , True)
@@ -1142,7 +1165,7 @@ Sub JobDone(Job As HttpJob)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info2(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, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_CL_CODIGO,E_RUTA2.Text,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)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info2(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, gestion) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0)", Array As Object (CAT_CL_CODIGO,E_RUTA2.Text,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))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (CAT_CL_CODIGO)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (CAT_CL_CODIGO))
Next Next
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
End If End If
End If End If
@@ -1337,12 +1360,12 @@ Sub JobDone(Job As HttpJob)
If Job.JobName = "DBRequest" Then If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
If RESULT.Tag = "cat_verificacion" Then 'query tag If RESULT.Tag = "CAT_VERIFICACION" Then 'query tag
For Each records() As Object In RESULT.Rows For Each records() As Object In RESULT.Rows
Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD")) Dim CAT_VE_IDPROD As String = records(RESULT.Columns.Get("CAT_VE_IDPROD"))
Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE")) Dim CAT_VE_NOMBRE As String = records(RESULT.Columns.Get("CAT_VE_NOMBRE"))
Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN")) Dim CAT_VE_ORDEN As String = records(RESULT.Columns.Get("CAT_VE_ORDEN"))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE,CAT_VE_ORDEN)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VERIFICACION(CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN) VALUES (?,?,?)", Array As Object (CAT_VE_IDPROD, CAT_VE_NOMBRE, CAT_VE_ORDEN))
Next Next
End If End If
End If End If
@@ -1852,6 +1875,7 @@ Sub connecta_Click
' If imei = "" Then ' If imei = "" Then
' cmd.Initialize ' cmd.Initialize
' cmd.Name = "select_ruta_GV2_70_2" ' cmd.Name = "select_ruta_GV2_70_2"
' cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei) ' cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei)
' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta") ' B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta")
@@ -1913,7 +1937,6 @@ Sub e_ruta_EnterPressed
B4XPages.MainPage.skmt.ExecNonQuery("delete from noventa") B4XPages.MainPage.skmt.ExecNonQuery("delete from noventa")
B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act") B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act")
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2") B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info2")
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod") B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ") B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")
B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VENTAS") B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VENTAS")
@@ -1934,7 +1957,9 @@ Sub e_ruta_EnterPressed
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("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("LATITUD"))
B4XPages.MainPage.skmt.ExecNonQuery2("DELETE FROM CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?",Array As String("LONGITUD")) 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)) B4XPages.MainPage.skmt.ExecNonQuery2("UPDATE GPS SET HABILITADO = (?)",Array As Object(0))
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","","")
B4XPage_Appear B4XPage_Appear
End If End If
End If End If
@@ -2052,6 +2077,7 @@ Sub B_OK_PAS_Click
img2.Visible=False img2.Visible=False
Subs.panelVisible(p_principal, 0, 0) Subs.panelVisible(p_principal, 0, 0)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CARGA_DIA",1)) B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("CARGA_DIA",1))
Subs.bitacora(Subs.fechanormal(DateTime.Now),usuario,Subs.traeAlmacen, Subs.traeRuta,"Carga día", "",Subs.fechanormal(DateTime.Now),Subs.fechanormal(DateTime.Now),B4XPages.MainPage.lat_gps,B4XPages.MainPage.lon_gps,"2","","")
Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then Else if CARGA = "CARGAR" And (S_CP.Text <> "LISTO" Or S_CC.Text <> "LISTO" Or S_CH.Text <> "LISTO") Then
RES = Msgbox2("Seguro que desa abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore RES = Msgbox2("Seguro que desa abortar el proceso","Cierre", "Si", "", "No",LoadBitmap(File.DirAssets,"alert2.png")) 'ignore
If RES = DialogResponse.POSITIVE Then If RES = DialogResponse.POSITIVE Then

Binary file not shown.

View File

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

View File

@@ -76,6 +76,6 @@ ModuleClosedNodes6=8,9,10
ModuleClosedNodes7= ModuleClosedNodes7=
ModuleClosedNodes8= ModuleClosedNodes8=
ModuleClosedNodes9= ModuleClosedNodes9=
NavigationStack=B4XMainPage,Entrar_Click,416,0,C_Cliente,b_geopass_Click,1062,0,C_Cliente,JobDone,1108,0,C_Principal,Subir_Click,752,0,B4XMainPage,JobDone,525,6,B4XMainPage,B4XPage_Created,176,1,C_Principal,cargar_Click,801,1,C_Principal,e_ruta_EnterPressed,1908,1,Diseñador Visual,login.bal,-100,6,C_Principal,JobDone,1057,4 NavigationStack=C_Principal,cargar_Click,784,0,C_Principal,B4XPage_CloseRequest,1838,0,C_Principal,connecta_Click,1846,0,C_Principal,BUSCA_Click,1914,0,B4XMainPage,b_aceptar_Click,844,0,C_Productos,b_QR_Click,417,0,C_Productos,b_prodMenos_Click,471,0,C_Cliente,B4XPage_Appear,563,0,C_Cliente,b_Inicio_Fin_venta_Click,4755,0,C_Principal,Class_Globals,15,0,C_Productos,lv_catalogos_ItemClick,176,0
SelectedBuild=0 SelectedBuild=0
VisibleModules=23,2,24,13,14,4,6,9,12,5 VisibleModules=23,2,24,13,14,4,6,9,12,5

View File

@@ -33,6 +33,8 @@ Sub Process_Globals
Dim MAC_IMPRESORA As String Dim MAC_IMPRESORA As String
Public BluetoothState As Boolean Public BluetoothState As Boolean
Dim ubicacionActual As Location Dim ubicacionActual As Location
Dim enVenta As Boolean = False
Dim VarX As Int = 0
End Sub End Sub
Sub Service_Create Sub Service_Create

View File

@@ -202,6 +202,16 @@ Sub revisaBD 'ignore
errorLog.ExecNonQuery("CREATE TABLE IF NOT EXISTS errores(fecha INTEGER, error TEXT)") errorLog.ExecNonQuery("CREATE TABLE IF NOT EXISTS errores(fecha INTEGER, error TEXT)")
End Sub End Sub
Sub fechanormal(fecha As String) As String 'ignore
' Log(fecha)
Dim OrigFormat As String = DateTime.DateFormat 'save orig date format
DateTime.DateFormat = "YYYY/MM/dd HH:mm:ss"
Dim nuevaFecha As String=DateTime.Date(fecha)
DateTime.DateFormat = OrigFormat 'return to orig date format
' Log(nuevaFecha)
Return nuevaFecha
End Sub
'Obtiene el ssid al que esta conectado el telefono 'Obtiene el ssid al que esta conectado el telefono
Sub getSSID 'ignore Sub getSSID 'ignore
' 'Requiere la libreria "MLWifi400" ' 'Requiere la libreria "MLWifi400"
@@ -423,10 +433,16 @@ End Sub
'Borramos renglones extra de la tabla de bitacora 'Borramos renglones extra de la tabla de bitacora
Sub borraArribaDe600RenglonesBitacora 'ignore Sub borraArribaDe600RenglonesBitacora 'ignore
revisaBD revisaBD
LogColor("Borramos BD de log", Colors.Magenta) If Starter.logger Then LogColor("Recortamos la tabla de la Bitacora, limite de 600", Colors.Magenta)
kmt.ExecNonQuery("DELETE FROM bitacora WHERE fecha NOT in (SELECT fecha FROM bitacora ORDER BY fecha desc LIMIT 599 )") Private c As Cursor
kmt.ExecNonQuery("vacuum;") c = B4XPages.MainPage.skmt.ExecQuery("select fecha from bitacora")
Log("Borramos mas de 600 de bitacora") c.Position = 0
If c.RowCount > 650 Then
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM bitacora WHERE fecha NOT in (SELECT fecha FROM bitacora ORDER BY fecha desc LIMIT 599 )")
B4XPages.MainPage.skmt.ExecNonQuery("vacuum;")
' if starter.logger then Log("Borramos mas de 600 de bitacora")
End If
c.Close
End Sub End Sub
'Inserta 50 renglones de prueba a la tabla "errores" 'Inserta 50 renglones de prueba a la tabla "errores"
@@ -1207,3 +1223,129 @@ Sub vendidoPromoEsp As Boolean
Log(w) Log(w)
Return w Return w
End Sub 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
'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")
Private cmd As DBCommand
cmd.Initialize
cmd.Name = "mandaBitacora3"
Log("BITACORA3")
Private nombreCliente As String = traeNombreCliente(clienteb)
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
clienteb = ""
finb = iniciob
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
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}'"$)
' 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")
Else
Private e As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select fechab from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' and eventob = 'Inicia Venta' order by fechab desc"$)
' TMP_RUTA = (?) And tmp_almacen = (?) And tmp_usuario = (?) And tmp_id_cliente = (?) And tmp_evento = (?) And tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss')
If e.RowCount > 0 Then
e.Position = 0
Log("ACTUALIZA BITACORA")
If eventob = "Termina Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"update BITACORAGPS set finb = '${finb}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
' cmd.Name = "actualizaSalidaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss') where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss');
cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
' Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
else if eventob = "No Venta" Then
B4XPages.MainPage.skmt.ExecNonQuery($"update BITACORAGPS set finb = '${finb}', motivonoventa = '${motivonoventa}', motivonovisita = '${motivonovisita}' where rutab = '${rutab}' and almacenb = '${almacenb}' and usuariob = '${usuariob}' and clienteb = '${clienteb}' and fechab = '${e.GetString("fechab")}' "$)
' cmd.Name = "actualizaNoVentaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss'), TMP_MOTIVO_NO_VENTA = (?), TMP_MOTIVO_NO_VISITA = (?) where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss')
cmd.Parameters = Array As Object(finb, motivonoventa, motivonovisita, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
' Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
' Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
End If
If eventob <> "Inicia Venta" Then
Private c As Cursor = B4XPages.MainPage.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
c.Position = 0
cmd.Parameters = Array As Object(c.GetString("almacenb"), c.GetString("usuariob"), c.GetString("rutab"), c.GetString("eventob"), c.GetString("clienteb"), nombreCliente, c.GetString("iniciob"), c.GetString("finb"), c.GetString("latitudb"), c.GetString("longitudb"), c.GetString("precision"), c.GetString("motivonoventa"), c.GetString("motivonovisita"), c.GetString("fechab"))
Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
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
'Mandar fecha de sync(sysdate)
Sub bitacoraX(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("bitacora")
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}')"$)
Private cmd As DBCommand
cmd.Initialize
If eventob <> "Termina Venta" And eventob <> "No Venta" Then
cmd.Name = "mandaBitacora3"
Log("BITACORA3")
Private nombreCliente As String = traeNombreCliente(clienteb)
If eventob = "Llega a almacen" Then
nombreCliente = "BOLETA"
clienteb = ""
finb = iniciob
End If
If eventob = "Salida almacen" Then nombreCliente = "CHECKLIST"
If eventob = "Fin Día" Then nombreCliente = "FIN DIA"
If eventob = "Carga día" Then nombreCliente = "CARGA DIA"
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")
Else
Private e As Cursor = B4XPages.MainPage.skmt.ExecQuery($"select fechab from BITACORAGPS where usuariob = '${usuariob}' and almacenb = '${almacenb}' and rutab = '${rutab}' and clienteb = '${clienteb}' and eventob = 'Inicia Venta' order by fechab desc"$)
If e.RowCount > 0 Then
e.Position = 0
Log("ACTUALIZA BITACORA")
If eventob = "Termina Venta" Then
cmd.Name = "actualizaSalidaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss') where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss');
cmd.Parameters = Array As Object(finb, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
else if eventob = "No Venta" Then
cmd.Name = "actualizaNoVentaBitacora"
' TMP_FINAL = to_date((?),'YYYY/MM/DD HH24:MI:ss') where TMP_RUTA = (?) and tmp_almacen = (?) and tmp_usuario = (?) and tmp_id_cliente = (?) and tmp_evento = (?) and tmp_fecha_movil = to_date((?),'YYYY/MM/DD HH24:MI:ss');
cmd.Parameters = Array As Object(finb, motivonoventa, motivonovisita, rutab, almacenb, usuariob, clienteb, "Inicia Venta", e.GetString("fechab"))
Log($"${finb}, ${rutab}, ${almacenb}, ${usuariob}, ${clienteb}, 'Inicia Venta', ${e.GetString("fechab")}, "$)
Starter.reqManager.ExecuteCommand(cmd , "mandaBitacora")
End If
End If
End If
Log("Mandamos bitacora")
End Sub
'Regresa el nombre del cliente del id dado.
Sub traeNombreCliente(id As String) As String
Private c As ResultSet = B4XPages.MainPage.skmt.ExecQuery($"select CAT_CL_NOMBRE from kmt_info2 where CAT_CL_CODIGO = '${id}'"$)
Private n As String = "N/A"
Do While c.NextRow
n = c.GetString("CAT_CL_NOMBRE")
Loop
Return n
End Sub
'Guarda el nombre de la pagina en base de datos la muestra.
Sub iniciaActividad(ia As String)
If ia <> "" And ia <> Null Then
' If B4XPages.MainPage.logger Then LogColor($"Guardamos en BD '${ia}'"$, Colors.Yellow)
B4XPages.MainPage.skmt.ExecNonQuery2("delete from CAT_VARIABLES where CAT_VA_DESCRIPCION = ?", Array As Object ("ULTIMOMODULO"))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_VARIABLES(CAT_VA_DESCRIPCION, CAT_VA_VALOR) VALUES (?,?)", Array As Object ("ULTIMOMODULO", ia))
B4XPages.ShowPage(ia)
' If B4XPages.MainPage.logger Then LogColor("Iniciamos --> " & ia, Colors.Blue)
End If
End Sub