Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: Access 2013, Office 2013
Im folgenden Beispiel wird unter Verwendung des Internet Publishing-Anbieters ein Dokument in einem Ordner mit Schreib-/Lesezugriff geöffnet. Die Status-Eigenschaft eines Field-Objekts des Record-Objekts wird auf adFieldPendingInsert festgelegt und dann auf adFieldOk aktualisiert.
'BeginStatusFieldVB
' to integrate this code replace the values in the source string
Sub Main()
Dim File As ADODB.Record
Dim strFile As String
Dim Cnxn As ADODB.Connection
Dim strCnxn As String
Set Cnxn = New ADODB.Connection
strCnxn = "url=https://MyServer/"
Cnxn.Open strCnxn
Set File = New ADODB.Record
strFile = "Folder/FileName"
' Open a read/write document
File.Source = strFile
File.ActiveConnection = Cnxn
File.Mode = adModeReadWrite
File.Open
Debug.Print "Append a couple of fields"
File.Fields.Append "chektest:fld1", adWChar, 42, adFldUpdatable, "fld1"
File.Fields.Append "chektest:fld2", adWChar, 42, adFldUpdatable, "fld2"
Debug.Print "status for the fields"
Debug.Print File.Fields("chektest:fld1").Status 'adfldpendinginsert
Debug.Print File.Fields("chektest:fld2").Status 'adfldpendinginsert
'turn off error-handling to verify field status
On Error Resume Next
File.Fields.Update
Debug.Print "Update succeeds"
Debug.Print File.Fields("chektest:fld1").Status 'adfldpendinginsert + adFieldUnavailable
Debug.Print File.Fields("chektest:fld2").Status 'adfldpendinginsert + adFieldUnavailable
' resume default error-handling
On Error GoTo 0
' clean up
File.Close
Cnxn.Close
Set File = Nothing
Set Cnxn = Nothing
End Sub
'EndStatusFieldVB
Im folgenden Beispiel wird ein bekanntes Field -Objekt aus einem in einem Dokument geöffneten Record -Objekt gelöscht. Die Status -Eigenschaft wird zuerst auf adFieldOK und dann auf adFieldPendingUnknown festgelegt.
'BeginStatusField2VB
' to integrate this code replace the values in the source string
Sub Main()
Dim File As ADODB.Record
Dim fld As ADODB.Field
Dim strFile As String
Dim Cnxn As ADODB.Connection
Dim strCnxn As String
' create connection as a URL
Set Cnxn = New ADODB.Connection
strCnxn = "url=https://MyServer/"
Cnxn.Open strCnxn
Set File = New ADODB.Record
strFile = "Folder/FileName"
' Open a read/write document
File.Open strFile, Cnxn, adModeReadWrite
Debug.Print File.Fields("chektest:fld1").Status ' should be adFldOK
' Delete a field which already exists in the collection
File.Fields.Delete "chektest:fld1"
Set fld = File.Fields("chektest:fld1")
Debug.Print File.Fields("chektest:fld1").Status ' Pending delete
'turn off error-handling to verify field status
On Error Resume Next
File.Fields.Update
Debug.Print "Deleted"
Debug.Print fld.Status ' Pending unknown
' resume default error-handling
On Error GoTo 0
' clean up
File.Close
Cnxn.Close
Set File = Nothing
Set Cnxn = Nothing
End Sub
'EndStatusField2VB
Der folgende Code löscht ein Field -Objekt aus einem Record -Objekt, das in einem schreibgeschützten Dokument geöffnet ist. Die Status -Eigenschaft wird auf adFieldPendingDelete festgelegt. Mit Update schlägt der Löschvorgang fehl, und die Status -Eigenschaft lautet adFieldPendingDelete plus adFieldPermissionDenied. CancelUpdate löscht die ausstehende Status -Einstellung.
Sub Main()
Dim File As ADODB.Record
Dim fld As ADODB.Field
Dim Cnxn As ADODB.Connection
Dim strCnxn As String
Dim strFile As String
' create connection as a URL
Set Cnxn = New ADODB.Connection
strCnxn = "url=https://MyServer/"
Cnxn.Open strCnxn
' Open a read/write document
Set File = New ADODB.Record
strFile = "Folder/FileName"
File.Open strFile, Cnxn, adModeReadWrite, adCreateCollection Or adOpenIfExists
Debug.Print "Try to delete something without permission"
File.Fields.Delete ("RESOURCE_PARSENAME")
Set fld = File.Fields("RESOURCE_PARSENAME")
Debug.Print "Pending delete"
Debug.Print fld.Status ' Pending delete
Debug.Print "Delete should fail on Update"
'turn off error-handling to verify field status
On Error Resume Next
File.Fields.Update ' Should fail
Debug.Print fld.Status ' Pending delete plus error
File.Fields.CancelUpdate
Debug.Print fld.Status ' Okay
' resume default error-handling
On Error GoTo 0
' clean up
File.Close
Cnxn.Close
Set File = Nothing
Set Cnxn = Nothing
End Sub
'EndStatusField3VB