Desenvolvi um aplicativo em VB onde chamo um relatório no ACCESS que utiliza informações de uma consulta do próprio ACCESS.
O que acontece é que esta rotina so funciona 100% quando eu executo o .mdb antes de abrir o programa. Os dados simplesmente não se atualizam em tempo de execução (raramente funciona). Tentei até setar esta variável na abertura do programa mas não adiantou. Agora o interessante, se eu debugar o programa ele funciona 100% tb, sem precisar abrir previamente o .mdb.
Ao meu ver, parece que não está dando tempo pro ACCESS processar as informações.
Pergunta
Guest João Ricardo
Por favor.
Desenvolvi um aplicativo em VB onde chamo um relatório no ACCESS que utiliza informações de uma consulta do próprio ACCESS.
O que acontece é que esta rotina so funciona 100% quando eu executo o .mdb antes de abrir o programa. Os dados simplesmente não se atualizam em tempo de execução (raramente funciona). Tentei até setar esta variável na abertura do programa mas não adiantou. Agora o interessante, se eu debugar o programa ele funciona 100% tb, sem precisar abrir previamente o .mdb.
Ao meu ver, parece que não está dando tempo pro ACCESS processar as informações.
===================================================================================
Private Sub Command6_Click()
Dim Ac As Access.Application
Set Ac = New Access.Application
Ac.OpenCurrentDatabase (App.Path & "\banco.mdb")
'seta como verdadeiro na tabela os registros que serão impressos
tb_movimentacao.MoveFirst
Do While tb_movimentacao.EOF <> True
If (tb_movimentacao("cod_movimentacao") = Text4.Text) And (tb_movimentacao("imprime") = 0) Then
tb_movimentacao.Edit
tb_movimentacao("imprime") = True
tb_movimentacao.Update
tb_movimentacao.MoveNext
ElseIf tb_movimentacao.EOF <> True Then
tb_movimentacao.MoveNext
End If
Loop
Ac.Visible = True
Ac.DoCmd.OpenReport "FRM_Transferencia", acViewPreview
'desmarca opção de impresão da tabela
tb_movimentacao.MoveFirst
Do While tb_movimentacao.EOF <> True
If tb_movimentacao("imprime") = True Then
tb_movimentacao.Edit
tb_movimentacao("imprime") = False
tb_movimentacao.Update
tb_movimentacao.MoveNext
ElseIf tb_movimentacao.EOF <> True Then
tb_movimentacao.MoveNext
End If
Loop
Set Ac = Nothing
End Sub
===================================================================================
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.