Hola relativamente soy nuevo en B4A pero he venido trabajando en visual basic, pero aun no acabo de comprender la parte de los procesos en background, estoy generando una aplicación que dentro de una lan sincroniza una base de datos SQL server en una local en SQLite para poder portar la información y realizar una toma de inventarios en un almacén remoto fuera de las oficinas centrales. este proceso lo realizo sin problema, pero durante el tiempo que se esta sincronizando el usuario "desesperado" no sabe si esta o no realizando la sincronizacion, aun que yo se que si lo realiza, intente colocar un progressbar pero este nunca se visualiza, puesto que todo se sigue manteniendo en el hilo principal, leí que pudiera utilizar el Wait for pero cuando lo uso no entra al procedimiento donde realiza la copia, tienen alguna propuesta de como puedo realizarlo les anexo mi codigo
B4X:
Sub cmbSincronizar_Click
ToastMessageShow("Comenzando importacion", False)
pg.Visible=True 'pg es mi progressbar y no se muestra
llenarArticulos
pg.Visible=False
Msgbox( "Cargado articulos, revisa en la barra de tareas cuando se haya completado","Sincronizando")
End Sub
Sub llenarArticulos
Dim strquery As String
Try
' Carga articulos
a.OpenConnection1(ipServer, baseDatos, usuario, password)
strquery ="SELECT * FROM siscom..articulos"
db.ExecNonQuery("delete from articulos")
Dim res As MSSQLResultSet = a.ExecuteQuery(strquery)
Log("Busque los articulos")
Do While res.MoveNext
strquery = "insert into articulos values ('" & res.GetString2("id_compañia").Trim & "','" & res.GetString2("id_articulo").Trim &"','" & res.GetString2("art_descripcion").Trim & "')"
db.ExecNonQuery(strquery)
Loop
Log("Termine")
res.Close
a.CloseConnection
Catch
' bitacora(LastException, strquery)
Log(LastException)
End Try
End Sub