Ich muß gerade so eine Art Mailrückruf Agenten schreiben, der eine bestimmte Mail aus den Mail-Datenbanken der Benutzer löscht. Dazu muß ich die Datenbanken eines NotesDBDirectory der Reihe nach öffnen, um zu schauen ob die betreffende Mail darin enthalten ist. Der Agent läuft unter dem Namen des Servers, auf dem die Datenbanken liegen. Trotzdem lassen sich einige Datenbanken aufgrund mangelnder Zugriffsrechte nicht öffnen. Nicht schlimm, mache ich eben mit der nächsten Datenbank weiter. Das Problem ist nur, daß trotz "on Error goto" Statement gleich das ganze Skript abbricht, sobald eine Datenbank erwischt wird, bei der die Rechte zum Öffnen der Datenbank nicht reichen. Sorry, bin ein bischen eingerostet, die Lösung liegt sicher in einer falschen Fehlerbehandlung. Kann mir jemand helfen?
Danke im Voraus
Peter
P.S: Nein ich baue keinen Spamfilter, habe nur den obigen Betreff zum Testen eingesetzt
Sub Initialize
Dim dbdir As New NotesDbDirectory("Entwicklung")
Dim db As NotesDatabase
Dim dbname As String
Dim view As NotesView
Dim vc As NotesViewEntryCollection
Dim doc As NotesDocument
Dim entry As NotesViewEntry
On Error Goto breakpoint
Set db = dbdir.GetFirstDatabase(DATABASE)
searchString="Auslaenderkriminalitaet steigt weiter! :Id:4360:"
While Not(db Is Nothing)
dbname = db.DesignTemplateName
If dbname Like "*Mail*"Then
Call db.Open( "", "" )
Set view = db.GetView("($All)")
Set vc = view.AllEntries
If vc.count>0 Then
Set entry= vc.GetFirstEntry()
While Not entry Is Nothing
Set doc=entry.Document
If doc.subject(0)=searchString Then
Msgbox "Mail mit Thema: "+searchString+" in Datenbank "+db.filename+ " gefunden.", , db.Title
End If
Set entry= vc.GetNextEntry(entry)
Wend
End If
End If
breakpoint:
Set db = dbdir.GetNextDatabase
Wend
End Sub