Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: lasko am 14.08.02 - 15:06:53

Titel: Liste generieren per Script
Beitrag von: lasko am 14.08.02 - 15:06:53
Hallo ,

gibt es in Lotus Script eine Möglichkeit Werte die in einer Variablen stehen in eine Liste umzuwandeln?

Ich habe in einem Dokument mehrere Namensfelder,
in denen verschiedene Benutzer stehen.

Ich möchte prüfen ob der aktuelle User in einem dieser Felder steht.
Mit Evaluate und @Explore klappt das nicht so recht.

Gibt es in Script eine Funktion die aus einen Text in eine Liste wandelt?

Wenn den List Tag verwende bekomme ich keine Werte in die deklarierten Listen.....

Vielleicht weiß jemand von euch wie man das richtig macht...

Danke

Gruß

Lasko

Titel: Re: Liste generieren per Script
Beitrag von: Zimmi am 14.08.02 - 15:20:16
Hallo,

schau mal in der Designer-Hilfe unter Instr nach.
Da solltest du fündig werden ...

Zimmi
Titel: Re: Liste generieren per Script
Beitrag von: Glombi am 14.08.02 - 15:32:43
Du kannst mit der Methode item.Contains prüfen, ob in einem Feld - insb. mit Mehrfachwerten - ein Element vorhanden ist.

Beispiel:
Dim und Set für session, doc...

treffer = true

set item = doc.GetFirstItem("<Namensfeld_1>")
if item.Contains(session.Username) then
treffer = true
end if

if not treffer then
set item = doc.GetFirstItem("<Namensfeld_2>")
if item.Contains(session.Username) then
 treffer = true
end if
end if

und so weiter...

Gruß
Andreas
Titel: Re: Liste generieren per Script
Beitrag von: hübi am 15.08.02 - 08:05:02
Hallo

versuchs mal mit dieser Funktion:

;) Hubi


Beispiel:

sWert = "Eintrag1;;Eintrag3;Eintrag4"
newarr = explode(sWert,";",False)

Funktion:

Function explode( inputstring As String , separator As String, includeEmpties As Integer)
'Beschreibung: Generiert aus einem String mit definierten Separatoren ein Array      
'Par1: String für die Listenumwandlung
'Par2: 1 oder mehrere Separatoren. Wenn "" übergeben wird, wird nach ":;" gesucht
'Par3:  True=für leere Strings zwischen den Separatoren erfolgt ein Listeneintrag
'          False=für leere Strings zwischen den Separatoren erfolgt kein Listeneintrag
     
     Dim fixedExplode() 'neues leeres array
     If separator = "" Then
           separator = ":;"
     End If
     currentElement = ""
     count = 0
     strcount = 0
     For x = 1 To Len(inputstring)
           char = Mid$(inputstring,x,1)
           positionOfChar& = Instr(1, separator, char)
           If positionOfChar& > 0 Then
                 If includeEmpties = False And currentElement = "" Then
                 Else
                       Redim Preserve fixedExplode(count)
                       fixedExplode(count) = currentElement
                       count = count + 1
                       currentElement  = ""
                 End If
           Else
                 currentElement = currentElement + char
           End If
     Next
     If includeEmpties = True Or currentElement <> "" Then
           Redim Preserve fixedExplode(count)
           fixedExplode(count) = currentElement
     End If
     explode = fixedExplode
End Function
Titel: Re: Liste generieren per Script
Beitrag von: lasko am 15.08.02 - 14:23:24
Tach auch,

Vielen Dank für eure Vorschläge/Hilfe.

Das funktioniert Prima mit Item.contains... !

Ich hatte in dieser Klasse schon verzweifelt gesucht, jedoch nichts entdeckt... :P


Gruß

Frank