Spanish Activity se regresa solo

YAcosta

New Member
Buenas estimado, este es mi primer post en el mundo B4A, apenas tengo con B4A tres dias, no encontré un post de saludos (o Taberna) asi que desde aqui les mando un saludos a todos desde Perú. Por aqui tengo un par de amigos, amigos que conozco del mundo VB6; al principio estaré preguntando pero garantizo que luego con gusto daré respuestas.

Bueno, mi problema es este:

Y no tengo una orden que indique el retorno.

Tengo un Activity Main y un Activity LogueoInventariador, pondré código aqui dejando de lado la declaracion de variables para no ser extenso.

En Main:

B4X:
Sub Activity_Create(FirstTime As Boolean)

   Activity.LoadLayout("Logueo")
   h.Initialize("HacerLogueo", Me)
End Sub

B4X:
Sub btnAceptar_Click

    Dim Cadena As String
    Cadena = "http://miweb.com/ws/login.php?USUTABLA=" & txtEmpresa.text & "&PASS=" & txtPassword.text
   
    Dim job As HttpJob
    job.Initialize("HacerLogueo", Me)
    job.Download2 (Cadena, Array As String("USUTABLA", txtEmpresa.text, "PASS", txtPassword.text))
   
       
    Select Case NomTabla
        Case "INV_DEMO"
            CallSubDelayed2(LogueoInventariador, "ShowEmpresa", "EMPRESA PRUEBA")
         (aqui pondre otros casos)
    End Select
End Sub

B4X:
Sub JobDone(Job As HttpJob)

    If Job.Success Then
        Dim res As String
        res = Job.GetString
        Dim parser As JSONParser
        parser.Initialize(res)
        Select Job.JobName
            Case "HacerLogueo"
                Dim USUARIOS As List
                Dim mm As Map
                USUARIOS = parser.NextArray
                If USUARIOS.size <> 0 Then
                    mm = USUARIOS.Get(0)
                    NomTabla=mm.GET("NOMTABLA")
                Else
                    Msgbox("Los datos proporcionados no son correctos","Acceso Denegado")
                End If
        End Select
    Else
        Log("Response from server1: " & res)
    End If
    Job.Release
End Sub

Sub jobdone_ResponseSuccess (Response As HttpJob, TaskId As Int)
    Dim res As String
    res = Response.GetString
End Sub

Y el codigo del Activity LogueoInventariador es:
B4X:
Sub Activity_Create(FirstTime As Boolean)
    Activity.LoadLayout("LogueoInvent")
End Sub

Sub ShowEmpresa(Title As String)
    lblEmpresa.text = Title
End Sub

¿En que estoy fallando? Muchas gracias por las respuestas.
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola:

Bienvenido al foro.

Sin mas código es dificil ver que pasa, pero lo mas seguro es que tu Sub JobDone(Job As HttpJob) que lo habrás puesto en main, cuando se activa el evento hace que vuelva. Ponlo en un módulo de código, o en un servicio y prueba .

Saludos
 

YAcosta

New Member
Hola amigos, mil gracias por responder.

Es que no hay mas codigo estimado, es todo el codigo, lo que no he publicado es las declaraciones de variables Dim lblEmpresa ...etc. ya que el proyecto apenas lo empiezo. Y si como indico en mi post el JobDone esta en el Mail. Voy a moverlo donde me indicas a ver que obtengo y te cuento.

Saludos
 

YAcosta

New Member
Estimado. Justo antes de probar su alternativa de solucion he recibido por otro canal otra sugerencia que es lo que aplique primero y es esta:

Quitar el Select Case que tenia en el boton Aceptar y dentro del JobDone poner la condicional:

B4X:
If NomTabla = "INV_DEMO" Then CallSubDelayed2(LogueoInventariador, "ShowEmpresa", "EMPRESA PRUEBA")

y quitar del Activity Create esto: h.Initialize("HacerLogueo", Me)

Y con eso se ha resuelto, no me queda claro aun porque es que se ocasinaba el bucle y voy a investigarlo pero ahora ya al validar el acceso se queda en la siguiente ventana sin retornar que es lo que queria, con eso quedó resuelto. De todas maneras ensayaré tu sugerencia y nuevamente reitero mi agradecimiento.


Saludos
 

bgsoft

Well-Known Member
Licensed User
Longtime User
Hola

Puedes coger el código que hiba mal, e ir haciendo los cambios que has echo pero de uno en uno y probar, asi sabrás que hacias para que volviera.

Saludos
 
Last edited:
Top