Domino 9 und frühere Versionen > ND6: Entwicklung
Problem mit "Namensliste"
Freezer:
Hallo zusammen?
Ich hab´ da irgendwie glaube ich ein Verständnisproblem:
Ich habe ein Profildokument (frmProfil)mit einem Namensfeld "Editoren".
Nun möchte ich in einer Maske im Postopen-Event prüfen, ob der aktuelle User sich in diesem Namensfeld befindet.
--- Code: ---Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim lst_Editoren List As String
Dim str_User As String
Dim bl_Flag As Boolean
bl_Flag = False
Set db = session.CurrentDatabase
Set doc = db.GetProfileDocument("frmProfil")
lst_Editoren(0) = doc.GetItemValue("Editoren")
str_User = session.UserName
if IsElement(lst_Editoren(str_User)) = TRUE then
bl_Flag = True
Endif
--- Ende Code ---
Funktioniert leider nicht, da ich die Namen des Feldes im Profildokument nicht in die Stringliste bekomme (Type mismatch).
Kann mir vielleicht jemand vom Schlauch runterhelfen?
Danke,
Freezer
koehlerbv:
--- Code: ---Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim vEditoren List As Variant
Dim str_User As String
Dim bl_Flag As Boolean
bl_Flag = False
Set db = session.CurrentDatabase
Set doc = db.GetProfileDocument("frmProfil")
vEditoren = doc.Editoren
str_User = session.UserName
If Not (Isnull (ArrayGetIndex (vEditoren, str_User))) Then
bl_Flag = True
Endif
--- Ende Code ---
Bernhard
Freezer:
Funktioniert leider auch nicht, da ich in der Zeile
--- Code: ---...
vEditoren = doc.Editoren
...
--- Ende Code ---
die Fehlermeldung "Illegal reference to array or list: vEditoren"
bekomme ???
Glombi:
Für Deinen Fall ist das Arbeiten mit Listen nicht nötig.
Besser so:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
dim item_Editoren as NotesItem
Dim str_User As String
Dim bl_Flag As Boolean
bl_Flag = False
Set db = session.CurrentDatabase
Set doc = db.GetProfileDocument("frmProfil")
set item_Editoren = doc.GetFirstItem("Editoren")
str_User = session.UserName
If item_Editoren.Contains(str_User) Then
bl_Flag = True
Endif
Andreas
koehlerbv:
Sorry, ich habe auch die Deklarationszeile nicht richtig ausgetauscht:
Dim vEditoren List As Variant
Oder so wie Andreas geschrieben hat - es führen wieder viele Wege nach Rom.
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln