Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: leusel am 21.09.03 - 19:51:10
-
Hallo
ich hole mir per Script die Werte von zwei verschiedenen Feldern.
In Feld A steht immer nur ein Wert, im Feld B stehen mehere Werte.
Jetzt möchte ich die Werte von feld A mit den Werten in Feld B vergleichen. Sobald der erste Wert gleich dem ersten Wert von Feld B ist klappt alles. Steht jetzt ein Wert an zweiter Stelle in Feld B findet das Script ihn nicht.
Wie ich kann ich ein Wert mit mehreren Werten in einem anderen Feld vergleichen ?
tmp_teil = mehere Werte
stnamekom = ein Wert
tmp=doc.GetItemValue("tmp_teil")
While Not(doc2 Is Nothing)
tmp2=doc2.GetItemValue("stnamekom")
If (tmp(0) = tmp2(0)) Then
doc2.besucht2 = "ja"
Call doc2.Save ( False, True )
End If
Set doc2 = view2.GetNextDocument(doc2)
Wend
-
Hi,
Du solltest ein NotesItem definieren und dann mit der Eigenschaft .Contains arbeiten. Bspw. so:
dim item_tmp_teil as NotesItem
set item_tmp_teil = doc.GetFirstItem("tmp_teil")
While Not(doc2 Is Nothing)
tmp2=doc2.GetItemValue("stnamekom")
If item_tmp_teil.Contains( tmp2(0) ) Then
doc2.besucht2 = "ja"
Call doc2.Save ( False, True )
End If
Set doc2 = view2.GetNextDocument(doc2)
Wend
Andreas
-
auf die Schnelle zB:
set FeldA as variant
set FeldB as variant
...
FeldA = doc.ABC(0) 'das Feld mit dem einen Wert
FeldB = doc.FieldXYZ 'das Feldmit mehreren Werten
ForAll B in FeldB
if ucase(B) = ucase(FeldA(0)) then
msgbox "Gefunden"
EXIT ForAll
end if
End Forall
so müßte es gehen
edit: hab gesehen, daß Glombi ( hi :)) auch mittlerweile was gepostet hat. Prima ;D Andere Lösung wäre zB auch ArrayGetIndex oder ein Evaluate mit @contains oder ...
-
Danke für die superschnelle Sonntag-Abend-Antwort.
Habe beide Versionen mit Erfolg getestet...
Danke