Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: manuel am 17.10.02 - 16:04:44

Titel: Alle Dokumente aus Ordner löschen
Beitrag von: manuel am 17.10.02 - 16:04:44
Hallo  ;D

Gibt es einen leichteren Weg als diesen hier, um alle Dokumente aus einen Ordner zu entfernen?

 .....
   Set view = db.GetView("Suchergebnisse")
   Set doc = view.GetFirstDocument
   Set dc = db.FTSearch("", 0)      ' ... für Initialisierung der Collection
   
   While Not (doc Is Nothing)
      Call dc.AddDocument(doc)
      Set doc = view.GetNextDocument(doc)
   Wend
   
   Call dc.RemoveAllFromFolder("Suchergebnisse")
....


Bei der Klasse NotesDatabase gibt es die Eigenschaft AllDocuments. Gibt es so etwas ähnliches auch für die NotesView? Ich hab's nicht gefunden. Hat jemand eine Idee?

Schönen Abend
Manuel
Titel: Re:Alle Dokumente aus Ordner löschen
Beitrag von: tower am 17.10.02 - 16:55:12
....

Dim vc As NotesViewEntryCollection
Set view = db.GetView("Suchergebnisse")
Set vc = view.AllEntries
Call vc.removeall(True)

.....
hoffe, das das hilft...
Titel: Re:Alle Dokumente aus Ordner löschen
Beitrag von: tower am 17.10.02 - 16:57:44
Noch ein "lebendes" Beispiel:

das Ding löscht mein Errorlog....

   Dim session As New NotesSession
   Dim ws As New notesuiworkspace
   Dim db As NotesDatabase
   Dim doc As notesdocument
   Dim view As NotesView
   Dim vc As NotesViewEntryCollection
   Dim answer As Integer
   Dim s As String
   
   If sArt = "ALLE" Then
      s = "Löschen aller Log- Einträge?"
   Else
      s = "Löschen der Log- Einträge in Fehlerklasse " + sArt + "?"
   End If
   answer% = Messagebox(s, MB_YESNO + MB_ICONQUESTION, "Continue?")
   
   If answer <> 6 Then  Exit Sub 'Abbruch gedrückt
   
   Set db = session.CurrentDatabase
   Set view = db.GetView("(LS)")
   If sArt = "ALLE" Then
      Set vc = view.AllEntries
   Else
      Set vc = view.Getallentriesbykey(sArt, True)
   End If   
   Call vc.removeall(True)
   Set  doc = db.createdocument
   doc.form = "LogEintrag"
   doc.f_datetime = Now()
   doc.f_user = session.username
   doc.f_Klasse = "INFO"
   doc.f_Fehlertext = "Log wurde gelöscht (" +  sArt + ")."
   Call doc.save(False,True)
   Call ws.viewrefresh
Titel: Re:Alle Dokumente aus Ordner löschen
Beitrag von: manuel am 18.10.02 - 08:32:32
Hi tower!

Super, danke! Aber da ich meine Dokumente nicht für ewig aus der Datenbank verbannen will, verwende ich nun die Methode

Call vc.RemoveAllFormFolder( "Suchergebnisse" )

Schönen dank !
Manuel