mirror of
https://github.com/KeymonSoft/Mariana_Censos.git
synced 2026-04-17 21:06:31 +00:00
- Se modifico el mandaPendientes y mandaPendientesNuevosClientes para que cuando se llamen desde Principal se manden TODOS, y cuando se llamen al guardar un cliente solo se manden los pendientes. - Se egrego que cuando se mande información al final del día, se mande tambien información al TMP_DROP
644 lines
24 KiB
QBasic
644 lines
24 KiB
QBasic
B4A=true
|
|
Group=Default Group
|
|
ModulesStructureVersion=1
|
|
Type=Class
|
|
Version=11.5
|
|
@EndOfDesignText@
|
|
Sub MODS 'ignore
|
|
'V3.04.10 - Se agregó código para el registro de abonos, en B4XMainPage se genera la tabla y aquí se agregó el panel p_abonos para ralizar el abono, y el codigo en el sub "mandaPendientes" para cambiar la bandera de enviado en el abono.
|
|
End Sub
|
|
|
|
Sub Class_Globals
|
|
Private Root As B4XView 'ignore
|
|
Dim rp As RuntimePermissions
|
|
Private xui As XUI 'ignore
|
|
Private p_cliente As Panel
|
|
Dim reqManager As DBRequestManager
|
|
Dim cmd As DBCommand
|
|
Dim ime As IME
|
|
Dim g As GPS
|
|
Dim ruta As String
|
|
Dim skmt As SQL
|
|
Dim clie_id As String
|
|
Dim sDate,sTime As String
|
|
Dim usuario As String
|
|
Dim total_cliente As String
|
|
Dim m_lat, m_lon As String
|
|
' Dim btAdmin As BluetoothAdmin
|
|
Dim cmp20 As Serial
|
|
Dim printer As TextWriter
|
|
Dim PairedDevices As Map
|
|
Dim L As List
|
|
Dim TAMANO As Int
|
|
Dim ESPACIO As Int
|
|
Dim BLANCO As String
|
|
Dim cuenta As String
|
|
Dim tipo_venta As String = "PREVENTA"
|
|
Dim MAC_IMPRESORA As String
|
|
Dim c As Cursor
|
|
Dim s As Cursor
|
|
Dim DD As Cursor
|
|
Dim c2 As Cursor
|
|
Dim ListView1 As ListView
|
|
Dim la_cuenta As Label
|
|
Dim La_nombre As Label
|
|
Dim la_Calle As Label
|
|
Dim la_numero As Label
|
|
Dim la_nint As Label
|
|
Dim la_edo As Label
|
|
Dim la_pob As Label
|
|
Dim la_col As Label
|
|
Dim la_cp As Label
|
|
Dim la_zona As Label
|
|
Dim gest As Button
|
|
Dim la_saldotot As Label
|
|
Dim la_saldooper As Label
|
|
Dim Tels As Button
|
|
Dim Label10 As Label
|
|
Dim Label11 As Label
|
|
Dim Tar As Button
|
|
Dim la_comm As Label
|
|
Dim la_actdte As Label
|
|
Dim la_usuario As Label
|
|
Dim la_resultado As Label
|
|
Dim l_entre1 As Label
|
|
Dim l_entre2 As Label
|
|
Dim l_atiende As Label
|
|
Dim l_atiende2 As Label
|
|
Dim DATOS As Button
|
|
Dim NUEVO As Button
|
|
' Dim lat_gps, lon_gps As String
|
|
Dim l_total As Label
|
|
Dim c2 As Cursor
|
|
Dim S2 As Cursor
|
|
Private s As Cursor
|
|
Dim res As String
|
|
Private HIST As Button
|
|
Private MONTO_COMPRA As String
|
|
Private META As String
|
|
Private META2 As String
|
|
Private VERIFICA As String
|
|
Private L_QR As Label
|
|
Private BT_QR As Button
|
|
Dim CODIGO As String
|
|
Private b_mapa As Button
|
|
Dim CUANTOS As String
|
|
Private B_IMP As Button
|
|
Dim Toggla As Toggle
|
|
Dim tgl As Toggle
|
|
Private Panel1 As Panel
|
|
Private I_COMPRA As EditText
|
|
Private b_venta As Button
|
|
Dim ALMACEN As String
|
|
Private LA_GPS As Label
|
|
Private B_E_NEXT As Button
|
|
Private E_RES_E As EditText
|
|
Private t_tenc As Label
|
|
Private Panel2 As Panel
|
|
Private CONTADOR_E As String
|
|
Private HR_RES1 As String
|
|
Private HR_RES2 As String
|
|
Private HR_RES3 As String
|
|
Private EXISTE As String
|
|
Private TELEFONO As String
|
|
Private RB1, RB2, RB3, RB4, RB5 As RadioButton
|
|
Private stay_hh, stay_mi, stay_ss As String
|
|
Dim result As Int
|
|
Private LA_RUTA As String
|
|
Private b_like As Button
|
|
Private B_GPS As Button
|
|
Dim CODIGO As String
|
|
Private cb_factura As CheckBox
|
|
Private p_cbFactura As Panel
|
|
Dim venimosDeTicketsDia As Boolean = False
|
|
Private p_abono As Panel
|
|
Private et_abono As EditText
|
|
Private b_abono As Button
|
|
Private b_cancelar As Button
|
|
Private b_abono1 As Button
|
|
Private E_NOMBRE_C As EditText
|
|
Private et_direccion As EditText
|
|
Private E_ENTRE1 As EditText
|
|
Private E_ENTRE_2 As EditText
|
|
Private CH_ACTIVO As CheckBox
|
|
Private CLIENTE_ACTIVO As String
|
|
Private et_cp As EditText
|
|
Private et_colonia As EditText
|
|
Private lv_colonia As ListView
|
|
Private et_estado As EditText
|
|
Private et_municipio As EditText
|
|
Dim desdeBD As Boolean
|
|
Private b_guardaCambios As Button
|
|
Private l_secuencia As Label
|
|
Private l_ruta As Label
|
|
Private et_diaSemana As EditText
|
|
Private et_giro As EditText
|
|
Private lv_diaSemana As ListView
|
|
Private et_calle As EditText
|
|
Private et_NoExt As EditText
|
|
Private et_NoInt As EditText
|
|
Private l_cp As Label
|
|
Private l_lon As Label
|
|
Private l_lat As Label
|
|
Private b_actCoords As Button
|
|
Private estatus As String
|
|
Private cb_activo As B4XComboBox
|
|
Private et_atiende As EditText
|
|
Private cb_giro As B4XComboBox
|
|
Dim refrescarCliente As Boolean = False
|
|
Dim Timer2 As Timer
|
|
Dim Interval As Int = 300
|
|
Dim turnoColor As Int = 1
|
|
Dim cd As ColorDrawable
|
|
Dim camposModificados As List
|
|
dim mandarTodo as Boolean = False
|
|
End Sub
|
|
|
|
'You can add more parameters here.
|
|
Public Sub Initialize As Object
|
|
Return Me
|
|
End Sub
|
|
|
|
'This event will be called once, before the page becomes visible.
|
|
Private Sub B4XPage_Created (Root1 As B4XView)
|
|
Log("Entramos a clientes create")
|
|
Root = Root1
|
|
'load the layout to Root
|
|
' Activity.RemoveAllViews
|
|
Root.LoadLayout("cliente")
|
|
ruta = File.DirInternal
|
|
If File.Exists(ruta, "kmt.db") = False Then
|
|
File.Copy(File.DirAssets, "kmt.db", ruta, "kmt.db")
|
|
End If
|
|
skmt.Initialize(ruta,"kmt.db", True)
|
|
' btAdmin.Initialize("BlueTeeth")
|
|
' cmp20.Initialize("Printer")
|
|
m_lat = 0
|
|
m_lon = 0
|
|
|
|
reqManager.Initialize(Me, Starter.server)
|
|
|
|
Log("terminamos create")
|
|
camposModificados.Initialize
|
|
End Sub
|
|
|
|
'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage.
|
|
|
|
Sub B4XPage_Appear
|
|
rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA)
|
|
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
|
|
rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE)
|
|
Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean)
|
|
CallSubDelayed(Tracker, "StartFLPSmall")
|
|
reqManager.Initialize(Me, Starter.server)
|
|
lv_colonia.Visible = False
|
|
Timer2.Initialize("Timer2", Interval * 1)
|
|
Timer2.Enabled = True
|
|
b_guardaCambios.Enabled = False
|
|
b_guardaCambios.Text = "Buscando Ubicación"
|
|
If Not(Starter.gps.GPSEnabled) Then
|
|
ToastMessageShow("Es necesario tener el GPS encendido", True)
|
|
StartActivity(Starter.gps.LocationSettingsIntent)
|
|
End If
|
|
If refrescarCliente Then
|
|
LogColor("Cargamos cliente de BD", Colors.Magenta)
|
|
skmt.Initialize(ruta,"kmt.db", True)
|
|
c = B4XPages.MainPage.skmt.ExecQuery("select * from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)")
|
|
If c.RowCount > 0 Then
|
|
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_diaSemana.Text = c.GetString("CAT_CL_DIASEMANA")
|
|
l_secuencia.text = c.GetString("CAT_CL_SECUENCIA")
|
|
la_cuenta.Text = c.GetString("CAT_CL_CODIGO")
|
|
E_NOMBRE_C.TEXT = c.GetString("CAT_CL_NOMBRE")
|
|
et_direccion.Text = c.GetString("CAT_CL_CALLE1")
|
|
et_colonia.Text = ""
|
|
et_colonia.Text = c.GetString("CAT_CL_COLONIA")
|
|
et_estado.Text = c.GetString("CAT_CL_EDO")
|
|
desdeBD = True
|
|
et_cp.Text = c.GetString("CAT_CL_CP")
|
|
et_calle.Text = c.GetString("CAT_CL_CALLE")
|
|
et_NoExt.Text = c.GetString("CAT_CL_NOEXT")
|
|
et_NoInt.Text = c.GetString("CAT_CL_NOINT")
|
|
estatus = c.GetString("CAT_CL_ESTATUS")
|
|
If estatus = Null Then estatus = ""
|
|
cb_activo.Tag = estatus
|
|
E_ENTRE1.Text = ""
|
|
E_ENTRE_2.Text = ""
|
|
et_atiende.Text = ""
|
|
If c.GetString("CAT_CL_CRUCE1") <> Null Then E_ENTRE1.Text = c.GetString("CAT_CL_CRUCE1")
|
|
If c.GetString("CAT_CL_CALLE2") <> Null Then E_ENTRE_2.Text = c.GetString("CAT_CL_CALLE2")
|
|
If c.GetString("CAT_CL_ATIENDE1") <> Null Then et_atiende.Text = c.GetString("CAT_CL_ATIENDE1")
|
|
m_lat = "0"
|
|
If c.GetString("CAT_CL_LAT") <> "" Then m_lat = c.GetString("CAT_CL_LAT")
|
|
If m_lat.Length < 5 Then m_lat = "0"
|
|
m_lon = "0"
|
|
If c.GetString("CAT_CL_LONG") <> "" Then m_lon = c.GetString("CAT_CL_LONG")
|
|
If m_lon.Length < 5 Then m_lon = "0"
|
|
l_lat.Text = m_lat
|
|
l_lon.Text = m_lon
|
|
End If
|
|
' Tracker.FLP.Connect
|
|
If Tracker.FLP.IsInitialized And Tracker.FLP.GetLastKnownLocation.IsInitialized Then 'Si tenemos "UltimaUbicaccionConocida" la usamos.
|
|
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
|
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
|
' Log($"Tenemos UUC: ${Tracker.FLP.GetLastKnownLocation.Latitude},${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
|
' GPS_LocationChanged(Tracker.FLP.GetLastKnownLocation)
|
|
End If
|
|
desdeBD = False
|
|
Dim itemsAct As List
|
|
itemsAct.Initialize
|
|
itemsAct.Add("Activo")
|
|
itemsAct.Add("No Activo")
|
|
itemsAct.Add("Cerrado Permanente")
|
|
cb_activo.SetItems(itemsAct)
|
|
' Log(estatus)
|
|
If estatus = "Activo" Then
|
|
cb_activo.SelectedIndex = 0
|
|
CLIENTE_ACTIVO = "Activo"
|
|
Else If estatus = "Inactivo" Then
|
|
cb_activo.SelectedIndex = 1
|
|
CLIENTE_ACTIVO = "Inactivo"
|
|
Else
|
|
cb_activo.SelectedIndex = 2
|
|
CLIENTE_ACTIVO = "Cerrado Permanente"
|
|
End If
|
|
Dim losGiros As List = Subs.traeGirosLista
|
|
cb_giro.SetItems(losGiros)
|
|
cb_giro.SelectedIndex = losGiros.IndexOf(c.GetString("CAT_CL_GIRO"))
|
|
cb_giro.mBase.Width = et_diaSemana.Width
|
|
Log("|"&c.GetString("CAT_CL_GIRO")&"|")
|
|
c.Close
|
|
camposModificados.Clear
|
|
End If
|
|
refrescarCliente = False
|
|
End Sub
|
|
|
|
Private Sub Timer2_Tick
|
|
' Log(turnoColor)
|
|
If turnoColor = 1 Then
|
|
cd.Initialize(Colors.RGB(125, 125, 125), 5dip) '210, 132, 79 '210, 105, 30 '125, 125, 125
|
|
b_guardaCambios.Background = cd
|
|
turnoColor = 0
|
|
Else
|
|
cd.Initialize(Colors.RGB(87, 87, 87), 5dip) '210, 132, 79 '210, 105, 30 '125, 125, 125
|
|
b_guardaCambios.Background = cd
|
|
turnoColor = 1
|
|
End If
|
|
End Sub
|
|
|
|
Sub GPS_LocationChanged (Location1 As Location)
|
|
LogColor($"Entrando a Cliente.GPS_LocationChanged"$, Colors.red)
|
|
' Log($"${Tracker.FLP.GetLastKnownLocation.Latitude}, ${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
|
If Tracker.FLP.GetLastKnownLocation.IsInitialized And Tracker.FLP.GetLastKnownLocation.Latitude <> 0 Then
|
|
B4XPages.MainPage.lat_gps = Tracker.FLP.GetLastKnownLocation.Latitude
|
|
B4XPages.MainPage.lon_gps = Tracker.FLP.GetLastKnownLocation.Longitude
|
|
' Log("Coords set to: " & B4XPages.MainPage.lat_gps & " and " & B4XPages.MainPage.lon_gps)
|
|
End If
|
|
Dim l1, l2 As Location
|
|
l1.Initialize2(B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps)
|
|
' Log($"Coordenadas de la tienda - lat:${m_lat}, lon:${m_lon}"$)
|
|
l2.Initialize2(m_lat, m_lon)
|
|
' Log($"${Location1.Latitude}, ${Location1.Longitude} - ${Tracker.FLP.GetLastKnownLocation.Latitude}, ${Tracker.FLP.GetLastKnownLocation.Longitude}"$)
|
|
'now we need the distance between our location and the target location
|
|
Dim distance As Long
|
|
distance = l1.DistanceTo(l2) 'the result is in meter
|
|
B4XPages.MainPage.skmt.ExecNonQuery("DELETE FROM HIST_GPS")
|
|
B4XPages.MainPage.skmt.ExecNonQuery2("INSERT INTO HIST_GPS (HGDATE, HGLAT, HGLON) VALUES(?,?,?) ", Array As Object (sDate & " " & sTime, B4XPages.MainPage.lat_gps, B4XPages.MainPage.lon_gps))
|
|
CallSubDelayed(Tracker, "CreateLocationRequest")
|
|
b_guardaCambios.Text = "Guardar"
|
|
b_guardaCambios.Enabled = True
|
|
Timer2.Enabled = False
|
|
b_guardaCambios.Color = Colors.RGB(210, 105, 30) '210, 132, 79 '210, 105, 30
|
|
End Sub
|
|
|
|
Private Sub B4XPage_CloseRequest As ResumableSub
|
|
' BACK key pressed
|
|
' Return True To close, False To cancel
|
|
Return True
|
|
' Return False
|
|
End Sub
|
|
|
|
Private Sub b_guardaCambios_Click
|
|
' dd/mm/yyyy hh24:mi:ss
|
|
DateTime.DateFormat = "dd/MM/yyyy HH:mm:ss"
|
|
sDate=DateTime.Date(DateTime.Now)
|
|
camposModificados = Subs.RemoveDuplicates(camposModificados)
|
|
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.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")
|
|
End Sub
|
|
|
|
Sub NUEVO_Click
|
|
B4XPages.ShowPage("NuevoCliente")
|
|
End Sub
|
|
|
|
Private Sub p_cliente_Click
|
|
'Nada aqui, solo esta para que los clics no se pasen hacia atras.
|
|
End Sub
|
|
|
|
Sub mandaPendientes
|
|
'Enviamos Pendientes
|
|
c = B4XPages.MainPage.skmt.ExecQuery("SELECT * from kmt_info where CAT_CL_ENVIO_PENDIENTE = '1'")
|
|
If mandarTodo Then c = B4XPages.MainPage.skmt.ExecQuery("SELECT * from kmt_info")
|
|
Log($"Cliente PENDIENTE: ${c.RowCount}"$)
|
|
If c.RowCount > 0 Then
|
|
For i = 0 To c.RowCount - 1
|
|
c.Position = i
|
|
' Dim fechaCaptura As String = c.GetString("CAT_CL_FECHA_CAPTURA").As(String).SubString2(0,10)
|
|
Dim fechaCaptura As String = c.GetString("CAT_CL_FECHA_CAPTURA")
|
|
Log(fechaCaptura)
|
|
Dim cmd As DBCommand
|
|
Dim motivo As String = "VERIFICACION DE DATOS"
|
|
Dim comentario As String = c.GetString("ESTATUS_ORIGINAL")
|
|
If c.GetString("CAT_CL_CODIGO").As(String).SubString2(0,1) = "N" Then motivo = "VERIFICACION CLIENTE NUEVO PREVENTA"
|
|
If c.GetString("CAT_CL_CODIGO").As(String).SubString2(0,2) = "NC" Then motivo = "CLIENTE NUEVO CENSOS"
|
|
If c.GetString("CAT_CL_CODIGO").As(String).SubString2(0,1) = "N" Then comentario = ""
|
|
If c.GetString("CAT_CL_CODIGO").As(String).SubString2(0,2) = "NC" Then comentario = c.GetString("CAT_CL_CALLE1")
|
|
|
|
cmd.Initialize
|
|
cmd.Name = "guardaClienteGeocerca_MARDS"
|
|
cmd.Parameters = Array As Object(c.GetString("CAT_CL_CODIGO"), fechaCaptura, Subs.traeUsuarioDeBD, c.GetString("CAT_CL_LAT"), c.GetString("CAT_CL_LONG"), l_ruta.text, Subs.traeAlmacen, c.GetString("LAT_CENSADOR"), c.GetString("LON_CENSADOR"), motivo, comentario)
|
|
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}"$)
|
|
reqManager.ExecuteCommand(cmd , $"confirmaCliente_${c.GetString("CAT_CL_CODIGO")}"$)
|
|
|
|
cmd.Initialize
|
|
cmd.Name = "guardaClientesNuevosMods_MARDS"
|
|
cmd.Parameters = Array As Object(Subs.traeUsuarioDeBD, Subs.traeAlmacen, Subs.traeAlmacen, c.GetString("CAT_CL_RUTA"), Subs.traeCliente, c.GetString("CAMPOS_MODIFICADOS"))
|
|
Log($"${Subs.traeUsuarioDeBD}, ${Subs.traeAlmacen}, ${Subs.traeAlmacen}, ${c.GetString("CAT_CL_RUTA")}, ${Subs.traeCliente}, ${c.GetString("CAMPOS_MODIFICADOS")}"$)
|
|
reqManager.ExecuteCommand(cmd , $"guardaClientesNuevosMods_${c.GetString("CAT_CL_CODIGO")}"$)
|
|
Next
|
|
End If
|
|
End Sub
|
|
|
|
Sub JobDone(Job As HttpJob)
|
|
Log(Job.Success)
|
|
If Job.Success = False Then
|
|
ToastMessageShow("Error: " & Job.ErrorMessage, True)
|
|
LogColor("Error: " & Job.ErrorMessage, Colors.red)
|
|
Else
|
|
LogColor("JobDone: '" & reqManager.HandleJob(Job).tag & "' - Registros: " & reqManager.HandleJob(Job).Rows.Size, Colors.Green) 'Mod por CHV - 211027
|
|
If Job.JobName = "DBRequest" Then
|
|
Dim resultado As DBResult = reqManager.HandleJob(Job)
|
|
If resultado.Tag = "confirmaCliente" Then
|
|
Subs.logJobDoneResultados(resultado)
|
|
End If
|
|
'Modificamos la bandera de pendiente en kmt_info
|
|
If resultado.Tag.As(String).IndexOf("confirmaCliente_") > -1 Then
|
|
Private cliente As String= resultado.Tag
|
|
cliente = cliente.SubString(cliente.IndexOf("_")+1)
|
|
' Log($"Cliente: ${cliente}"$)
|
|
B4XPages.MainPage.skmt.ExecNonQuery($"update kmt_info set CAT_CL_ENVIO_PENDIENTE = 0 where CAT_CL_CODIGO = '${cliente}'"$)
|
|
Subs.logJobDoneResultados(resultado)
|
|
End If
|
|
If resultado.Tag = "guaradClienteGeocerca" Then
|
|
Subs.logJobDoneResultados(resultado)
|
|
End If
|
|
End If
|
|
Job.Release
|
|
End If
|
|
|
|
End Sub
|
|
|
|
Private Sub b_cancelar_Click
|
|
et_abono.Text = ""
|
|
p_abono.Visible = False
|
|
ime.HideKeyboard
|
|
End Sub
|
|
|
|
Private Sub et_cp_TextChanged (Old As String, New As String)
|
|
' Log(desdeBD)
|
|
camposModificados.Add("CAT_CL_CP")
|
|
If Not(desdeBD) And New.Length = 5 Then
|
|
Private cc As Cursor = skmt.ExecQuery($"select estado, municipio, colonia from sepomex where codigo = '${et_cp.text}'"$)
|
|
' LogColor(cc.RowCount, Colors.Green)
|
|
If cc.RowCount > 0 Then
|
|
For x = 0 To cc.RowCount - 1
|
|
cc.Position = x
|
|
et_estado.Text = cc.GetString("ESTADO")
|
|
et_municipio.Text = cc.GetString("MUNICIPIO")
|
|
Next
|
|
End If
|
|
End If
|
|
desdeBD = False
|
|
End Sub
|
|
|
|
Private Sub et_cp_FocusChanged (HasFocus As Boolean)
|
|
et_cp_click
|
|
End Sub
|
|
|
|
Sub et_cp_click
|
|
lv_colonia.Visible = False
|
|
End Sub
|
|
|
|
Private Sub et_colonia_Click
|
|
Sender.As(EditText).InputType = 524288
|
|
If lv_colonia.Visible = False Then
|
|
lv_colonia.Visible = True
|
|
Else
|
|
lv_colonia.Visible = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub et_colonia_FocusChanged (HasFocus As Boolean)
|
|
If HasFocus Then
|
|
Private cc As Cursor = skmt.ExecQuery($"select colonia from sepomex where codigo = '${et_cp.text}'"$)
|
|
lv_colonia.Clear
|
|
lv_colonia.BringToFront
|
|
Private label1 As Label
|
|
label1 = lv_colonia.SingleLineLayout.Label
|
|
label1.TextColor = Colors.White
|
|
label1.TextSize = 14
|
|
' Log(cc.RowCount)
|
|
If cc.RowCount > 0 Then
|
|
For i = 0 To cc.RowCount - 1
|
|
cc.Position = i
|
|
lv_colonia.AddSingleLine(cc.GetString("COLONIA"))
|
|
' Log(cc.GetString("COLONIA"))
|
|
Next
|
|
Else
|
|
lv_colonia.AddSingleLine("Código no encontrado.")
|
|
lv_colonia.AddSingleLine("Ingrese colonia manualmente.")
|
|
End If
|
|
lv_colonia.Visible = True
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub lv_colonia_ItemClick (Position As Int, Value As Object)
|
|
lv_colonia.Visible = False
|
|
If Value <> "Código no encontrado." And Value <> "Ingrese colonia manualmente." Then
|
|
et_colonia.Text = Value
|
|
End If
|
|
End Sub
|
|
|
|
Sub et_diaSemana_Click
|
|
LogColor("Clic diasemana", Colors.Red)
|
|
Sender.As(EditText).InputType = 524288
|
|
If Not(lv_diaSemana.Visible) Then
|
|
lv_diaSemana.Visible = True
|
|
Else
|
|
Log("Si visible")
|
|
lv_diaSemana.Visible = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub et_diaSemana_FocusChanged (HasFocus As Boolean)
|
|
If HasFocus And lv_diaSemana.Visible = False Then
|
|
' lv_diaSemana.Visible = True
|
|
lv_diaSemana.BringToFront
|
|
lv_diaSemana.Clear
|
|
Private label1 As Label
|
|
label1 = lv_diaSemana.SingleLineLayout.Label
|
|
label1.TextColor = Colors.White
|
|
label1.TextSize = 14
|
|
lv_diaSemana.AddSingleLine("LUNES")
|
|
lv_diaSemana.AddSingleLine("MARTES")
|
|
lv_diaSemana.AddSingleLine("MIERCOLES")
|
|
lv_diaSemana.AddSingleLine("JUEVES")
|
|
lv_diaSemana.AddSingleLine("VIERNES")
|
|
lv_diaSemana.AddSingleLine("SABADO")
|
|
lv_diaSemana.Visible = True
|
|
End If
|
|
If Not(HasFocus) And lv_diaSemana.Visible Then
|
|
lv_diaSemana.Visible = False
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub lv_diaSemana_ItemClick (Position As Int, Value As Object)
|
|
lv_diaSemana.Visible = False
|
|
et_diaSemana.Text = Value
|
|
End Sub
|
|
|
|
Sub et_giro_Click
|
|
' If lv_giro.Visible Then
|
|
' lv_giro.Visible = False
|
|
' Else
|
|
' lv_giro.Visible = True
|
|
' End If
|
|
End Sub
|
|
|
|
Sub et_giro_FocusChanged (HasFocus As Boolean)
|
|
' If HasFocus Then
|
|
' Sender.As(EditText).InputType = 524288
|
|
' Private cc As Cursor = skmt.ExecQuery($"select * from cat_giros"$)
|
|
' lv_giro.Clear
|
|
' lv_giro.BringToFront
|
|
' Private label1 As Label
|
|
'' label1 = lv_giro.SingleLineLayout.Label
|
|
' label1.TextColor = Colors.White
|
|
' label1.TextSize = 14
|
|
' Log(cc.RowCount)
|
|
' If cc.RowCount > 0 Then
|
|
' For i = 0 To cc.RowCount - 1
|
|
' cc.Position = i
|
|
' label1.Tag = cc.GetString("id")
|
|
' lv_giro.AddSingleLine(cc.GetString("descripcion"))
|
|
' Log(cc.GetString("descripcion"))
|
|
' Next
|
|
' End If
|
|
' lv_giro.Visible = True
|
|
' Else
|
|
' lv_giro.Visible = False
|
|
' End If
|
|
End Sub
|
|
|
|
Private Sub lv_giro_ItemClick (Position As Int, Value As Object)
|
|
' lv_giro.Visible = False
|
|
et_giro.Text = Value
|
|
End Sub
|
|
|
|
Private Sub l_cp_LongClick
|
|
et_cp_TextChanged(et_cp.Text, et_cp.Text)
|
|
End Sub
|
|
|
|
Private Sub b_mapa2_Click
|
|
B4XPages.MainPage.mapa.Latitud = l_lat.text
|
|
B4XPages.MainPage.mapa.Longitud = l_lon.text
|
|
B4XPages.MainPage.mapa.NOMBRE_TIENDA = E_NOMBRE_C.text
|
|
' B4XPages.MainPage.mapa.gmap.Clear
|
|
B4XPages.ShowPage("mapa")
|
|
End Sub
|
|
|
|
Private Sub b_actCoords_Click
|
|
l_lat.Text = B4XPages.MainPage.lat_gps
|
|
l_lon.Text = B4XPages.MainPage.lon_gps
|
|
camposModificados.Add("CAT_CL_LAT")
|
|
camposModificados.Add("CAT_CL_LONG")
|
|
ToastMessageShow("¡Coordenadas actualizadas!", False)
|
|
End Sub
|
|
|
|
Private Sub cb_activo_SelectedIndexChanged (Index As Int)
|
|
If Index = 0 Then
|
|
CLIENTE_ACTIVO = "Activo"
|
|
else if Index = 1 Then
|
|
CLIENTE_ACTIVO = "Inactivo"
|
|
Else
|
|
CLIENTE_ACTIVO = "Cerrado Permanente"
|
|
End If
|
|
Log(CLIENTE_ACTIVO)
|
|
camposModificados.Add("CAT_CL_ESTATUS")
|
|
End Sub
|
|
|
|
Private Sub cb_giro_SelectedIndexChanged (Index As Int)
|
|
camposModificados.Add("CAT_CL_GIRO")
|
|
End Sub
|
|
|
|
Private Sub et_atiende_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_ATIENDE1")
|
|
End Sub
|
|
|
|
Private Sub E_ENTRE_2_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_CALLE2")
|
|
End Sub
|
|
|
|
Private Sub E_ENTRE1_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_CRUCE1")
|
|
End Sub
|
|
|
|
Private Sub et_NoInt_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_NOINT")
|
|
End Sub
|
|
|
|
Private Sub et_NoExt_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_NOEXT")
|
|
End Sub
|
|
|
|
Private Sub et_calle_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_CALLE")
|
|
End Sub
|
|
|
|
Private Sub et_direccion_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_CALLE1")
|
|
End Sub
|
|
|
|
Private Sub et_colonia_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_COLONIA")
|
|
End Sub
|
|
|
|
Private Sub et_municipio_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_MUNI")
|
|
End Sub
|
|
|
|
Private Sub et_estado_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_EDO")
|
|
End Sub
|
|
|
|
Private Sub E_NOMBRE_C_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_NOMBRE")
|
|
End Sub
|
|
|
|
Private Sub et_diaSemana_TextChanged (Old As String, New As String)
|
|
camposModificados.Add("CAT_CL_DIAS_VISITA")
|
|
End Sub |