Hallo,
ich stehe vor folgender Problemstellung. Ich habe in einer Maske ein Namensfeld mit einem oder mehreren Werten (Personen aus dem Verzeichnis).
Nun möchte ich über LotusScript steuern, dass nur die in dem Feld eingetragenen Personen das Dokument bearbeiten können.
Bisher habe ich folgenden Lösungsansatz. Hier besteht nur ein Problem, wenn das Feld DocVisibly mehrere Einträge enthält und Nutzer nicht an erster Stelle in der Liste steht funktioniert.
Postopen
| Sub Postopen (Source As Notesuidocument) |
| Dim session As New NotesSession |
| Dim doc As NotesDocument |
| Set doc = Source.Document |
| |
| If (Source.EditMode = True And (Instr(Doc.DocVisibly(0), session.Username) = 0)) Then |
| Source.EditMode = False |
| End If |
| |
| End Sub |
Querymodechange
| Sub Querymodechange (Source As Notesuidocument, Continue As Variant) |
| Dim session As New NotesSession |
| Dim doc As NotesDocument |
| Set doc = Source.Document |
| |
| If (Instr(Doc.DocVisibly(0), session.Username) = 0) Then |
| Messagebox "Sie können dieses Dokument nicht bearbeiten", MB_ICONEXCLAMATION, "Achtung!" |
| If Source.EditMode = False Then |
| Continue = False |
| End If |
| End If |
| |
| End Sub |
Wie müsste der Vergleich des Aussehen, so dass es keine Rolle spielt, an welcher Stelle der Liste sich der Nutzer befindet.
Viele Dank
und viele Grüsse
Peter