Domino 9 und frühere Versionen > ND7: Entwicklung

Dokument nur Löschen, wenn User bestimmte Rolle besitzt

(1/2) > >>

theBastian:
Hi,

sitze mal wieder über einem Problem und finde keine Antwort, warum das nicht funktioniert.  :(

Es sollen nur bestimmte Dokumente gelöscht werden dürfen (basierend auf dem Formname).
Wenn jedoch der User die Rolle [Admin] hat, soll er alle Dokumente löschen dürfen.


--- Code: ---Sub Querydocumentdelete(Source As Notesuidatabase, Continue As Variant)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim roles As Variant
Dim collection As NotesDocumentCollection
Dim i As Integer
Dim doc As notesdocument
Dim strForm As String

Set db = session.CurrentDatabase
roles = db.QueryAccessRoles(session.UserName)

For i = 0 To Ubound(roles)
If roles(i) Like "[Admin]" Then
Exit Sub
End If
Next

Set collection = source.Documents
For i = 1 To collection.Count
Set doc = collection.GetNthDocument(i)
strForm = doc.getitemvalue ("Form")(0)
If strForm = "frmStructure" Then
Call doc.Lock ()
Else
continue = False
End If
Next
End Sub

--- Ende Code ---

Leider erkennt Like die Rolle nicht, obwohl es im Debugger genauso aussieht.

Habt ihr da ev. noch eine Idee?

Grüße
Sebastian

Thomas Schulte:
Warum benutzt du überhaupt Like? Wenn er die Rolle Hat dann, das ist ein simples =

theBastian:
Habe das erste Mal Rollen in Script versucht und in der Hilfe verweist @IsMember auf Like.

... und ich habe natürlich stur auf Notes vertraut.  >:(
Danke für Deinen Hinweis.

Grüße
Sebastian

Thomas Schulte:
Schau dir mal die Wildcards Beschreibungen an. Dann weist du warum das so nicht funktionieren konnte.

theBastian:
Ja, stimmt, "[" und "]" sind schon anderweitg "verbraten".  ;)

Grüße
Sebastian

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln