07/09/2023

Bandera Clientes nuevos, y giro
This commit is contained in:
cvaldes1201
2023-09-07 15:18:14 -06:00
parent 6b157eb4da
commit d7188d4586
5 changed files with 127 additions and 42 deletions

View File

@@ -160,6 +160,7 @@ Private Sub B4XPage_Created (Root1 As B4XView)
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_MARCAS_CUOTAS (HMC_MARCA TEXT, HMC_TOTAL TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CODIGO_BARRAS(CODIGOKMTS TEXT, CODIGOB TEXT, LAT TEXT, LON TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS ABONOS (a_usuario TEXT, a_ruta TEXT, a_cliente TEXT, a_abono TEXT, a_fecha TEXT, a_enviado TEXT)")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS CAT_GIRO(GIRO TEXT)")
' skmt.ExecNonQuery("drop table kmt_info")
skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS kmt_info (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, CAT_CL_DIASEMANA TEXT, CAT_CL_SECUENCIA INT)")
Try 'Intentamos usar "pragma_table_info" para revisar si existe la columna "CAT_CL_DIASEMANA" en la tabla

View File

@@ -40,6 +40,9 @@ Sub Class_Globals
Dim lat As Double = 0
Dim lon As Double = 0
Private b_ubicacion As Label
Private Label3 As Label
Private cb_giro As B4XComboBox
Dim giros As String
End Sub
'You can add more parameters here.
@@ -64,7 +67,18 @@ End Sub
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
Sub B4XPage_Appear
Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
Wait For B4XPage_PermissionResult (Permission As String, Result As Boolean)
If Result Then
camEx2.Initialize(p_cam, frontCamera, Me, "Camera1")
frontCamera = camEx2.Front
Log("inicializamos Camara")
Else
ToastMessageShow("No permission!!!", True)
End If
E_NOMBRE.Text = ""
If Not(Starter.gps.GPSEnabled) Then
ToastMessageShow("Es necesario tener el GPS encendido", True)
StartActivity(Starter.gps.LocationSettingsIntent)
@@ -75,10 +89,12 @@ Sub B4XPage_Appear
p_nuevoCliente.Width = Root.Width
Subs.centraEtiqueta(Label1, Root.Width)
Subs.centraEtiqueta(Label2, Root.Width)
Subs.centraEtiqueta(Label3, Root.Width)
Subs.centraEtiqueta(l_sinUbicacion, Root.Width)
Subs.centraEtiqueta(b_ubicacion, Root.Width)
Subs.centraPanel(p_botones, Root.Width)
E_NOMBRE.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
et_direccion.Left = Round(Root.Width/2)-(E_NOMBRE.Width/2)
If B4XPages.MainPage.lat_gps <> "0.0" Then
GUARDA.Visible = True 'Si hay ubicaccion, mostramos el boton de guardar.
@@ -93,6 +109,21 @@ Sub B4XPage_Appear
' If Starter.ubicacionActual.Latitude <> 0 Then GPS_LocationChanged(Starter.ubicacionActual)
End If
CallSubDelayed(Tracker, "StartFLPSmall")
c = B4XPages.MainPage.skmt.ExecQuery("SELECT GIRO FROM CAT_GIRO order by 1")
Dim Items As List
Items.Initialize
Items.Add("SELECCIONA UNA OPCIÓN")
If c.RowCount > 0 Then
For i = 0 To c.RowCount-1
c.Position = i
Items.Add(c.GetString("GIRO"))
Next
cb_giro.SetItems(Items)
End If
giros = "SELECCIONA UNA OPCIÓN"
c.Close
End Sub
Sub GPS_LocationChanged (Location1 As Location)
@@ -125,49 +156,54 @@ Sub GUARDA_Click
If et_direccion.Text.Length > 3 Then
If lat <> 0 Then
If fototomada <> "0" Then
DateTime.DateFormat = "MM/dd/yyyy"
DateTime.Timeformat = "HHmmss"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
Log($" //////////// Date: ${sDate} - Time: ${sTime} ////////////////"$)
'Aqui creamos manualmete la hora con el separador de los 2 puntos porque en algunas versiones de android no respeta el formato "Timeformat = 'HH:mm:ss'"
Private hora As String = sTime.SubString2(0,2)
Private mins As String = sTime.SubString2(2,4)
Private segs As String = sTime.SubString(4)
sTime = hora&":"&mins&":"&segs
Log("////////////// sTime: "&sTime&" ////////////////")
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA FROM kmt_info")
c.Position=0
no_ruta= c.GetString("CAT_CL_RUTA")
no_cliente= "N" & sTime & no_ruta
Log("++ ++ no_cliente = "&no_cliente)
c.Close
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info(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,0,0) ",Array As Object (no_cliente,no_ruta, E_NOMBRE.Text,"null","null","null","null","null","null","null","null","null","null","null","null","null",B4XPages.MainPage.lon_gps,B4XPages.MainPage.lat_gps))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (no_cliente))
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(no_cliente))
c=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN")
If c.RowCount>0 Then
C.Position=0
ALMACEN = C.GetString("ID_ALMACEN")
If giros <> "SELECCIONA UNA OPCIÓN" Or cb_giro.SelectedItem <> "SELECCIONA UNA OPCIÓN" Then
DateTime.DateFormat = "MM/dd/yyyy"
DateTime.Timeformat = "HHmmss"
sDate=DateTime.Date(DateTime.Now)
sTime=DateTime.Time(DateTime.Now)
Log($" //////////// Date: ${sDate} - Time: ${sTime} ////////////////"$)
'Aqui creamos manualmete la hora con el separador de los 2 puntos porque en algunas versiones de android no respeta el formato "Timeformat = 'HH:mm:ss'"
Private hora As String = sTime.SubString2(0,2)
Private mins As String = sTime.SubString2(2,4)
Private segs As String = sTime.SubString(4)
sTime = hora&":"&mins&":"&segs
Log("////////////// sTime: "&sTime&" ////////////////")
c=B4XPages.MainPage.skmt.ExecQuery("select CAT_CL_RUTA FROM kmt_info")
c.Position=0
no_ruta= c.GetString("CAT_CL_RUTA")
no_cliente= "N" & sTime & no_ruta
Log("++ ++ no_cliente = "&no_cliente)
c.Close
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO kmt_info(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, CAT_CL_GIRO) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,0,0,0,?) ",Array As Object (no_cliente,no_ruta, E_NOMBRE.Text,"null","null","null","null","null","null","null","null","null","null","null","null","null",B4XPages.MainPage.lon_gps,B4XPages.MainPage.lat_gps, cb_giro.SelectedItem))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_STAY_STORE(HSS_CODIGO, HSS_IN , HSS_OUT , HSS_TOT) VALUES (?,0,0,0)", Array As Object (no_cliente))
B4XPages.MainPage.skmt.ExecNonQuery("delete from CUENTAA")
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CUENTAA VALUES (?)", Array As Object(no_cliente))
c=B4XPages.MainPage.skmt.ExecQuery("select ID_ALMACEN from CAT_ALMACEN")
If c.RowCount>0 Then
C.Position=0
ALMACEN = C.GetString("ID_ALMACEN")
End If
c.Close
c=B4XPages.MainPage.skmt.ExecQuery("select usuario from usuarioa")
c.Position = 0
usuario = c.GetString("USUARIO")
c.Close
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA, NOM_FOTO) VALUES(?,?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta, fototomada))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_LAT,NV_LON,NV_NOMBRE,NV_DIRECCION) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (no_cliente,sDate & sTime, usuario, "NUEVO CLIENTE", lat, lon, E_NOMBRE.Text,et_direccion.Text))
DateTime.DateFormat = "dd/MM/yyyy"
DateTime.Timeformat = "HH:mm:ss"
sDate2=DateTime.Date(DateTime.Now)
sTime2=DateTime.Time(DateTime.Now)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_ALMACEN, CN_RUTA, CN_GIRO) VALUES (?,?,?,?,?,?,?,?,?,?,?)",Array As String(no_cliente,sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text,et_direccion.Text, fototomada, ALMACEN, no_ruta,cb_giro.SelectedItem))
fototomada = "0"
B4XPages.ShowPage("Principal")
CallSubDelayed(Tracker, "StartFLP")
Else
MsgboxAsync("Por favor captura el giro del cliente","Atención")
End If
c.Close
c=B4XPages.MainPage.skmt.ExecQuery("select usuario from usuarioa")
c.Position = 0
usuario = c.GetString("USUARIO")
c.Close
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_FOTO_CLIENTE(CODIGO, ALMACEN, RUTA, NOM_FOTO) VALUES(?,?,?,?)", Array As Object(no_cliente, ALMACEN, no_ruta, fototomada))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE,NV_FECHA,NV_USER,NV_MOTIVO,NV_LAT,NV_LON,NV_NOMBRE,NV_DIRECCION) VALUES(?,?,?,?,?,?,?,?) ", Array As Object (no_cliente,sDate & sTime, usuario, "NUEVO CLIENTE", lat, lon, E_NOMBRE.Text,et_direccion.Text))
DateTime.DateFormat = "dd/MM/yyyy"
DateTime.Timeformat = "HH:mm:ss"
sDate2=DateTime.Date(DateTime.Now)
sTime2=DateTime.Time(DateTime.Now)
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CLIENTES_NUEVOS(CN_ID, CN_FECHA, CN_USER, CN_LAT, CN_LON, CN_NOMBRE, CN_DIRECCION, CN_FOTO, CN_ALMACEN, CN_RUTA) VALUES (?,?,?,?,?,?,?,?,?,?)",Array As String(no_cliente,sDate2 &" "&sTime2, usuario, lat, lon, E_NOMBRE.Text,et_direccion.Text, fototomada, ALMACEN, no_ruta))
fototomada = "0"
B4XPages.ShowPage("Principal")
CallSubDelayed(Tracker, "StartFLP")
Else
MsgboxAsync("Por favor captura la foto del cliente","Atención")
@@ -279,4 +315,8 @@ Private Sub B_FOTO_Click
InitializeCamera2
Subs.panelVisible(p_camara, 0, 0)
fototomada = DateTime.Now & "_cliente.jpg"
End Sub
Private Sub cb_giro_SelectedIndexChanged (Index As Int)
giros = cb_giro.SelectedItem
End Sub

View File

@@ -757,6 +757,7 @@ Sub cargar_Click
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cod_result")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_GIRO")
B4XPages.MainPage.skmt.ExecNonQuery("delete from BANDERA")
B4XPages.MainPage.skmt.ExecNonQuery("delete from hist_gest")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
@@ -997,6 +998,37 @@ Sub JobDone(Job As HttpJob)
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
If RESULT.Tag = "giro" Then 'query tag
For Each records() As Object In RESULT.Rows
Dim giro As String = records(RESULT.Columns.Get("CAT_GR_DESC"))
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO CAT_GIRO(GIRO) VALUES (?)", Array As Object (giro))
Next
If PB2.Progress = 0 Then
PB2.Progress = 30
S_CP.Text = "CARGANDO"
ELSE If PB2.Progress = 30 Then
PB2.Progress = 60
ELSE IF PB2.Progress = 60 Then
PB2.Progress = 100
S_CP.Text = "LISTO"
End If
Listo3 =1
If Listo1 =1 And Listo2 =1 And Listo3 = 1 And Listo4 = 1 Then
B4XPage_Appear
img2.Visible=False
EJECUTANDO=0
Else If Listo4 = 1 And Listo3 = 1 And inve = 1 Then
B4XPage_Appear
img2.Visible=False
EJECUTANDO=0
End If
End If
End If
If Job.JobName = "DBRequest" Then
Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job)
If RESULT.Tag = "bandera" Then 'query tag
@@ -1764,6 +1796,7 @@ Sub e_ruta_EnterPressed
B4XPages.MainPage.skmt.ExecNonQuery("delete from clie_act")
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_GIRO")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")
B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VENTAS")
B4XPages.MainPage.skmt.ExecNonQuery("delete from HIST_VERIFICACION")
@@ -1909,6 +1942,7 @@ Sub B_OK_PAS_Click
Subs.panelVisible(p_principal, 0, 0)
B4XPages.MainPage.skmt.ExecNonQuery("delete from kmt_info")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cod_result")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_GIRO")
B4XPages.MainPage.skmt.ExecNonQuery("delete from hist_gest")
B4XPages.MainPage.skmt.ExecNonQuery("delete from cat_gunaprod")
B4XPages.MainPage.skmt.ExecNonQuery("delete from CAT_DETALLES_PAQ")

Binary file not shown.

View File

@@ -203,6 +203,16 @@ Sub revisaBD 'ignore
kmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_FOTO_CLIENTE(CODIGO TEXT, ALMACEN TEXT, RUTA TEXT, NOM_FOTO TEXT)")
kmt.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)")
kmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS BANDERA(AUTORIZADO TEXT)")
Try 'Si no existe la columna CN_GIRO la agregamos.
kmt.ExecQuery("select count(CN_GIRO) from CLIENTES_NUEVOS")
Catch
Try
kmt.ExecNonQuery("ALTER TABLE CLIENTES_NUEVOS ADD COLUMN CN_GIRO TEXT")
Catch
LogColor("No pudimos agregar la columna CN_GIRO.", Colors.Red)
LogColor(LastException, Colors.Red)
End Try
End Try
Try 'Si no existe la columna PC_ENVIO_OK la agregamos.
kmt.ExecQuery("select count(PC_ENVIO_OK) from PEDIDO_CLIENTE")
Catch