Domino 9 und frühere Versionen > ND6: Entwicklung

Alle Rollen in einem Feld anzeigen

(1/5) > >>

Selin:
Hallo Zusammen,

ich habe ein Feld (Kontrollkästchen) und möchte hierüber die Zugriffsteuerung für die Dokumente steuern.
Das feld soll in der ACL stehenden Rollen als einzelne Optionen darstellen.
der Autor soll also die Möglichkeit haben bestimmte Rollen für das aktuelle Dokument zuzuweisen.


In der Designerhilfe habe ich das hier gefunden:
Sub Click(Source As Button)
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim acl As NotesACL
   Set db = session.CurrentDatabase
   Set acl = db.ACL
   Forall r In acl.Roles
      Messagebox( r )
   End Forall
End Sub


Gibt es sowas auch in @Funktionen?

Habt ihr eine Idee?

danke + gruß
Selin

koehlerbv:

--- Zitat von: Selin am 03.04.06 - 16:46:28 ---Gibt es sowas auch in @Funktionen?
--- Ende Zitat ---

Nein.
Warum belegst Du aber Dein Auswahlfeld nicht beim Öffnen im EditMode on the fly mit den aktuellen Rollen aus der ACL?

Bernhard

Selin:
Hallo Bernhard,

danke für den Tipp.

Habe folgendes noch im Forum gefunden:
Im Postopen Event:

Dim workspace As New NotesUIWorkspace
     Dim uidoc As NotesUIDocument
     Set uidoc = workspace.CurrentDocument
     Dim rolles As String
     
     Dim session As New NotesSession
     Dim db As NotesDatabase
     Dim acl As NotesACL
     Set db = session.CurrentDatabase
     Set acl = db.ACL
     Forall r In acl.Roles
           rolles = r & ";" & rolles
     End Forall
     Call uidoc.FieldSetText ( "Rollen", Trim$(rolles) )
     Call uidoc.refresh

Allerdings wäre es genial, wenn ich entweder ein Dialogfeld oder ein Kontrollkästchenfeld darstellen könnte.
Mit dem Script wird nur eine Textliste erstellt, unabhänging davon, ob das Feld als Dialogfeld festgelegt ist oder nicht.
Ist das möglich?

Danke + Viele Grüsse
Selin

Axel:
Du musst die Rollen in ein Array aufnehmen. Dieses Arra kannst du dann dem Feld zuweisen.

...

Dim arrRoles() As String
Dim idx As Integer

...
idx = 0

Forall r In acl.Roles
   Redim PreServe arrRoles(idx)
   arrRoles(idx) = r
   idx = idx + 1
End Forall
...


Axel

Selin:
Hallo,

es will nicht klappen.   >:(
Ich habe mit Arrays noch nicht viel gemacht ;-(
Und irgendwie wird mir entweder wieder nur die Textliste ausgegeben oder die letzte Rolle...   ???

verzweifelte Grüsse
Selin

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln