From f228fe75676a15cc0859b479847403087b0a6871 Mon Sep 17 00:00:00 2001 From: Jose Alberto Guerra Ugalde Date: Tue, 27 Feb 2024 03:10:12 -0600 Subject: [PATCH] =?UTF-8?q?-=20Se=20agreg=C3=B3=20c=C3=B3digo=20para=20que?= =?UTF-8?q?=20descargue=20los=20clientes=20que=20ya=20hayan=20contstado=20?= =?UTF-8?q?el=20cuestionario=20y=20al=20iniciar=20venta,=20valide=20si=20e?= =?UTF-8?q?l=20cliente=20actual=20ya=20tenia=20o=20no=20contestado=20el=20?= =?UTF-8?q?cuestionario?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- B4A/B4XMainPage.bas | 1 + B4A/C_Cliente.bas | 10 +++++----- B4A/C_Principal.bas | 25 +++++++++++++++++++------ B4A/INTMEX_LL.b4a.meta | 4 ++-- 4 files changed, 27 insertions(+), 13 deletions(-) diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 49d8987..9ac7236 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -172,6 +172,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) 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 COORDENADAS_GPS (tienda_id TEXT, ruta TEXT, almacen TEXT, latitud TEXT, longitud TEXT, fecha TEXT)") + skmt.ExecNonQuery("CREATE TABLE IF NOT EXISTS HIST_CUESTIONARIO (HC_CLIENTE TEXT)") Subs.agregaColumna("PEDIDO", "PE_ENVIO_OK", "INT") c=skmt.ExecQuery("select COUNT(*) AS CUANTOS from HIST_STAY_OUT ") C.Position = 0 diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index b6f87ee..b47af73 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -415,8 +415,11 @@ End Sub Sub gest_Click B4XPages.MainPage.tipo_venta = "PREVENTA" - Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) - If Not(cuest.encuestaIniciada) And Not(cuest.clienteConCuestionario(Subs.traeCliente)) Then + 'Buscamos en el historial de cuestionarios si el cliente ya tiene cuestionario contestado. + Private hc As Cursor = Starter.skmt.ExecQuery($"select count(HC_CLIENTE) as cuantos from HIST_CUESTIONARIO where HC_CLIENTE = '${Subs.traeCliente}'"$) + hc.Position = 0 + Log($"${cuest.encuestaIniciada} - ${hc.GetString("cuantos")} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) + If Not(cuest.encuestaIniciada) And hc.GetString("cuantos") = 0 And Not(cuest.clienteConCuestionario(Subs.traeCliente)) Then cuest.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")) Return False End If @@ -931,9 +934,6 @@ Sub mandaPendientes Next End If c.Close - - - End If End Sub diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 4b6bd8a..b86b69e 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -893,10 +893,17 @@ Sub cargar_Click cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_promos") + cmd.Initialize + cmd.Name = "select_clientes_cuestionario" + cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) + Log($"${e_ruta.text}, ${ALMACEN}"$) + B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "clientes_cuestionario") + cmd.Initialize cmd.Name = "select_hist_cliente_promos_INTMEX" cmd.Parameters = Array As Object(e_ruta.text, ALMACEN) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "hist_cliente_promos") + ' cmd.Initialize ' cmd.Name = "select_HIST_MARCAS_CUOTAS_INTMEX" @@ -1007,7 +1014,7 @@ Sub JobDone(Job As HttpJob) LogColor(">>>>>> " & B4XPages.MainPage.reqManager.reqsList.Size & " - " & B4XPages.MainPage.reqManager.reqsList, Colors.Blue) End If If Job.Success = False Then - LogColor("Error: " & Job.tag & " : " & Job.ErrorMessage, Colors.red) + LogColor("Error: " & B4XPages.MainPage.reqManager.HandleJob(Job).tag & " : " & Job.ErrorMessage, Colors.red) If Job.ErrorMessage = "STREAM" Then If CARGA = "SUBIR" Then PB2.Progress = PB2.Progress + PORCENTAJE @@ -1022,7 +1029,6 @@ Sub JobDone(Job As HttpJob) 'Verificamos que el usuario guardado en BD sea VALIDO. If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) - If RESULT.Tag = "update_gps" Then For Each records() As Object In RESULT.Rows Log("==========================REGISTROS="&RESULT.Rows) @@ -1722,17 +1728,24 @@ Sub JobDone(Job As HttpJob) End If If Job.JobName = "DBRequest" Then + Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) If RESULT.Tag = "ins_cuestionario" Then 'query tag Subs.logJobDoneResultados(RESULT) End If - + If RESULT.Tag = "test" Then 'query tag Log(">>>>>>>>>>>>> TEST") Subs.logJobDoneResultados(RESULT) End If + + If RESULT.Tag = "clientes_cuestionario" Then + Starter.skmt.ExecNonQuery("delete from HIST_CUESTIONARIO") + For Each records() As Object In RESULT.Rows + Dim idCliente As String = records(RESULT.Columns.Get("NOTA")) + Starter.skmt.ExecNonQuery2("INSERT INTO HIST_CUESTIONARIO(HC_CLIENTE) VALUES (?)", Array As Object (idCliente)) + Next + End If End If - - Job.Release End Sub @@ -1780,7 +1793,7 @@ Sub connecta_Click Dim cmd As DBCommand cmd.Initialize - cmd.Name = "select_ruta_INTMEX_6" + cmd.Name = "select_ruta_INTMEX_7" cmd.Parameters = Array As Object(ALMACEN,e_ruta.text,imei) Log($"${ALMACEN},${e_ruta.text},${imei}"$) B4XPages.MainPage.reqManager.ExecuteQuery(cmd , 0, "ruta") diff --git a/B4A/INTMEX_LL.b4a.meta b/B4A/INTMEX_LL.b4a.meta index 554305a..8cd2534 100644 --- a/B4A/INTMEX_LL.b4a.meta +++ b/B4A/INTMEX_LL.b4a.meta @@ -85,6 +85,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9=1 -NavigationStack=C_Cuestionario,Class_Globals,10,5,C_Cuestionario,Initialize,22,6,C_Cliente,B4XPage_Created,159,0,C_Cliente,cuest_preguntaContestada,1134,2,C_Cliente,CreateListItem,1122,0,C_Cliente,b_cxc_Click,1108,0,C_Principal,Initialize,209,0,C_Principal,Class_Globals,204,0,C_Principal,B4XPage_Created,287,0,C_Principal,Subir_Click,740,0,C_Principal,cargar_Click,823,0 +NavigationStack=C_Cliente,CreateListItem,1119,0,C_Principal,Class_Globals,0,0,C_Principal,connecta_Click,1790,0,C_Principal,cargar_Click,866,6,C_Principal,JobDone,1738,0,C_Cliente,B4XPage_Created,159,0,C_Cliente,Class_Globals,145,0,C_Cliente,cuest_preguntaContestada,1135,2,C_Cliente,ListView1_ItemLongClick,408,0,C_Cliente,gest_Click,411,6 SelectedBuild=0 -VisibleModules=2,26,24,13,16,14,4,27,15,9,6,17 +VisibleModules=2,26,13,16,14,4,27,15,9,6