Evite este erro comum ao executar o procedimento armazenado no MS Access
Adoramos executar procedimentos armazenados de nosso código VBA, mas há um problema que você precisa observar:Executar um procedimento que afeta dados já carregados em seu formulário. Se você não tomar cuidado, receberá a seguinte mensagem:
Felizmente, é uma solução fácil, aqui estão algumas sugestões:
- Feche o formulário e execute o procedimento armazenado. Isso pressupõe que você não queira revisar os dados alterados no mesmo formulário.
- Defina a fonte de registro de formulários como nada e, em seguida, defina-a de volta para a fonte de dados original (veja o código abaixo).
Feche o formulário e execute o procedimento armazenado
Aqui está um pseudo-código para você começar:
Private Sub RunSomeProcedure() Dim lngOrderID as Long 'Assuming you need to pass information from your form to the stored procedure, for example, an OrderID lngOrderID = Me.OrderID 'If you don't store the info it will not be available after closing the form DoCmd.Close acForm, Me.Name 'This closes the form ExecuteMyCommand "uspStoredProcedureName " & lngOrderID End Sub
Não está familiarizado com ExecuteMyCommand? Você pode procurá-lo aqui.
Defina a fonte de registro do formulário como nula
Private Sub RunSomeProcedure() Dim lngOrderID as Long Dim strRecordSource as String 'Assuming you need to pass information from your form to the stored procedure, for example, an OrderID lngOrderID = Me.OrderID 'If you don't store the info it will not be available after closing the form strRecordSource = Me.RecordSource 'Store the recordsource for later use Me.RecordSource = vbNullString ExecuteMyCommand "uspStoredProcedureName " & lngOrderID Me.RecordSource = strRecordSource 'Restore the form so that the user can see the updated data End Sub
Junte-se a mim no dia 9 de março com o convidado especial Ebo Quansah!
Venha conhecer as novidades do Microsoft Access com Ebo, o gerente de produto do grupo Access. Para obter detalhes, clique aqui:https://accessusergroups.org/sql-server-with-access/event/sql-server-with-access-whats-new-in-access-a-presentation-by-the-access- gerente de produto/