3/1/2023 - Se agregaron campos nuevos y scroll a cliente

- Se agregó el telefono y correo a clienets nuevos y clientes viejos.
- Se agregó un scroll a cliente para que se vean todos los campos!
This commit is contained in:
2024-01-03 16:21:23 -06:00
parent 2a3a701d3c
commit 05b32b3e43
10 changed files with 242 additions and 78 deletions

View File

@@ -132,7 +132,7 @@ Sub Class_Globals
Private l_secuencia As Label
Private l_ruta As Label
Private et_diaSemana As EditText
Private et_giro As EditText
' Private et_giro As EditText
Private lv_diaSemana As ListView
Private et_calle As EditText
Private et_NoExt As EditText
@@ -160,6 +160,11 @@ Sub Class_Globals
Dim clienteAnt As String = ""
Private l_cuestionario As Label
Private b_mapa2 As Button
Private l_tituloCuestionaro As Label
Private cb_diaSemana As B4XComboBox
Dim diasDeLaSemana As List = Array As String("LUNES", "MARTES", "MIERCOLES", "JUEVES", "VIERNES", "SABADO")
Private et_telefono As EditText
Private et_email As EditText
End Sub
'You can add more parameters here.
@@ -206,6 +211,7 @@ Sub B4XPage_Appear
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
sv_clientesDatos.Panel.Height = p_cliente.Height
l_cuestionario.Visible = False
l_tituloCuestionaro.Visible = False
reqManager.Initialize(Me, Starter.server)
lv_colonia.Visible = False
Timer2.Initialize("Timer2", Interval * 1)
@@ -225,7 +231,7 @@ Sub B4XPage_Appear
c.Position=0
la_cuenta.Text = c.GetString("CAT_CL_CODIGO")
l_ruta.Text = c.GetString("CAT_CL_RUTA")
et_giro.Text = c.GetString("CAT_CL_GIRO")
' et_giro.Text = c.GetString("CAT_CL_GIRO")
et_diaSemana.Text = c.GetString("CAT_CL_DIASEMANA")
l_secuencia.text = c.GetString("CAT_CL_SECUENCIA")
la_cuenta.Text = c.GetString("CAT_CL_CODIGO")
@@ -233,6 +239,8 @@ Sub B4XPage_Appear
et_direccion.Text = c.GetString("CAT_CL_CALLE1")
et_colonia.Text = ""
et_colonia.Text = c.GetString("CAT_CL_COLONIA")
et_telefono.Text = c.GetString("CAT_CL_TELEFONO")
et_email.Text = c.GetString("CAT_CL_EMAIL")
et_estado.Text = c.GetString("CAT_CL_EDO")
desdeBD = True
et_cp.Text = c.GetString("CAT_CL_CP")
@@ -261,21 +269,15 @@ Sub B4XPage_Appear
If cuest.RowCount > 0 Then
Private cs As CSBuilder
cs.Initialize
Private cuestText As String
For i = 0 To cuest.RowCount - 1
cuest.Position = i
' If i = 0 Then
cs.color(Colors.black).Append(cuest.GetString("Q_PREGUNTA")).popall.Append(CRLF).Append(" " & cuest.GetString("Q_RESPUESTA")).Append(CRLF).popall
' Else
' cuestText = cuestText & cs.bold.Append(CRLF).Append(cuest.GetString("Q_PREGUNTA")).pop.Append(CRLF).Append(cuest.GetString("Q_RESPUESTA")).popall
' End If
cs.color(Colors.black).Append(cuest.GetString("Q_PREGUNTA")).popall.Append(CRLF).Append(" " & cuest.GetString("Q_RESPUESTA")).Append(CRLF).popall
Next
l_cuestionario.Text = cs
l_cuestionario.Visible = True
l_tituloCuestionaro.Visible = True
End If
l_cuestionario.Height = su.MeasureMultilineTextHeight(l_cuestionario, l_cuestionario.Text)
ajustaTamano
' Tracker.FLP.Connect
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
@@ -304,8 +306,10 @@ Sub B4XPage_Appear
End If
Dim losGiros As List = Subs.traeGirosLista
cb_giro.SetItems(losGiros)
cb_giro.SelectedIndex = losGiros.IndexOf(c.GetString("CAT_CL_GIRO"))
cb_giro.SelectedIndex = losGiros.IndexOf(c.GetString("CAT_CL_GIRO").As(String).ToUpperCase)
cb_giro.mBase.Width = et_diaSemana.Width
cb_diaSemana.SetItems(diasDeLaSemana)
cb_diaSemana.SelectedIndex = diasDeLaSemana.IndexOf(c.GetString("CAT_CL_DIASEMANA"))
' Log("|"&c.GetString("CAT_CL_GIRO")&"|")
c.Close
camposModificados.Clear
@@ -314,9 +318,12 @@ Sub B4XPage_Appear
'Revisamos si el cliente actual es diferente del anterior y si es diferente ponemos encuestaIniciada en VERDADERO.
If clienteAnt <> Subs.traeCliente Then q.encuestaIniciada = False
clienteAnt = Subs.traeCliente
' Log("CON ENCUESTA: " & q.clienteConEncuesta(Subs.traeCliente))
' Log("CON ENCUESTA: " & q.clienteConCuestionario(Subs.traeCliente))
' Log("INICIADA: " & q.encuestaIniciada)
If Not(q.encuestaIniciada) And Not(q.clienteConEncuesta(Subs.traeCliente)) Then q.agregaPregunta("1", "¿Se puede acceder al negocio o está enrejado?", Array As String("No, está enrejado o no se tiene acceso", "Si se pude acceder"))
l_cuestionario.Height = su.MeasureMultilineTextHeight(l_cuestionario, l_cuestionario.Text)
ajustaTamano
If Not(q.encuestaIniciada) And Not(q.clienteConCuestionario(Subs.traeCliente)) Then q.agregaPregunta("1", "¿Se puede acceder al negocio o está enrejado?", Array As String("No, está enrejado o no se tiene acceso", "Si se pude acceder"))
End Sub
Private Sub Timer2_Tick
@@ -375,8 +382,8 @@ Private Sub b_guardaCambios_Click
Log(camposModificados)
If CLIENTE_ACTIVO = "Inactivo" Or CLIENTE_ACTIVO = "Cerrado Permanente" Then l_secuencia.Text = "0"
If CLIENTE_ACTIVO = "Cerrado Permanente" Then CLIENTE_ACTIVO = "Cerrado permanente confirmado"
B4XPages.MainPage.skmt.ExecNonQuery($"UPDATE kmt_info set CAT_CL_CODIGO = '${la_cuenta.text}', CAT_CL_CEDIS = '${Subs.traeAlmacen}', CAT_CL_LAT = '${l_lat.text}', CAT_CL_LONG = '${l_lon.text}', CAT_CL_SECUENCIA = '${l_secuencia.text}', CAT_CL_RUTA = '${l_ruta.text}', CAT_CL_DIASEMANA = '${et_diaSemana.text}', CAT_CL_GIRO = '${cb_giro.SelectedItem}', CAT_CL_NOMBRE = '${Subs.escapeSQLString(E_NOMBRE_C.text)}', CAT_CL_ATIENDE1 = '${et_atiende.text}', CAT_CL_CALLE = '${Subs.escapeSQLString(et_calle.text)}', CAT_CL_NOINT = '${et_NoInt.text}', CAT_CL_NOEXT = '${et_NoExt.text}', CAT_CL_CALLE1 = '${Subs.escapeSQLString(et_direccion.text)}', CAT_CL_CRUCE1 = '${E_ENTRE1.text}', CAT_CL_CALLE2 = '${E_ENTRE_2.text}', CAT_CL_CP = '${et_cp.text}', CAT_CL_COLONIA = '${et_colonia.text}', CAT_CL_MUNI = '${et_municipio.text}', CAT_CL_EDO = '${et_estado.text}', CAT_CL_ESTATUS = '${CLIENTE_ACTIVO}', gestion = 11, CAT_CL_FECHA_CAPTURA = '${sDate & " " & sTime}', CAT_CL_ENVIO_PENDIENTE = 1, LAT_CENSADOR = '${B4XPages.MainPage.lat_gps}', LON_CENSADOR = '${B4XPages.MainPage.lon_gps}', ESTATUS_ORIGINAL = '${cb_activo.tag}', CAMPOS_MODIFICADOS = '${Subs.list2string(camposModificados)}' where CAT_CL_CODIGO In (select cuenta from cuentaa)"$)
Log($"CAT_CL_CODIGO = '${la_cuenta.text}', CAT_CL_CEDIS = '${Subs.traeAlmacen}', CAT_CL_LAT = '${l_lat.text}', CAT_CL_LONG = '${l_lon.text}', CAT_CL_SECUENCIA = '${l_secuencia.text}', CAT_CL_RUTA = '${l_ruta.text}', CAT_CL_DIASEMANA = '${et_diaSemana.text}', CAT_CL_GIRO = '${cb_giro.SelectedItem}', CAT_CL_NOMBRE = '${E_NOMBRE_C.text}', CAT_CL_ATIENDE1 = '${et_atiende.text}', CAT_CL_CALLE = '${et_calle.text}', CAT_CL_NOINT = '${et_NoInt.text}', CAT_CL_NOEXT = '${et_NoExt.text}', CAT_CL_CALLE1 = '${et_direccion.text}', CAT_CL_CRUCE1 = '${E_ENTRE1.text}', CAT_CL_CALLE2 = '${E_ENTRE_2.text}', CAT_CL_CP = '${et_cp.text}', CAT_CL_COLONIA = '${et_colonia.text}', CAT_CL_MUNI = '${et_municipio.text}', CAT_CL_EDO = '${et_estado.text}', CAT_CL_ESTATUS = '${CLIENTE_ACTIVO}', gestion = 11"$)
B4XPages.MainPage.skmt.ExecNonQuery($"UPDATE kmt_info set CAT_CL_CODIGO = '${la_cuenta.text}', CAT_CL_CEDIS = '${Subs.traeAlmacen}', CAT_CL_LAT = '${l_lat.text}', CAT_CL_LONG = '${l_lon.text}', CAT_CL_SECUENCIA = '${l_secuencia.text}', CAT_CL_RUTA = '${l_ruta.text}', CAT_CL_DIASEMANA = '${cb_diaSemana.SelectedItem}', CAT_CL_GIRO = '${cb_giro.SelectedItem}', CAT_CL_NOMBRE = '${Subs.escapeSQLString(E_NOMBRE_C.text)}', CAT_CL_ATIENDE1 = '${et_atiende.text}', CAT_CL_CALLE = '${Subs.escapeSQLString(et_calle.text)}', CAT_CL_NOINT = '${et_NoInt.text}', CAT_CL_NOEXT = '${et_NoExt.text}', CAT_CL_CALLE1 = '${Subs.escapeSQLString(et_direccion.text)}', CAT_CL_CRUCE1 = '${E_ENTRE1.text}', CAT_CL_CALLE2 = '${E_ENTRE_2.text}', CAT_CL_CP = '${et_cp.text}', CAT_CL_COLONIA = '${et_colonia.text}', CAT_CL_MUNI = '${et_municipio.text}', CAT_CL_EDO = '${et_estado.text}', CAT_CL_ESTATUS = '${CLIENTE_ACTIVO}', gestion = 11, CAT_CL_FECHA_CAPTURA = '${sDate & " " & sTime}', CAT_CL_ENVIO_PENDIENTE = 1, LAT_CENSADOR = '${B4XPages.MainPage.lat_gps}', LON_CENSADOR = '${B4XPages.MainPage.lon_gps}', ESTATUS_ORIGINAL = '${cb_activo.tag}', CAT_CL_TELEFONO = '${et_telefono.Text}', CAT_CL_EMAIL = '${et_email.Text}', CAMPOS_MODIFICADOS = '${Subs.list2string(camposModificados)}' where CAT_CL_CODIGO In (select cuenta from cuentaa)"$)
Log($"CAT_CL_CODIGO = '${la_cuenta.text}', CAT_CL_CEDIS = '${Subs.traeAlmacen}', CAT_CL_LAT = '${l_lat.text}', CAT_CL_LONG = '${l_lon.text}', CAT_CL_SECUENCIA = '${l_secuencia.text}', CAT_CL_RUTA = '${l_ruta.text}', CAT_CL_DIASEMANA = '${cb_diaSemana.SelectedItem}', CAT_CL_GIRO = '${cb_giro.SelectedItem}', CAT_CL_NOMBRE = '${E_NOMBRE_C.text}', CAT_CL_ATIENDE1 = '${et_atiende.text}', CAT_CL_CALLE = '${et_calle.text}', CAT_CL_NOINT = '${et_NoInt.text}', CAT_CL_NOEXT = '${et_NoExt.text}', CAT_CL_CALLE1 = '${et_direccion.text}', CAT_CL_CRUCE1 = '${E_ENTRE1.text}', CAT_CL_CALLE2 = '${E_ENTRE_2.text}', CAT_CL_CP = '${et_cp.text}', CAT_CL_COLONIA = '${et_colonia.text}', CAT_CL_MUNI = '${et_municipio.text}', CAT_CL_EDO = '${et_estado.text}', CAT_CL_ESTATUS = '${CLIENTE_ACTIVO}', gestion = 11"$)
' B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO NOVENTA (NV_CLIENTE, NV_FECHA, NV_USER, NV_MOTIVO, NV_COMM, NV_LAT, NV_LON) VALUES(?,?,?,?,?,?,?) ", Array As Object (clie_id, sDate & sTime, usuario, "CENSOS", CLIENTE_ACTIVO, l_lat.text, l_lon.text))
mandaPendientes
B4XPages.ShowPage("Clientes")
@@ -415,9 +422,9 @@ Sub mandaPendientes
reqManager.ExecuteCommand(cmd, "guaradClienteGeocerca")
cmd.Initialize
cmd.Name = "sp_confirmaCliente"
cmd.Parameters = Array As Object(c.GetString("CAT_CL_CODIGO"), Subs.traeAlmacen, c.GetString("CAT_CL_LAT"), c.GetString("CAT_CL_LONG"), c.GetString("CAT_CL_SECUENCIA"), c.GetString("CAT_CL_RUTA"), c.GetString("CAT_CL_DIASEMANA"), c.GetString("CAT_CL_GIRO"), Subs.escapeSQLString(c.GetString("CAT_CL_NOMBRE")), c.GetString("CAT_CL_ATIENDE1"), c.GetString("CAT_CL_CALLE"), c.GetString("CAT_CL_NOINT"), c.GetString("CAT_CL_NOEXT"), Subs.escapeSQLString(c.GetString("CAT_CL_CALLE1")), c.GetString("CAT_CL_CRUCE1"), c.GetString("CAT_CL_CALLE2"), c.GetString("CAT_CL_CP"), c.GetString("CAT_CL_COLONIA"), c.GetString("CAT_CL_MUNI"), c.GetString("CAT_CL_EDO"), c.GetString("CAT_CL_ESTATUS"), c.GetString("CAT_CL_FECHA_CAPTURA"), sDate, Subs.traeUsuarioDeBD)
Log($"${c.GetString("CAT_CL_CODIGO")}, ${Subs.traeAlmacen}, ${c.GetString("CAT_CL_LAT")}, ${c.GetString("CAT_CL_LONG")}, ${c.GetString("CAT_CL_SECUENCIA")}, ${c.GetString("CAT_CL_RUTA")}, ${c.GetString("CAT_CL_DIASEMANA")}, ${c.GetString("CAT_CL_GIRO")}, ${Subs.escapeSQLString(c.GetString("CAT_CL_NOMBRE"))}, ${c.GetString("CAT_CL_ATIENDE1")}, ${c.GetString("CAT_CL_CALLE")}, ${c.GetString("CAT_CL_NOINT")}, ${c.GetString("CAT_CL_NOEXT")}, ${c.GetString("CAT_CL_CALLE1")}, ${c.GetString("CAT_CL_CRUCE1")}, ${c.GetString("CAT_CL_CALLE2")}, ${c.GetString("CAT_CL_CP")}, ${c.GetString("CAT_CL_COLONIA")}, ${c.GetString("CAT_CL_MUNI")}, ${c.GetString("CAT_CL_EDO")}, ${c.GetString("CAT_CL_ESTATUS")}, ${c.GetString("CAT_CL_FECHA_CAPTURA")}, ${sDate}, ${Subs.traeUsuarioDeBD}"$)
cmd.Name = "sp_confirmaCliente2"
cmd.Parameters = Array As Object(c.GetString("CAT_CL_CODIGO"), Subs.traeAlmacen, c.GetString("CAT_CL_LAT"), c.GetString("CAT_CL_LONG"), c.GetString("CAT_CL_SECUENCIA"), c.GetString("CAT_CL_RUTA"), c.GetString("CAT_CL_DIASEMANA"), c.GetString("CAT_CL_GIRO"), Subs.escapeSQLString(c.GetString("CAT_CL_NOMBRE")), c.GetString("CAT_CL_ATIENDE1"), c.GetString("CAT_CL_CALLE"), c.GetString("CAT_CL_NOINT"), c.GetString("CAT_CL_NOEXT"), Subs.escapeSQLString(c.GetString("CAT_CL_CALLE1")), c.GetString("CAT_CL_CRUCE1"), c.GetString("CAT_CL_CALLE2"), c.GetString("CAT_CL_CP"), c.GetString("CAT_CL_COLONIA"), c.GetString("CAT_CL_MUNI"), c.GetString("CAT_CL_EDO"), c.GetString("CAT_CL_ESTATUS"), c.GetString("CAT_CL_FECHA_CAPTURA"), sDate, Subs.traeUsuarioDeBD, c.GetString("CAT_CL_TELEFONO"), c.GetString("CAT_CL_EMAIL"))
Log($"${c.GetString("CAT_CL_CODIGO")}, ${Subs.traeAlmacen}, ${c.GetString("CAT_CL_LAT")}, ${c.GetString("CAT_CL_LONG")}, ${c.GetString("CAT_CL_SECUENCIA")}, ${c.GetString("CAT_CL_RUTA")}, ${c.GetString("CAT_CL_DIASEMANA")}, ${c.GetString("CAT_CL_GIRO")}, ${Subs.escapeSQLString(c.GetString("CAT_CL_NOMBRE"))}, ${c.GetString("CAT_CL_ATIENDE1")}, ${c.GetString("CAT_CL_CALLE")}, ${c.GetString("CAT_CL_NOINT")}, ${c.GetString("CAT_CL_NOEXT")}, ${c.GetString("CAT_CL_CALLE1")}, ${c.GetString("CAT_CL_CRUCE1")}, ${c.GetString("CAT_CL_CALLE2")}, ${c.GetString("CAT_CL_CP")}, ${c.GetString("CAT_CL_COLONIA")}, ${c.GetString("CAT_CL_MUNI")}, ${c.GetString("CAT_CL_EDO")}, ${c.GetString("CAT_CL_ESTATUS")}, ${c.GetString("CAT_CL_FECHA_CAPTURA")}, ${sDate}, ${Subs.traeUsuarioDeBD}, ${c.GetString("CAT_CL_TELEFONO")}, ${c.GetString("CAT_CL_EMAIL")}"$)
reqManager.ExecuteCommand(cmd , $"confirmaCliente_${c.GetString("CAT_CL_CODIGO")}"$)
cmd.Initialize
@@ -602,7 +609,7 @@ End Sub
Private Sub lv_giro_ItemClick (Position As Int, Value As Object)
' lv_giro.Visible = False
et_giro.Text = Value
' et_giro.Text = Value
End Sub
Private Sub l_cp_LongClick
@@ -689,6 +696,10 @@ Private Sub et_diaSemana_TextChanged (Old As String, New As String)
camposModificados.Add("CAT_CL_DIAS_VISITA")
End Sub
Private Sub cb_diaSemana_SelectedIndexChanged (Index As Int)
camposModificados.Add("CAT_CL_DIAS_VISITA")
End Sub
Sub q_preguntaContestada(m As Map)
' Recibimos el id de la pregunta, el id de la respuesta, el texto de la respuesta y el objeto del panelSombra para poder ocultarlo.
Log(m)
@@ -769,17 +780,19 @@ Sub ajustaTamano
' Log("xx: " & sv_clientesDatos.Panel.Height)
End Sub
Private Sub Label9_LongClick
' Log(b_guardaCambios.Top)
If l_cuestionario.Visible Then
l_cuestionario.Visible = False
' b_guardaCambios.Top = b_mapa2.Top + b_mapa2.Height + 20
' Log($"${b_mapa2.Top} + ${b_mapa2.Height} + 20dip"$)
Else
l_cuestionario.Visible = True
' b_guardaCambios.Top = l_cuestionario.Top + l_cuestionario.Height + 20
' Log($"${l_cuestionario.Top} + ${l_cuestionario.Height} + 20"$)
End If
' Log(b_guardaCambios.Top)
ajustaTamano
End Sub
'Private Sub Label9_LongClick
'' Log(b_guardaCambios.Top)
' If l_cuestionario.Visible Then
' l_cuestionario.Visible = False
' l_tituloCuestionaro.Visible = False
'' b_guardaCambios.Top = b_mapa2.Top + b_mapa2.Height + 20
'' Log($"${b_mapa2.Top} + ${b_mapa2.Height} + 20dip"$)
' Else
' l_cuestionario.Visible = True
' l_tituloCuestionaro.Visible = True
'' b_guardaCambios.Top = l_cuestionario.Top + l_cuestionario.Height + 20
'' Log($"${l_cuestionario.Top} + ${l_cuestionario.Height} + 20"$)
' End If
'' Log(b_guardaCambios.Top)
' ajustaTamano
'End Sub