Método Recordset2.CancelUpdate (DAO)
Se aplica a: Access 2013, Office 2013
Cancela todas las actualizaciones pendientes para un objeto Recordset.
Sintaxis
expresión . CancelUpdate(UpdateType)
Expresión Variable que representa un objeto Recordset2 .
Parameters
Nombre |
Obligatorio/opcional |
Tipo de datos |
Descripción |
---|---|---|---|
UpdateType |
Opcional |
Long |
Establezca en uno de los valores UpdateTypeEnum . NOTA: Los valores dbUpdateRegular y dbUpdateBatch solo son válidos si está habilitada la actualización por lotes. |
Comentarios
Puede utilizar el método CancelUpdate para cancelar cualquier actualización pendiente resultante de una operación Edit o AddNew. Por ejemplo, si un usuario abre el método Edit o AddNew y no ha abierto aún el método Update, CancelUpdate cancela cualquier cambio realizado después de abrir Edit o AddNew.
Compruebe la propiedad EditMode de Recordset para determinar si hay alguna operación pendiente que se puede cancelar.
Nota:
[!NOTA] Utilizar el método CancelUpdate tiene el mismo efecto que desplazarse a otro registro sin utilizar el método Update, excepto que el registro activo no cambia y varias propiedades, como BOF y EOF no se actualizan.
Ejemplo
En este ejemplo se muestra cómo se utiliza el método CancelUpdate con el método 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
En este ejemplo se muestra cómo se utiliza el método CancelUpdate con el método 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