Autor Thema: zugriff auf maske  (Gelesen 1532 mal)

Offline my head

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
zugriff auf maske
« am: 29.10.03 - 07:32:19 »
hallo!

hab mal wieder ne ganz dumme frage...

hab ne maske, die im edit-modus geöffnet werden muss... wie kann verhindern, dass "leser" die maske öffnen und ne standardfehlermeldung erhalten...

will in den aufruf einbauen: @if(rechte<=leser;"kein Zugriff";öffnen der maske)

geht das ohne rollen?

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:zugriff auf maske
« Antwort #1 am: 29.10.03 - 07:39:41 »
Im QueryOpen Event der Maske entweder mit der QueryAccess-Methode der NotesDatenbank oder mit @UserAccess
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline my head

  • Aktives Mitglied
  • ***
  • Beiträge: 226
  • Geschlecht: Männlich
Re:zugriff auf maske
« Antwort #2 am: 29.10.03 - 07:40:01 »
hab festgestellt, dass "leser" zugriff auf masken im edit-mod haben...
kann ich die standard fehlermeldung so wie oben beschrieben abfangen?

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:zugriff auf maske
« Antwort #3 am: 29.10.03 - 07:51:28 »
Weiss ich nicht, würde aber meinen, genau dazu ist der QueryOpen da, sonst müsstest Du das im Initialize machen, aber da wird es dann etwas sehr trickreich, die Instanziierung abzubrechen, weiss ich auch nicht, ob das funktionieren würde. Probier doch einfach mal, was passiert, wenn Du im QueryOpen einfach mal ein Continue=False einsetzest. Da siehst Du sofort, ob die Fehlermeldung noch kommt oder nicht.
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

klaussal

  • Gast
Re:zugriff auf maske
« Antwort #4 am: 29.10.03 - 07:53:21 »
.. das  kann nicht sein, dass "leser" editieren können. bitte mal das/die leserfeld(er) überprüfen. ansonsten geht's wie oben beschrieben.

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:zugriff auf maske
« Antwort #5 am: 29.10.03 - 08:29:00 »
Wenn ich "meinen Kopf" richtig verstehe, meint er, dass Leser ein Dokument mit einer Maske, die in den Edit-Mode wechseln, anwerfen können, aber eine Fehlermeldung bekommen, soweit ist das normal, nur etwas sehr verkürzt von ihm ausgedrückt, hat aber nix mit Leserfeldern zu tun -- meine Interpretation
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:zugriff auf maske
« Antwort #6 am: 29.10.03 - 11:03:00 »
Hi,

das Ganze muß mit Script im QueryOpen-Event passieren. die Formel-Funktion @UserAccess kann nicht verwendet werden, da die Funktion nicht in Evaluate - Statements verwendet werden kann.

Die Lösung sieht so aus:

Zitat
Sub Queryopen(Source As Notesuidocument, Mode As Integer, Isnewdoc As Variant, Continue As Variant)
   
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim acl As NotesACL
   Dim entry As NotesACLEntry
   
   Set db = session.CurrentDatabase
   Set acl = db.ACL
   Set entry = acl.GetEntry( session.UserName )
   If Not ( entry Is Nothing ) Then
      If entry.Level = ACLLEVEL_READER Then
         Messagebox "Sie haben nur Leserechte und können die Maske nicht öffnen"
         Continue = False
      End If
   End If  '   If Not ( entry Is Nothing ) Then
End Sub

Vorraussetzung ist natürlich, das die entsprechenden User direkt in der ACL als Leser enthalten sind.


Axel
« Letzte Änderung: 29.10.03 - 13:13:09 von Axel »
Ohne Computer wären wir noch lange nicht hinterm Mond!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz