Domino 9 und frühere Versionen > Entwicklung

Feld mit UserRoles

(1/2) > >>

Jörg:
Hallo Leute,
ich möchte gerne das bearbeiten von Dokumenten unterbinden.
Hierfür habe ich folgenden Code genommen:

--- Code: ---Sub Postopen(Source As Notesuidocument)

Dim szStatus As String
szStatus = source.FieldGetText("UserRoles")

'Wenn Doc im Lesemodus, dann Folgecode nicht beachten
If Source.EditMode = False Then Exit Sub

'Prüfe Statusfeld...
If Not szStatus ="[admin]" Then
Msgbox "The 'edit mode' is not allowed.", 64, "Error"
Source.EditMode = False 'Setze Dokument in Lesemodus
Exit Sub
End If

End Sub
--- Ende Code ---
und ein Feld Userroles in das Dokument eingebunden was ich mit
@UserRoles aber das Feld wird nciht mit der UserRole des Betrachters aktuallisiert.
Waran kann dies liegen????

umi:
Was für ein Feldtyp ist es?
Sollte entw. Computed oder computed for display sein denke ich mal

Jörg:
Hi Urs,

es ist ein Textfeld mit Berechnet zur Anzeige.

Gruss jörg

MadMetzger:
Das sollte das Problem sein, mit berechnet sollte es wahrscheinlich gehen... aber warum nutzt du nicht ein Autorenfeld für deinen Zweck?

TMC:
Grundsätzlich muss ich Markus zustimmen, normalerweise nimmt man für sowas Autorenfelder.

Wie auch immer:

Das Feld sollte AFAIK "Berechnet" sein und NICHT "Berechnet zur Anzeige".



Ob der User eine bestimmte Rolle hat, würde ich per LotusScript abfragen:

Dim vEval as Variant
Dim strRolle as String
strRolle = "[ErDarfLesen]"
vEval = Evaluate(|@IsMember("| & strRolle & |"; @UserRoles)|)

If vEval(0) = 1 Then
    Msgbox "User hat die Rolle " & strRolle & " !!!"
End If

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln