Olá a todos, agradecia vossa ajuda no seguinte:
Utilizo a função abaixo para mostrar e filtrar dados num formulario continuo desvinculado, mas quando os dados a exibir são superiores a 1000 as vezes pode demorar mais de 10 segundos a mostrar a informação, tem como associar a esta função uma barra de progresso para o utilizador ter informação do tempo que ainda vai demorar a processar a informação?
Function FuncAdoDadosForm(SelForm As Object, SelView As String)
FormAtivo = SelForm.Name
Call ConServer
If rsfc.State = 1 Then
rsfc.Close
End If
Set rsfc = New ADODB.Recordset
Dim sql As String
Dim FormFiltro As String
If Left(SelForm.SelFormFiltro, 7) = " WHERE " Then
If SelForm.SelFormOrd = "" Then
sql = "SELECT * FROM " & SelView & SelForm.SelFormFiltro
Else
sql = "SELECT * FROM " & SelView & SelForm.SelFormFiltro & " ORDER BY " & SelForm.SelFormOrd
End If
rsfc.Open sql, CON, adOpenKeyset, adLockReadOnly, adCmdText
Else
If SelForm.SelFormOrd = "" Then
sql = "SELECT * FROM " & SelView
Else
sql = "SELECT * FROM " & SelView & " ORDER BY " & SelForm.SelFormOrd
End If
rsfc.Open sql, CON, adOpenKeyset, adLockReadOnly, adCmdText
If SelForm.SelFormFiltro <> "" Then
FormFiltro = Screen.ActiveForm.SelFormFiltro
rsfc.Filter = FormFiltro
End If
End If
Set SelForm.Recordset = rsfc
End Function
Utilizo a função abaixo para mostrar e filtrar dados num formulario continuo desvinculado, mas quando os dados a exibir são superiores a 1000 as vezes pode demorar mais de 10 segundos a mostrar a informação, tem como associar a esta função uma barra de progresso para o utilizador ter informação do tempo que ainda vai demorar a processar a informação?
Function FuncAdoDadosForm(SelForm As Object, SelView As String)
FormAtivo = SelForm.Name
Call ConServer
If rsfc.State = 1 Then
rsfc.Close
End If
Set rsfc = New ADODB.Recordset
Dim sql As String
Dim FormFiltro As String
If Left(SelForm.SelFormFiltro, 7) = " WHERE " Then
If SelForm.SelFormOrd = "" Then
sql = "SELECT * FROM " & SelView & SelForm.SelFormFiltro
Else
sql = "SELECT * FROM " & SelView & SelForm.SelFormFiltro & " ORDER BY " & SelForm.SelFormOrd
End If
rsfc.Open sql, CON, adOpenKeyset, adLockReadOnly, adCmdText
Else
If SelForm.SelFormOrd = "" Then
sql = "SELECT * FROM " & SelView
Else
sql = "SELECT * FROM " & SelView & " ORDER BY " & SelForm.SelFormOrd
End If
rsfc.Open sql, CON, adOpenKeyset, adLockReadOnly, adCmdText
If SelForm.SelFormFiltro <> "" Then
FormFiltro = Screen.ActiveForm.SelFormFiltro
rsfc.Filter = FormFiltro
End If
End If
Set SelForm.Recordset = rsfc
End Function