From 3c627bf7f66d87b16ba2ed61d3cb57bc276d6a56 Mon Sep 17 00:00:00 2001 From: Jose Alberto Guerra Ugalde Date: Sun, 4 Feb 2024 18:40:11 -0600 Subject: [PATCH] Se agrego el envio del cuestionario a mandaPendientes --- B4A/B4XMainPage.bas | 13 ++++++++++++ B4A/C_Cliente.bas | 46 ++++++++++++++++++++++++++++++++++++++---- B4A/C_Cuestionario.bas | 2 +- B4A/C_Principal.bas | 8 ++++++++ B4A/INTMEX_LL.b4a.meta | 6 +++--- 5 files changed, 67 insertions(+), 8 deletions(-) diff --git a/B4A/B4XMainPage.bas b/B4A/B4XMainPage.bas index 416d2fa..3f9ab05 100644 --- a/B4A/B4XMainPage.bas +++ b/B4A/B4XMainPage.bas @@ -425,6 +425,7 @@ Sub Entrar_Click End Sub Sub JobDone(Job As HttpJob) + Log("JOBDONE MAINPAGE") If B4XPages.MainPage.reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos. If B4XPages.MainPage.reqManager.reqsList.IndexOf(Job.tag) <> -1 Then B4XPages.MainPage.reqManager.reqsList.RemoveAt(B4XPages.MainPage.reqManager.reqsList.IndexOf(Job.tag)) @@ -504,6 +505,18 @@ Sub JobDone(Job As HttpJob) IMEI = "" End If End If + + If result.Tag = "ruta" Then 'query tag + Log("JOBDONE PRINCIPAL MAINPAGE") + For Each records() As Object In result.Rows + Dim VALIDO As String = records(result.Columns.Get("VALIDO")) + If VALIDO = "OK" Then + Log(VALIDO) + End If + Next + End If + + Job.Release End If Log($"Paso1 = ${paso1} - Name: ${name} - IMEI: ${IMEI} - IMEI_BASE: ${IMEI_BASE}"$) diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 189a873..cdba0f9 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -204,7 +204,6 @@ Private Sub B4XPage_Created (Root1 As B4XView) s.Close btAdmin.Initialize("BlueTeeth") cmp20.Initialize("Printer") - reqManager.Initialize(Me, Starter.DBReqServer) Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_CAMERA) Wait For B4XPage_PermissionResult (Permission As String, resultC As Boolean) Starter.rp.CheckAndRequest(Starter.rp.PERMISSION_WRITE_EXTERNAL_STORAGE) @@ -229,6 +228,7 @@ End Sub 'You can see the list of page related events in the B4XPagesManager object. The event name is B4XPage. Sub B4XPage_Appear + reqManager.Initialize(Me, Starter.DBReqServer) LA_GPS.TextColor = Colors.Red LA_GPS.Text = "SIN UBICACION GPS" cercavalor = 0 @@ -830,6 +830,7 @@ Sub mandaPendientes If usuario <> "KMTS1" Then c=B4XPages.MainPage.skmt.ExecQuery("SELECT PC_CLIENTE, PC_FECHA, PC_USER, PC_NOART, PC_MONTO,PC_LON, PC_LAT, PC_COSTO_SIN, PC_RUTA, PC_ALMACEN, PC_FACTURA FROM PEDIDO_CLIENTE where pc_envio_ok <> 1") Log($"Pedido_Cliente PENDIENTE: ${c.RowCount}"$) + If c.RowCount>0 Then For i=0 To c.RowCount -1 c.Position=i @@ -872,12 +873,9 @@ Sub mandaPendientes ab.Close 'CLIENTES NUEVOS -' Log("Entre aqui") Dim bb As Cursor = B4XPages.MainPage.skmt.ExecQuery($"SELECT * from CLIENTE_NUEVO where CN_enviado is null"$) Dim cb As Cursor = B4XPages.MainPage.skmt.ExecQuery("SELECT ID_ALMACEN from CAT_ALMACEN") cb.Position = 0 -' Log("Entre aqui x2") -' Log(bb.RowCount) If bb.RowCount > 0 Then For i=0 To bb.RowCount -1 bb.Position = i @@ -908,6 +906,23 @@ Sub mandaPendientes ' ' sql.update_factura_INTMEX=UPDATE INTMEX.HIST_VENTAS SET HV_FACTURA = (?) WHERE HV_CLIENTE = (?) And HV_ALMACEN = (?) ' End If ' c.Close + +' CUESTIONARIO (Pendientes) + c = B4XPages.MainPage.skmt.ExecQuery("SELECT * FROM CUESTIONARIO where Q_ENVIO_OK <> 1 order by Q_IDCLIENTE, Q_IDPREGUNTA; Q_IDRESPUESTA") + Private rutaActual As String = Subs.traeRuta + If c.RowCount > 0 Then + For x = 0 To c.RowCount - 1 + c.Position = x + Log($"insert_cuestionario_${c.GetString("Q_IDCLIENTE")}_${c.GetString("Q_IDPREGUNTA")}_${c.GetString("Q_IDRESPUESTA")}"$) + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_CUESTIONARIO_INTMEX" + cmd.Parameters = Array As Object(c.GetString("Q_IDCLIENTE"), rutaActual, ALMACEN, c.GetString("Q_FECHA"), c.GetString("Q_IDPREGUNTA"), c.GetString("Q_PREGUNTA"), c.GetString("Q_IDRESPUESTA"), C.GetString("Q_RESPUESTA")) + reqManager.ExecuteCommand(cmd , $"insert_cuestionario_${c.GetString("Q_IDCLIENTE")}_${c.GetString("Q_IDPREGUNTA")}_${c.GetString("Q_IDRESPUESTA")}"$) + Next + End If + c.Close + End If End Sub @@ -977,6 +992,29 @@ Sub JobDone(Job As HttpJob) End If End If + 'CUESTIONARIO + If Job.JobName = "DBRequest" Then + Dim resultado As DBResult = reqManager.HandleJob(Job) + If resultado.Tag.As(String).IndexOf("insert_cuestionario_") > -1 Then + Private pars() As String = Regex.Split("_", resultado.Tag.As(String)) + Log($"${resultado.tag}|${pars(0)}"$) + Log($"${pars(1)}"$) + Log($"${pars(2)}"$) + Log($"${pars(3)}"$) + Log($"${pars(4)}"$) + Private cliente As String = pars(2) + Private idPreg As String = pars(3) + Private idResp As String = pars(4) + Log($"Cliente2:${cliente}, preg:${idPreg}, res:${idResp}"$) + For Each records() As Object In resultado.Rows + For Each k As String In resultado.Columns.Keys + Log(resultado.Tag & ": " & k & ": " & records(resultado.Columns.Get(k))) + Next + Next + B4XPages.MainPage.skmt.ExecNonQuery($"UPDATE CUESTIONARIO set Q_ENVIO_OK = 1 where Q_IDCLIENTE = '${cliente}' and Q_IDPREGUNTA='${idPreg}' and Q_IDRESPUESTA='${idResp}'"$) + End If + End If + Job.Release End If diff --git a/B4A/C_Cuestionario.bas b/B4A/C_Cuestionario.bas index 7015b09..8760a54 100644 --- a/B4A/C_Cuestionario.bas +++ b/B4A/C_Cuestionario.bas @@ -25,7 +25,7 @@ Public Sub Initialize (vCallback As Object, vEventName As String, vRoot As B4XVi CallBack = vCallback db = skmt vPreguntaActual = 0 - db.ExecNonQuery("CREATE TABLE IF NOT EXISTS CUESTIONARIO (Q_IDCLIENTE TEXT, Q_IDPREGUNTA TEXT, Q_PREGUNTA TEXT, Q_IDRESPUESTA TEXT, Q_RESPUESTA TEXT, Q_FECHA TEXT)") + db.ExecNonQuery("CREATE TABLE IF NOT EXISTS CUESTIONARIO (Q_IDCLIENTE TEXT, Q_IDPREGUNTA TEXT, Q_PREGUNTA TEXT, Q_IDRESPUESTA TEXT, Q_RESPUESTA TEXT, Q_FECHA TEXT, Q_ENVIO_OK INTEGER DEFAULT 0)") Return Me End Sub diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index 6108c57..a3667f7 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -8,6 +8,7 @@ Sub Class_Globals Public rp As RuntimePermissions Private Root As B4XView 'ignore Private xui As XUI 'ignore +' Dim reqManager As DBRequestManager Dim rd As C_RespaldoDiario Dim conectado As String Dim ime As IME @@ -1018,6 +1019,7 @@ Sub cargar_Click End Sub Sub JobDone(Job As HttpJob) + Log("JOBDONE PRINCIPAL") If B4XPages.MainPage.reqManager.reqsList.IsInitialized Then 'Si tenemos lista de requests, la procesamos. If B4XPages.MainPage.reqManager.reqsList.IndexOf(Job.tag) <> -1 Then B4XPages.MainPage.reqManager.reqsList.RemoveAt(B4XPages.MainPage.reqManager.reqsList.IndexOf(Job.tag)) @@ -1656,6 +1658,7 @@ Sub JobDone(Job As HttpJob) If Job.JobName = "DBRequest" Then Dim RESULT As DBResult = B4XPages.MainPage.reqManager.HandleJob(Job) If RESULT.Tag = "ruta" Then 'query tag + Log("JOBDONE PRINCIPAL RUTA") For Each records() As Object In RESULT.Rows Dim VALIDO As String = records(RESULT.Columns.Get("VALIDO")) If VALIDO = "OK" Then @@ -1743,6 +1746,11 @@ Sub JobDone(Job As HttpJob) Subs.logJobDoneResultados(RESULT) End If + If RESULT.Tag = "test" Then 'query tag + Log(">>>>>>>>>>>>> TEST") + Subs.logJobDoneResultados(RESULT) + End If + Job.Release End Sub diff --git a/B4A/INTMEX_LL.b4a.meta b/B4A/INTMEX_LL.b4a.meta index 6e40276..66cef01 100644 --- a/B4A/INTMEX_LL.b4a.meta +++ b/B4A/INTMEX_LL.b4a.meta @@ -61,7 +61,7 @@ ModuleClosedNodes1= ModuleClosedNodes10= ModuleClosedNodes11= ModuleClosedNodes12= -ModuleClosedNodes13=1,7 +ModuleClosedNodes13=7 ModuleClosedNodes14=9,11 ModuleClosedNodes15=9,10 ModuleClosedNodes16= @@ -85,6 +85,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9=1 -NavigationStack=C_Cliente,Class_Globals,145,0,C_Cliente,B4XPage_Created,158,0,Visual Designer,cliente.bal,-100,1,C_Cliente,b_venta_Click,722,0,C_Cliente,gest_Click,411,0,C_Cliente,B4XPage_CloseRequest,448,0,C_Cliente,CreateListItem,1060,0,C_Cliente,cuest_preguntaContestada,1064,0,C_Principal,Class_Globals,0,0,C_Principal,Subir_Click,739,0,C_Principal,JobDone,1737,0 +NavigationStack=C_RespaldoDiario,respaldaInventarios,75,0,B4XMainPage,JobDone,506,6,C_Principal,Class_Globals,4,0,Starter,reinicializaReqManager,119,0,C_Principal,connecta_Click,1767,0,C_Principal,JobDone,1737,6,C_Cliente,Guardar_Click,533,0,C_Cliente,B4XPage_Created,204,0,C_Cliente,B4XPage_Appear,224,0,C_Cliente,JobDone,1000,6,C_Cliente,mandaPendientes,871,5 SelectedBuild=0 -VisibleModules=2,26,24,13,16,14,4,27,15,9 +VisibleModules=2,26,24,13,16,14,4,27,15,9,6,17,20