Domino 9 und frühere Versionen > Entwicklung

Dokumente vergleichen und ausgeben (FtSerach)

<< < (3/8) > >>

Selin:
hierbei stürzt mein Notes ab.
Habs mir auch im Debugger angeguckt.
Scheint eine Endlosschleife zu sein

Glombi:
Yoo, vor dem
Loop
fehlt ein
set doc = checkdc.GetNextDocument(doc)

 ;D

Selin:

--- Zitat von: Glombi am 29.09.04 - 11:30:15 ---Dim s As New NotesSession
dim db as NotesDatabse
Dim targetdb As New NotesDatabase( "", "VIP.nsf" )
Dim dc As NotesDocumentCollection
Dim checkdc As NotesDocumentCollection
Dim doc As NotesDocument

dim found as integer

set db = s.CurrentDatabase
set checkdc = db.UnprocessedDocuments
set doc = checkdc.GetFirstDocument
do while not doc is nothing   

found = false
   
   Set dc = targetdb.Search( |Lastname = "| + doc.LastName(0) + |"|,Nothing,0 )
if dc.Count > 0 then
found = true
'Hier gibt es einen Treffer:

else
' Kein Treffer: Dok. kann kopiert werden

end if

loop   'do while not doc is nothing



/quote]

nach else hat noch was gefehlt:
Call doc.CopyTodatabase(targetdb)


Jetzt muss ich noch die Werte, die übereinstimmen in einer Picklist oder so ausgeben
mal schaun, ob ich das ansatzweise hinkriege...

dankeschön
--- Ende Zitat ---

koehlerbv:

--- Zitat von: Selin am 29.09.04 - 13:25:28 ---hierbei stürzt mein Notes ab.
Habs mir auch im Debugger angeguckt.
Scheint eine Endlosschleife zu sein

--- Ende Zitat ---

Das ist dann kein Absturz, sondern (wie Glombi dann ja bestätigt hat) "'In Ewigkeit - Amen !', sprach die Endlosschleife."

By the way: Dein Vorgehen, nur auf den Lastname zu gehen, halte ich für kritisch. Du solltest die NotesDatabase.Search-Formel noch etwas erweitern.

Bernhard

Selin:
Hallo,

habe jetzt mein Script:
Sub Initialize
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim targetdb As New NotesDatabase( "", "VIP.nsf" )
   Dim dc As NotesDocumentCollection
   Dim checkdc As NotesDocumentCollection
   Dim doc As NotesDocument
   
   Dim found As Integer
   
   Set db = s.CurrentDatabase
   Set checkdc = db.UnprocessedDocuments
   Set doc = checkdc.GetFirstDocument
   Do While Not doc Is Nothing   
      
      found = False
      
      'Prüfe Nachname
      Set dc = targetdb.Search( |LastName = "| + doc.LastName(0) + |"|,Nothing,0 )
      
          'Wenn Übereinstimmung dann prüfe Vorname      
      If dc.Count > 0 Then
         Set dc = targetdb.Search( |FirstName = "| + doc.FirstName(0) + |"|,Nothing,0 )
         
         If dc.Count > 0 Then
                 'Hier gibt es einen Treffer:            
            found = True
            
         Else
                   ' Kein Treffer: Dok. kann kopiert werden
            Call doc.CopyTodatabase(targetdb)
            
         End If
      Else
         Call doc.CopyTodatabase(targetdb)
         
      End If
      Set doc = checkdc.GetNextDocument(doc)
      
      Loop   'do while not doc is nothing
End Sub



Was empfehlt ihr mir, wenn ich die übereinstimmenden Namen in einer Art Picklist wiedergeben will?
Wie wenn ihr im Empfängermail einen Namen reinschreibt und dir eine Liste mit übereinstimmenden namen gezeigt wird, wenn es mehr al einen gibt)

Danke

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln