Domino 9 und frühere Versionen > Entwicklung
verschiedene Dokumente vergleichen
Driri:
Liest du die Dokumente aus zwei verschiedenen Views aus ?
Mir ist noch nicht ganz klar, was genau du vorhast. Kannst du das evtl. noch etwas genauer beschreiben ?
Wieviele Dokumente sollen verglichen werden ? Wie werden sie gewählt (manuell, erste in der View, etc.) ? etc. pp.
chock:
Ich wollte die Dokumente aus zwei verschiedenen Views auslesen.
Aber man kann ja auch aus den beiden Ansichten eine Ansicht machen, sortiert nach den Feldern die man vergleichen will, oder?
Ich möchte jedes Dokument mit jedem vergleichen.
z.B. ist in einem Dokument (aus View 1) das Feld x1 gleich dem Feld x2 in irgendeinem Dokument (aus View 2), dann soll in dem Dokument (aus View 1) ein Feld auf "ja" gesetzt werden.
Driri:
Dann müßtest du in einer Schleife durch alle Docs aus View 1 cyceln und innerhalb dieser Schleife eine zweite Schleife laufen lassen, in der du jeweils die Dokumente aus View 2 mit dem aktuellen aus View 1 vergleichst.
Also von der Logik her so :
While Not (doc1 is Nothing)
tmp1 = doc.GetItemValue("Feld")
While Not (doc2 is Nothing)
tmp2 = doc2.GetItemValue("Feld2")
If (tmp1(0) = tmp2(0)) Then
doc1.Feld = "ja"
End If
Set doc2 = view2.GetNextDocument(doc2)
Wend
Set doc1 = view1.GetNextDocument(doc1)
Wend
chock:
hab mir die Formel jetzt so zusammengestellt:
Aber er findet nicht in den Feldern name1 und name2.
Woran könnte das noch liegen?
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view1 As NotesView
Dim view2 As NotesView
Dim doc1 As NotesDocument
Dim doc2 As NotesDocument
Set db = session.CurrentDatabase
Set view1 = db.GetView("Mitarbeiter Status")
Set view2 = db.GetView("(teilnehliste)")
Set doc1 = view1.GetFirstDocument
Set doc2 = view2.GetFirstDocument
While Not (doc1 Is Nothing)
tmp1 = doc1.GetItemValue("name1")
While Not (doc2 Is Nothing)
tmp2 = doc2.GetItemValue("name2")
If (tmp1(0) = tmp2(0)) Then
doc1.besucht1 = "ja"
End If
Set doc2 = view2.GetNextDocument(doc2)
Wend
Set doc1 = view1.GetNextDocument(doc1)
Wend
Driri:
Definier tmp1 und tmp2 mal als Variant (Dim tmp1,tmp2 As Variant).
Ansonsten : Was siehst du denn im Debugger ? Werden die einzelnen Objekte korrekt zugewiesen, gibt es alle definierten Variablen ? Was steht dort in tmp1 bzw. tmp2 drin ?
Ach ja, da fehlt noch nen Save, wenn du den Wert auf "ja" gesetzt hast
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln