Recordset2.CancelUpdate, méthode (DAO)
S’applique à : Access 2013, Office 2013
Annule les mises à jour en attente pour un objetRecordset.
Syntaxe
expression . CancelUpdate(UpdateType)
Expression Variable qui représente un objet Recordset2 .
Paramètres
Nom |
Obligatoire/facultatif |
Type de données |
Description |
---|---|---|---|
UpdateType |
Facultatif |
Long |
Définissez sur l’une des valeurs UpdateTypeEnum . REMARQUE : les valeurs dbUpdateRegular et dbUpdateBatch sont valides uniquement si la mise à jour par lots est activée. |
Remarques
Vous pouvez utiliser la méthode CancelUpdate pour annuler les mises à jour en attente résultant d'une opération Edit ou AddNew. Par exemple, si un utilisateur appelle la méthode Edit ou AddNew alors qu'il n'a pas encore appelé la méthode Update, CancelUpdate annule les modifications apportées consécutivement à l'appel de Edit ou AddNew.
Vérifiez la propriété EditMode de l'objet Recordset pour déterminer s'il existe une opération en attente susceptible d'être annulée.
Remarque
[!REMARQUE] Le fait d'utiliser la méthode CancelUpdate revient à atteindre un autre enregistrement sans utiliser la méthode Update, à ceci près que l'enregistrement actif ne change pas et que plusieurs propriétés, telles que BOF et EOF, ne sont pas mises à jour.
Exemple
Cet exemple de code montre comment utiliser la méthode CancelUpdate avec la méthode AddNew.
Sub CancelUpdateX()
Dim dbsNorthwind As Database
Dim rstEmployees As Recordset2
Dim intCommand As Integer
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
Set rstEmployees = dbsNorthwind.OpenRecordset( _
"Employees", dbOpenDynaset)
With rstEmployees
.AddNew
!FirstName = "Kimberly"
!LastName = "Bowen"
intCommand = MsgBox("Add new record for " & _
!FirstName & " " & !LastName & "?", vbYesNo)
If intCommand = vbYes Then
.Update
MsgBox "Record added."
' Delete new record because this is a
' demonstration.
.Bookmark = .LastModified
.Delete
Else
.CancelUpdate
MsgBox "Record not added."
End If
End With
dbsNorthwind.Close
End Sub
Cet exemple de code montre comment utiliser la méthode CancelUpdate avec la méthode Edit.
Sub CancelUpdateX2()
Dim dbsNorthwind As Database
Dim rstEmployees As Recordset
Dim strFirst As String
Dim strLast As String
Dim intCommand As Integer
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
Set rstEmployees = dbsNorthwind.OpenRecordset( _
"Employees", dbOpenDynaset)
With rstEmployees
strFirst = !FirstName
strLast = !LastName
.Edit
!FirstName = "Cora"
!LastName = "Edmonds"
intCommand = MsgBox("Replace current name with " & _
!FirstName & " " & !LastName & "?", vbYesNo)
If intCommand = vbYes Then
.Update
MsgBox "Record modified."
' Restore data because this is a demonstration.
.Bookmark = .LastModified
.Edit
!FirstName = strFirst
!LastName = strLast
.Update
Else
.CancelUpdate
MsgBox "Record not modified."
End If
.Close
End With
dbsNorthwind.Close
End Sub