Beispiel für das Bearbeiten eines Datensatzes

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