Autor Thema: Problem mit "Namensliste"  (Gelesen 1484 mal)

Offline Freezer

  • Aktives Mitglied
  • ***
  • Beiträge: 161
  • Geschlecht: Männlich
  • Oinr isch emmr dr Arsch!
Problem mit "Namensliste"
« am: 02.05.05 - 10:07:39 »
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


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
« Letzte Änderung: 02.05.05 - 11:07:10 von Freezer »
Client: R8.5.1 (deutsch)
Server: DOMINO 8.5.1
BS: Win2003

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Problem mit "Namensliste"
« Antwort #1 am: 02.05.05 - 10:15:46 »
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

Bernhard

Offline Freezer

  • Aktives Mitglied
  • ***
  • Beiträge: 161
  • Geschlecht: Männlich
  • Oinr isch emmr dr Arsch!
Re: Problem mit "Namensliste"
« Antwort #2 am: 02.05.05 - 10:45:21 »
Funktioniert leider auch nicht, da ich in der Zeile

Code
...
vEditoren = doc.Editoren
...

die Fehlermeldung "Illegal reference to array or list: vEditoren"
bekomme ???
Client: R8.5.1 (deutsch)
Server: DOMINO 8.5.1
BS: Win2003

Glombi

  • Gast
Re: Problem mit "Namensliste"
« Antwort #3 am: 02.05.05 - 10:53:15 »
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

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: Problem mit "Namensliste"
« Antwort #4 am: 02.05.05 - 10:57:02 »
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

Offline Freezer

  • Aktives Mitglied
  • ***
  • Beiträge: 161
  • Geschlecht: Männlich
  • Oinr isch emmr dr Arsch!
Re: Problem mit "Namensliste"
« Antwort #5 am: 02.05.05 - 11:06:53 »
Schönen Dank euch beiden!

Jetzt funktioniert´s. Und ich habe gelernt, dass nicht alles was nach einer Liste aussieht, auch eine Liste sein muss.

Gruß,

Freezer
Client: R8.5.1 (deutsch)
Server: DOMINO 8.5.1
BS: Win2003

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz