Das nachfolgende Beispiel zeigt wie eine Datensatzbearbeitung durchgeführt werden kann. Dabei werden die Rückgabewerte der unterschiedlichen Methoden (Record.Lock(), Record.Save(), Record.Unlock()) überprüft und der Anwender bei einem negativen Rückgabewert darüber informiert, dass ein bestimmter Vorgang nicht durchgeführt werden konnte.
' Zugriff auf den aktuell dargestellten Datensatz (einer Firmen-Ansicht)
Dim oRecord : Set oRecord = cRM.CurrentProject.ActiveViews.ActiveView.CurrentRecordSet.CurrentRecord
' Prüfen, ob der Zugriff möglich war
If (Not oRecord Is Nothing) Then
' Prüfen, ob der Datensatz für die Bearbeitung durch andere Nutzer gesperrt werden kann
If (oRecord.Lock() = True) Then
' Datensatz bearbeiten
Call oRecord.SetContentsValueByName("Company", "combit Software GmbH")
' Prüfen, ob der Datensatz gespeichert werden kann
If (oRecord.Save() = True) Then
' Prüfen, ob der Datensatz wieder freigegeben werden kann
If (oRecord.Unlock() = True) Then
' Ab hier hat die Bearbeitung des Datensatzes funktioniert und das Script kann beendet werden
Else
' Nutzer informieren, Script beenden
Call cRM.DialogMessageBox("Der aktuelle Datensatz konnte nach der Bearbeitung des Feldes ""Firma"" und dem Speichern nicht für die Bearbeitung durch andere Nutzer freigegeben werden.", "Freigabe nicht möglich", vbExclamation & vbOkOnly)
Set oRecord = Nothing
Call WScript.Quit()
End If
Else
' Nutzer informieren, Script beenden
Call cRM.DialogMessageBox("Der aktuelle Datensatz konnte nach der Bearbeitung des Feldes ""Firma"" nicht gespeichert werden.", "Speichern nicht möglich", vbExclamation & vbOkOnly)
Set oRecord = Nothing
Call WScript.Quit()
End If
Else
' Nutzer informieren, Script beenden
Call cRM.DialogMessageBox("Der aktuelle Datensatz konnte nicht für die Bearbeitung durch andere Nutzer gesperrt werden.", "Sperren nicht möglich", vbExclamation & vbOkOnly)
Set oRecord = Nothing
Call WScript.Quit()
End If
Else
' Nutzer informieren, Script beenden
Call cRM.DialogMessageBox("Der Zugriff auf den aktuellen Datensatz war nicht möglich.", "Kein Zugriff auf Datensatz", vbExclamation & vbOkOnly)
Set oRecord = Nothing
Call WScript.Quit()
End If
Set oRecord = Nothing