diff --git a/B4A/C_Cliente.bas b/B4A/C_Cliente.bas index 34e8d2a..cca7497 100644 --- a/B4A/C_Cliente.bas +++ b/B4A/C_Cliente.bas @@ -150,6 +150,7 @@ Sub Class_Globals Dim pregunta7 As String Dim bandera As Int Dim errorImpresora As Int = 0 + Dim cuest As C_Cuestionario End Sub Sub initialize @@ -162,6 +163,7 @@ Private Sub B4XPage_Created (Root1 As B4XView) Root = Root1 Root.RemoveAllViews Root.LoadLayout("Cliente") + cuest.Initialize(Me, "cuest", Root, Starter.skmt) c= Starter.skmt.ExecQuery("select 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_BFACTURA,CAT_CL_BCREDITO from kmt_info where CAT_CL_CODIGO In (Select cuenta from cuentaa)") s = Starter.skmt.ExecQuery("select sum(pe_costo_tot) as TOTAL_CLIE, SUM(PE_CANT) AS CANT_CLIE FROM PEDIDO WHERE PE_CLIENTE IN (Select CUENTA from cuentaa)") If c.RowCount > 0 Then @@ -385,6 +387,11 @@ Sub ListView1_ItemLongClick (Position As Int, Value As Object) End Sub Sub gest_Click + Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) + If Not(cuest.encuestaIniciada) 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 ' If la_cuenta.Text <> "0" Then ' Dim queenc As String ' ' 1=1 ----> si no esta en el historico que se descargue del web ver si esta contestada de manera local @@ -463,6 +470,8 @@ Sub Tels_Click End Sub Private Sub B4XPage_CloseRequest As ResumableSub + cuest.encuestaIniciada = False + cuest.ocultPanelPregunta If sv_encuesta.Visible = True Then Return False Else If Subs.hayPedido Then @@ -1184,6 +1193,11 @@ Sub B_INV_Click End Sub Sub B_VENTA_Click + Log($"${cuest.encuestaIniciada} - ${cuest.clienteConCuestionario(Subs.traeCliente)}"$) + If Not(cuest.encuestaIniciada) 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 ' If la_cuenta.Text <> "0" Then ' Dim queenc As String ' ' 1=1 ----> si no esta en el historico que se descargue del web ver si esta contestada de manera local @@ -1698,4 +1712,70 @@ End Sub Private Sub rb_p7no_CheckedChange(Checked As Boolean) pregunta7 = "No" -End Sub \ No newline at end of file +End Sub + + +Sub cuest_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) +' If q.IsInitialized Then Log($"${q.encuestaIniciada}|${q.preguntaActual}"$) +' m.Get("panel").As(Panel).Visible = False 'Ocultamos el panel de la pregunta. + m.Get("panel").As(Panel).RemoveView 'Quitamos le panel de la pregunta + DateTime.DateFormat = "yyyyMMdd" + Starter.skmt.ExecNonQuery($"delete from CUESTIONARIO where Q_IDCLIENTE = '${Subs.traeCliente}' and Q_IDPREGUNTA = '${m.Get("idPregunta")}'"$) + Starter.skmt.ExecNonQuery($"insert into CUESTIONARIO (Q_IDCLIENTE, Q_IDPREGUNTA, Q_PREGUNTA, Q_IDRESPUESTA, Q_RESPUESTA, Q_FECHA) values ('${Subs.traeCliente}', '${m.Get("idPregunta")}', '${m.Get("pregunta")}', '${m.Get("idRespuesta")}', '${m.Get("respuesta")}', '${DateTime.Date(DateTime.now)}')"$) + Select Case m.Get("idPregunta") + Case "1" + If m.Get("respuesta") = "No, está enrejado o no se tiene acceso" Then + Log("Tiendajon / Ventana / Kiosko") + ToastMessageShow("Tiendajon / Ventana / Kiosko", False) + cuest.agregaPregunta("6", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) + Else if m.Get("respuesta") = "Si se pude acceder" Then + cuest.agregaPregunta("2", "¿Tiene al menos 2 pasillos con acceso directo a la mercancía?", Array As String("Si tiene al menos 2 pasillos con acceso directo a la mercancía", "No tiene pasillos o solo uno central")) + End If + Case "2" + If m.Get("respuesta") = "Si tiene al menos 2 pasillos con acceso directo a la mercancía" Then + Log("Mini-Super") + ToastMessageShow("Mini-Super", False) + cuest.agregaPregunta("6", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) + else If m.Get("respuesta") = "No tiene pasillos o solo uno central" Then + cuest.agregaPregunta("3", "¿Cuenta con enfriador horizontal para venta de perecederos como queso, jamon, crema, etc.?", Array As String("Si", "No tiene enfriador horizontal.")) + End If + Case "3" + Log("|"&m.Get("respuesta")&"|") + If m.Get("respuesta") = "Si" Then + Log("Miscelanea") + ToastMessageShow("Miscelanea", False) + cuest.agregaPregunta("6", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) + else If m.Get("respuesta") = "No tiene enfriador horizontal." Then + cuest.agregaPregunta("4", "¿El local esta enfocado a venta especializada?", Array As String("No", "Si")) + End If + Case "4" + If m.Get("respuesta") = "No" Then + Log("Abarrotera") + ToastMessageShow("Abarrotera", False) + cuest.agregaPregunta("6", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) + else If m.Get("respuesta") = "Si" Then + cuest.agregaPregunta("5", "¿Cual venta especializada?", Array As String("Carnicería / Pollería", "Cremería", "Depósito / Vinateria", "Dulcería", "Farmacia", "Fonda / Restaurante / Cafetería", "Verdulería")) + End If + Case "5" + Log(m.Get("respuesta")) + ToastMessageShow(m.Get("respuesta"), False) +' If m.Get("respuesta") = "No" Then +' Log("Abarrotera") +' q.agregaPregunta("5", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) +' else If m.Get("respuesta") = "Si" Then + cuest.agregaPregunta("6", "¿Cuenta con caja de salida para cobro con sistema de computo?", Array As String("Si, tiene sistema de computo para cobro", "No")) +' End If + Case "6" + Log(m.Get("respuesta")) + ToastMessageShow(m.Get("respuesta"), False) + Log(">>>>>>>>>> " & cuest.encuestaIniciada) + cuest.encuestaIniciada = False + Log(">>>>>>>>>> " & cuest.encuestaIniciada) +' refrescarCliente = True +' Log($"#### REFRESCAR CLIENTE -> ${refrescarCliente}"$) + B4XPage_Appear +' Case 6 + End Select +End Sub diff --git a/B4A/C_Principal.bas b/B4A/C_Principal.bas index b15a08d..67a3b74 100644 --- a/B4A/C_Principal.bas +++ b/B4A/C_Principal.bas @@ -527,8 +527,8 @@ Sub Subir_Click PASO = 1 'End If - - If PASO =1 Then + + If PASO = 1 Then E1=skmt.ExecQuery2("Select count(*) As CUANTOS from pedido where PE_TIPO = ?", Array As String("ABORDO")) E1.Position = 0 If E1.GetString("CUANTOS") > 0 Then @@ -542,13 +542,11 @@ Sub Subir_Click End If E1.Close - - c=skmt.ExecQuery2("select count(*) AS CUANTOS from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) c.Position =0 PERFIL = c.GetString("CUANTOS") c.Close - + If PERFIL > 0 Then c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("PERFIL")) c.Position =0 @@ -593,13 +591,11 @@ Sub Subir_Click If c.RowCount>0 Then For i=0 To c.RowCount -1 c.Position=i - Dim cmd As DBCommand cmd.Initialize cmd.Name = "insert_pedidos_DUR" cmd.Parameters = Array As Object(C.GetString("PC_CLIENTE"),C.GetString("PC_FECHA"),C.GetString("PC_USER"),C.GetString("PC_NOART"),C.GetString("PC_MONTO"),C.GetString("PC_LON"),C.GetString("PC_LAT"),ALMACEN,l_ruta.text,C.GetString("PC_COSTO_SIN") ) reqManager.ExecuteQuery(cmd , 0,"ins_pedidos") - Next c.Close End If @@ -641,53 +637,21 @@ Sub Subir_Click ' c=skmt.ExecQuery("SELECT HE_CLIE, HE_RES, HE_FECHA, HE_TIPO FROM HIST_ENCUESTA") ' ' S_CP.Text = "Envio Encuesta" ' ' PB2.Progress = 1 -' ' If c.RowCount>0 Then ' For i=0 To c.RowCount -1 ' c.Position=i -' ' Dim cmd As DBCommand ' cmd.Initialize ' cmd.Name = "insert_encuesta_DUR" ' cmd.Parameters = Array As Object(C.GetString("HE_CLIE"),C.GetString("HE_RES"),C.GetString("HE_FECHA"), c.GetString("HE_TIPO"),l_ruta.Text ) ' reqManager.ExecuteQuery(cmd , 0, "inst_noventa") -' -' ' Next -' ' End If ' c.Close ' ' PEDIO skmt.ExecNonQuery("update PEDIDO set PE_FOLIO = rowid ") - ' -' c=skmt.ExecQuery2("select CAT_VA_VALOR from CAT_VARIABLES WHERE CAT_VA_DESCRIPCION = ?", Array As String ("FOLIO")) -' c.Position =0 - ' armafolio = l_ruta.text * 1000000 -' armafolio = armafolio + c.GetString("CAT_VA_VALOR") -' c.Close -' c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC,PE_TIPO FROM PEDIDO WHERE PE_FOLIO IS NULL") -' -' -' If c.RowCount>0 Then -' For i=0 To c.RowCount -1 -' c.Position=i -' skmt.ExecNonQuery2("update PEDIDO set PE_FOLIO = ? where PE_PROID = ? AND PE_CLIENTE =? AND PE_FECHA =? AND PE_FOLIO IS NULL ", Array As Object(armafolio, c.GetString("PE_PROID"), c.GetString("PE_CLIENTE"),c.GetString("PE_FECHA"))) - ' -' armafolio = armafolio + 1 -' -' Next -' c.Close -' End If - ' armafolio = armafolio - (l_ruta.Text * 1000000) - ' skmt.ExecNonQuery2("update CAT_VARIABLES set CAT_VA_VALOR = ? where CAT_VA_DESCRIPCION = ? ", Array As Object(armafolio,"FOLIO")) -' -' Dim cmd As DBCommand -' cmd.Initialize -' cmd.Name = "update_folio" -' cmd.Parameters = Array As Object(armafolio,l_ruta.Text , "1") -' reqManager.ExecuteQuery(cmd , 0, "folio") If PERFIL = "V-ESPECIAL" Then c=skmt.ExecQuery("SELECT PE_CEDIS,PE_COSTO_TOT,PE_COSTOU,PE_CANT,PE_PRONOMBRE,PE_PROID,PE_CLIENTE,PE_FECHA,PE_USUARIO, PE_COSTO_SIN, PE_RUTA, PE_DESC, PE_FOLIO,PE_TIPO FROM PEDIDO ORDER BY PE_CLIENTE") d=skmt.ExecQuery("SELECT COUNT(*) as CUANTOS_PEDIDO FROM PEDIDO") @@ -765,7 +729,7 @@ Sub Subir_Click cuantos_noventa = D.GetString("CUANTOS_NOVENTA") d.Close - ' NOVENTA HIST_EXIBIDORES(CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR) + ' NOVENTA HIST_EXIBIDORES(CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR) c=skmt.ExecQuery("SELECT CAT_CL_CLIENTE,CAT_CL_EXHIBIDOR,CAT_CL_BEXHIBIDOR from HIST_EXIBIDORES") D=skmt.ExecQuery("SELECT COUNT(*) AS CUANTOS_NOVENTA FROM HIST_EXIBIDORES") @@ -785,7 +749,21 @@ Sub Subir_Click d.Position=0 cuantos_exib = D.GetString("CUANTOS_NOVENTA") d.Close - + + 'CUESTIONARIOS + c = skmt.ExecQuery($"select * from cuestionario"$) + Private rutaActual As String = Subs.traeRuta + If c.RowCount > 0 Then + For x = 0 To c.RowCount - 1 + c.Position = x + Dim cmd As DBCommand + cmd.Initialize + cmd.Name = "insert_CUESTIONARIO_DUR" + 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 , "ins_cuestionario") + Next + End If + c.Close ' VERIFICACION ' c=skmt.ExecQuery("SELECT HVE_CLIENTE, HVE_IDPROD, HVE_EXISTENCIA FROM HIST_VERIFICACION") @@ -833,13 +811,10 @@ Sub Subir_Click ' Next ' End If ' c.Close - ' DROP - - + ' DROP t1.Initialize("T1", 20000) ' 1000 = 1 second t1.Enabled = True - img2.Visible =True ' ToastMessageShow("Se Actualizaran los datos, Este proceso podria tardar hasta un minuto, gracias "& l_ruta.text , True) If S_CP.Text = "SUBIENDO" Then @@ -1097,7 +1072,7 @@ Sub JobDone(Job As HttpJob) LogColor($">>>>>> Llega ${Job.tag}"$, Colors.Blue) If reqManager.reqsList.IndexOf(Job.tag) <> -1 Then reqManager.reqsList.RemoveAt(reqManager.reqsList.IndexOf(Job.tag)) - LogColor($">>>>>> Quitamos ${Job.tag}"$, Colors.Blue) +' LogColor($">>>>>> Quitamos ${Job.tag}"$, Colors.Blue) End If LogColor(">>>>>> " & reqManager.reqsList.Size & " - " & reqManager.reqsList, Colors.Blue) End If @@ -1941,6 +1916,13 @@ Sub JobDone(Job As HttpJob) ' ToastMessageShow("LISTA DE PRECIOS OK LISTA DE PRECIOS OK", True) End If End If + + If RESULT.Tag = "ins_cuestionario" Then 'query tag + Subs.logJobDoneResultados(RESULT) + End If + + + Job.Release End If End Sub diff --git a/B4A/Durakelo.b4a b/B4A/Durakelo.b4a index 139e65f..872b757 100644 --- a/B4A/Durakelo.b4a +++ b/B4A/Durakelo.b4a @@ -1367,31 +1367,32 @@ Library8=contentresolver Library9=core ManifestCode='This code will be applied to the manifest file during compilation.~\n~'You do not need to modify it in most cases.~\n~'See this link for for more information: https://www.b4x.com/forum/showthread.php?p=78136~\n~AddManifestText(~\n~~\n~)~\n~SetApplicationAttribute(android:icon, "@drawable/icon")~\n~SetApplicationAttribute(android:label, "$LABEL$")~\n~CreateResourceFromFile(Macro, Themes.LightTheme)~\n~'End of default text.~\n~~\n~AddApplicationText(~\n~~\n~~\n~)~\n~AddManifestText()~\n~AddManifestText()~\n~SetApplicationAttribute(android:usesCleartextTraffic, "true")~\n~~\n~AddPermission(android.permission.ACCESS_FINE_LOCATION)~\n~AddPermission(android.permission.BLUETOOTH_ADVERTISE)~\n~AddPermission(android.permission.BLUETOOTH_CONNECT)~\n~AddPermission(android.permission.BLUETOOTH_SCAN)~\n~~\n~'/////////////// FLP y FBMessageing MOD Inicia /////////////////////~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.GooglePlayBase)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.Firebase)~\n~CreateResourceFromFile(Macro, FirebaseAnalytics.FirebaseAnalytics)~\n~CreateResourceFromFile(Macro, FirebaseNotifications.FirebaseNotifications)~\n~'CreateResourceFromFile(Macro, FirebaseAnalytics.Crashlytics)~\n~SetServiceAttribute(Tracker, android:foregroundServiceType, "location")~\n~'/////////////// FLP y FBMessageing MOD Termina /////////////////////~\n~~\n~'Si al cargar un mapa de google manda este error "java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion". agregar la siguiente linea:~\n~AddApplicationText()~\n~SetApplicationAttribute(android:allowBackup, "false")~\n~SetApplicationAttribute(android:exported, "true")~\n~AddManifestText()~\n~~\n~'Para provider (Envio de base de datos por whatsapp)~\n~AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~ ~\n~ AddManifestText(~\n~ )~\n~ AddApplicationText(~\n~ ~\n~ ~\n~ ~\n~ )~\n~ CreateResource(xml, provider_paths,~\n~ ~\n~ ~\n~ ~\n~ ~\n~ ~\n~ )~\n~ AddPermission(android.permission.REQUEST_INSTALL_PACKAGES)~\n~ AddPermission(android.permission.INTERNET)~\n~ AddPermission(android.permission.INSTALL_PACKAGES)~\n~ AddPermission(android.permission.READ_EXTERNAL_STORAGE)~\n~ AddPermission(android.permission.WRITE_EXTERNAL_STORAGE)~\n~ AddPermission(android.permission.READ_PHONE_STATE)~\n~ AddPermission(android.permission.WAKE_LOCK)~\n~ ~\n~ ~\n~ Module1=appUpdater -Module10=C_Productos -Module11=C_Promos -Module12=C_TicketsDia -Module13=C_UpdateAvailable -Module14=DBRequestManager -Module15=EscPosPrinter -Module16=FileHandler -Module17=FirebaseMessaging -Module18=kms_helperSubs -Module19=ManageExternalStorage +Module10=C_Principal +Module11=C_Productos +Module12=C_Promos +Module13=C_TicketsDia +Module14=C_UpdateAvailable +Module15=DBRequestManager +Module16=EscPosPrinter +Module17=FileHandler +Module18=FirebaseMessaging +Module19=kms_helperSubs Module2=B4XMainPage -Module20=MAPA_RUTAS -Module21=Starter -Module22=Subs -Module23=Tracker +Module20=ManageExternalStorage +Module21=MAPA_RUTAS +Module22=Starter +Module23=Subs +Module24=Tracker Module3=BatteryUtilities Module4=C_Cliente Module5=C_Clientes -Module6=C_Historico -Module7=C_Nota -Module8=C_NoVenta -Module9=C_Principal +Module6=C_Cuestionario +Module7=C_Historico +Module8=C_Nota +Module9=C_NoVenta NumberOfFiles=667 NumberOfLibraries=31 -NumberOfModules=23 +NumberOfModules=24 Version=12.5 @EndOfDesignText@ #Region Project Attributes diff --git a/B4A/Durakelo.b4a.meta b/B4A/Durakelo.b4a.meta index b202467..790ca4b 100644 --- a/B4A/Durakelo.b4a.meta +++ b/B4A/Durakelo.b4a.meta @@ -15,6 +15,7 @@ ModuleBookmarks20= ModuleBookmarks21= ModuleBookmarks22= ModuleBookmarks23= +ModuleBookmarks24= ModuleBookmarks3= ModuleBookmarks4= ModuleBookmarks5= @@ -39,6 +40,7 @@ ModuleBreakpoints20= ModuleBreakpoints21= ModuleBreakpoints22= ModuleBreakpoints23= +ModuleBreakpoints24= ModuleBreakpoints3= ModuleBreakpoints4= ModuleBreakpoints5= @@ -48,8 +50,8 @@ ModuleBreakpoints8= ModuleBreakpoints9= ModuleClosedNodes0= ModuleClosedNodes1= -ModuleClosedNodes10=1,7,35,36,37,38,39,40,41,42 -ModuleClosedNodes11= +ModuleClosedNodes10=1 +ModuleClosedNodes11=1,7,35,36,37,38,39,40,41,42 ModuleClosedNodes12= ModuleClosedNodes13= ModuleClosedNodes14= @@ -60,9 +62,10 @@ ModuleClosedNodes18= ModuleClosedNodes19= ModuleClosedNodes2=3,6,7,19 ModuleClosedNodes20= -ModuleClosedNodes21=1 -ModuleClosedNodes22=10,12,14,58 -ModuleClosedNodes23= +ModuleClosedNodes21= +ModuleClosedNodes22=1 +ModuleClosedNodes23=10,12,14,58 +ModuleClosedNodes24= ModuleClosedNodes3= ModuleClosedNodes4= ModuleClosedNodes5= @@ -70,6 +73,6 @@ ModuleClosedNodes6= ModuleClosedNodes7= ModuleClosedNodes8= ModuleClosedNodes9= -NavigationStack=C_Principal,trabajar_Click,448,0,C_Principal,B4XPage_Appear,432,0,C_Cliente,B_INV_Click,1157,0,C_Principal,Class_Globals,0,0,B4XMainPage,B4XPage_Created,151,0,C_Principal,cargar_Click,926,0,C_Principal,JobDone,1237,0,C_Cliente,Class_Globals,0,0,C_Cliente,B_VENTA_Click,1244,6,C_Cliente,gest_Click,446,0 +NavigationStack=Subs,revisaRMIs,1444,0,C_Cuestionario,agregaPregunta,90,4,C_Cliente,gest_Click,382,0,C_Cliente,GPS_LocationChanged,377,0,C_Cliente,ListView1_ItemLongClick,379,0,C_Principal,cargar_Click,1080,0,C_Principal,Class_Globals,0,0,C_Principal,B4XPage_Created,168,0,C_Principal,Subir_Click,750,6,C_Principal,JobDone,1073,3 SelectedBuild=0 -VisibleModules=1,2,3,4,5,6,7,8,9,10 +VisibleModules=1,2,10,3,4,5,7,8,9,11,6,23 diff --git a/B4A/Files/cliente.bal b/B4A/Files/cliente.bal index 45b3de6..3ef5f4a 100644 Binary files a/B4A/Files/cliente.bal and b/B4A/Files/cliente.bal differ diff --git a/B4A/Subs.bas b/B4A/Subs.bas index ac4376e..2969997 100644 --- a/B4A/Subs.bas +++ b/B4A/Subs.bas @@ -1447,4 +1447,14 @@ Sub revisaRMIs(clienteId As String) As Boolean 'ignore End If End If Return validos +End Sub + +'Muestra en el Log los campos y valores que regresan en el JobDone. +Sub logJobDoneResultados(resultado As DBResult) + For Each records() As Object In resultado.Rows + LogColor($"====== ${resultado.Tag} - REGISTROS = ${resultado.Rows.Size}"$, Colors.RGB(215,37,0)) + For Each k As String In resultado.Columns.Keys + LogColor(k & " = " & records(resultado.Columns.Get(k)), Colors.RGB(215,37,0)) + Next + Next End Sub \ No newline at end of file