Domino 9 und frühere Versionen > Entwicklung

bestimmte Dokumente sollen aus der Ansicht heraus nicht aufrufbar sein

(1/2) > >>

Wiesel:
Hallo!

Ich habe eine Ansicht in der so alle Dokumente angezeigt werden.
Diese Ansicht soll für den User aber nur eine Übersicht darstellen.
Der User soll, wenn möglich, nur die Dokumente öffnen können, in denen er auch als verantwortlicher Mitarbeiter erfasst ist.
Bei allen anderen Dokumenten, soll, wenn der User versucht diese zu öffnen, eine Meldung erscheinen, daß er es nicht darf.

Ich habe dazu im Queryopendocument der Ansicht folgende Formel eingebracht:

Sub Queryopendocument(Source As Notesuiview, Continue As Variant)
   Dim session As New NotesSession
   Dim uidoc As NotesUIDocument
   Dim user As String
   user = session.UserName
   If uidoc.FieldGetText("namVerantwMA") <> user Then
      Msgbox "Sie dürfen das Dokument nicht bearbeiten"
      Continue = False
   End If
End Sub

Das mit dem UIDocument war von mir nur ein Versuch. Aber wie Ihr Euch wahrscheinlich denken könnt, hat das nicht geklappt. Und ich weiß nun auch nicht weiter.

Freue mich über Hilfe.

Gruß, Wiesel

ascabg:
Hi,

So auf den ersten Eindruck scheint dies wieder ein typischer Fall fuer die schon so oft angesprochenen Leser- und Autorenfelder zu sein.

Andreas

Axel:
Du musst die Prüfung innerhalb der Maske machen und nicht in der Ansicht.

Hier gibt's Infos wie man so was machen kann: EditMode für bestimmte Dokumente verwehren

Die sicherste Alternative sind auf jeden Fall Autorenfelder.


Axel


Wiesel:
Ich arbeite mit Autorenfeldern. Also, das Bearbeiten von "unbefugten Mitarbeitern" ist bereits unterbunden.

Es gibt auch Ansichten, in denen jeder nur seine ihm zugeteilten Dokumente sieht.

Aber es soll eben eine Übersicht geben, in der Kerndaten aus den Dokumenten zur Information angezeigt werden. Aber der User soll nur die Informationen, die eben in der Ansicht gezeigt werden, sehen können. Er soll aber nicht in das Dokument reinkönnen, um noch weitere Daten zu sehen.

Kann ich dieses "in das Dokument reingehen" für "Unbefugte" verhindern?

Axel:
Die Prüfung muss in diesem Fall im QueryOpen-Event der Maske gemacht werden.

Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
   
Dim session As New NotesSession
Dim user As String

user = session.UserName
If Source.FieldGetText("namVerantwMA") <> user Then
  Msgbox "Nix da!!"
  Continue = False
End If

End Sub


Axel

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln