Partager via


Propriété Connection.StillExecuting (DAO)

S’applique à : Access 2013, Office 2013

Syntaxe

expression . En cours d’exécution

expression Variable qui représente un objet Connection.

Remarques

Utilisez la propriété StillExecuting pour déterminer si la dernière méthode asynchrone Execute ou OpenConnection (autrement dit, une méthode exécutée avec l’option dbRunAsync ) est terminée. Bien que la propriété StillExecuting ait la valeur True, aucun objet retourné n’est accessible.

Dès que la propriété StillExecuting renvoie False, à la suite de l'appel de OpenConnection qui retourne l'objet Connection associé, il est possible de référencer l'objet. Tant que la propriété StillExecuting conserve la valeur True, vous ne pouvez pas faire référence à l'objet mais simplement lire la propriété StillExecuting.

Utilisez la méthode Cancel pour mettre fin à l'exécution d'une tâche en cours.

Exemple

Cet exemple utilise la propriété StillExecuting et la méthode Cancel pour ouvrir un objet Connection en mode asynchrone.

    Sub CancelConnectionX() 
     
     Dim wrkMain As Workspace 
     Dim conMain As Connection 
     Dim sngTime As Single 
     
     Set wrkMain = CreateWorkspace("ODBCWorkspace", _ 
     "admin", "", dbUseODBC) 
     ' Open the connection asynchronously. 
     
     ' Note: The DSN referenced below must be configured to 
     ' use Microsoft Windows NT Authentication Mode to 
     ' authorize user access to the Microsoft SQL Server. 
     Set conMain = wrkMain.OpenConnection("Publishers", _ 
     dbDriverNoPrompt + dbRunAsync, False, _ 
     "ODBC;DATABASE=pubs;DSN=Publishers") 
     
     sngTime = Timer 
     
     ' Wait five seconds. 
     Do While Timer - sngTime < 5 
     Loop 
     
     ' If the connection has not been made, ask the user 
     ' if she wants to keep waiting. If she does not, cancel 
     ' the connection and exit the procedure. 
     Do While conMain.StillExecuting 
     
     If MsgBox("No connection yet--keep waiting?", _ 
     vbYesNo) = vbNo Then 
     conMain.Cancel 
     MsgBox "Connection cancelled!" 
     wrkMain.Close 
     Exit Sub 
     End If 
     
     Loop 
     
     With conMain 
     ' Use the Connection object conMain. 
     .Close 
     End With 
     
     wrkMain.Close 
     
    End Sub