Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet 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
-
Hallo,
schau mal in der Designer-Hilfe unter Instr nach.
Da solltest du fündig werden ...
Zimmi
-
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
-
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
-
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