Hallo zusammen,
ich möchte 2 Datenbanken miteinander vergleichen. Ich suche alle die Dokumente wo die Anzahl der Anhänge unterschiedlich sind und will mir diese in eine Textdatei ausgeben.
In der ersten Datenbank hat das Projekt 17 Anhänge, in de 2 DB nur 8. Trotzdem zeigt er mir im Debugger immer bei Variable b 17 an. Ich verstehe das nicht mehr.
Ich habe den DB Index und die Ansichtenindexe aktualisiert.
Option Public
Option Declare
Sub Initialize
Dim session As New NotesSession
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim item As NotesItem
Dim dbarchiv As NotesDatabase
Dim viewarchiv As NotesView
Dim docarchiv As NotesDocument
Dim collection1 As NotesDocumentCollection
Dim collection2 As NotesDocumentCollection
Dim a As Integer
Dim b As Integer
Set db=session.Currentdatabase
Set view=db.getview("archivdoppeldok2")
Set doc=view.GetFirstDocument
Set dbarchiv=session.Getdatabase("Lotus-Test/KZVN/DE","softwareentw_archiv_2.nsf")
Set viewarchiv=dbarchiv.getview("doppeldokarchiv2")
Set docarchiv=viewarchiv.GetFirstDocument
'Für Dateischreiben'
Dim row As String
Dim Projektnummertemp As String
Dim dateiname As String
dateiname="c:\temp\Doppelte Projekte in Softwareentwicklungs_ARCHIV_2.txt"
Open dateiname For Output As #1
'DB= softwareentwicklung.nsf
Print "Prüfung der Stammdaten"
row = "Projektnummer;DB_NAME;Titel;Änderung;letzte Änderung"
Print #1, row
Do While Not doc Is Nothing
Set collection1=doc.Responses
a=collection1.count
Set docarchiv=viewarchiv.GetDocumentbykey(doc.Getitemvalue("Projektnummer")(0))
If Not (docarchiv Is Nothing) Then
Set collection2=docarchiv.Responses
b=collection2.count
If a <> b THen
row = ""
row = row + CStr(doc.Getitemvalue("Projektnummer")(0))+";"
row = row + CStr(DB.Filename)+";"
row = row + doc.Getitemvalue("Titel")(0)+";"
row=row+Left(doc.Columnvalues(4),10)+";"
row=row+Left(doc.LastModified,10)
Print #1, row
End If
End If
Set doc=view.GetNextdocument(doc)
Loop
End Sub