PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Löschen von Dokumenten in einem View


MrSerious
06.05.2005, 09:48
Wie kann ich in einem View Dokumente löschen?

Wenn ich Dateien via Lotus Script aus einer anderen DB importier, wie kann ich per Knopfdruck(Lotus Script Dokumente wieder aus der DB löschen.
Hier mein bisheriger Quellcode:

Sub Click(Source As Button)

' Variablen für den internen Lotuszugriff
Dim db As notesdatabase
Dim session As New notessession
Dim view As NotesView
Dim doc As notesDocument
Dim item As NotesItem

' Variablen für den Zugriff auf die externe Datenquelle
Dim resultset As New ODBCResultSet
Dim connection As New odbcConnection
Dim query As New ODBCQuery

' Hilfsvariablen
Dim spaltenanzahl As Integer
Dim status As Boolean
Dim newVal As Variant

On Error Goto Fehlerbehandlung

' Auffinden der internen Struktur:
' 1. Datenbank referenzieren
Set db = session.CurrentDatabase
' 2. View "PHN" referenzieren
Set view = db.GetView("PHN")
' 3. anfangen mit dem ersten Dokument
Set doc = view.GetFirstDocument

doc.RemovePermanently(True)



' Herstellen der Verbindung nach draußen

' 1. Verbindung anmelden (PHN muss angelegt sein)
connection.ConnectTo("PHN")

' 2. Ansetzen der Abfrage
Set query.Connection= connection 'aufgebaute Verbindung
query.SQL="SELECT * FROM tblphn; "

' 3. Abfragen der Ergebnisse aus der ODBC-Verbindung
Set resultset.Query = query
resultset.Execute

Do
' Wert von der einen Seite auf die andere Schreiben
newVal = resultset.GetValue(2)
doc.Appenditemvalue "fldPHN",newVal
doc.Save True, True

' beide Schleifen weiterzählen
resultset.NextRow
Set doc = view.getnextdocument(doc)

Loop Until resultset.IsEndOfData


Exit Sub
Fehlerbehandlung:
Msgbox(Err & Error)
End Sub


Sebastian Lewers
10.05.2005, 08:58
Hallo.

Hier ein Beispiel, wie alle Dokumente der Ansicht "PHN" in eine DocumentCollection geladen und am Ende gelöscht werden.

...

Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Set db = session.CurrentDatabase
Set view = db.GetView("PHN")

Set doc = view.GetFirstDocument

do
call collection.addDocument(doc)

set doc = view.getnextdocument(doc)

loop until doc is nothing

'Löschen der DocumentCollection
Call collection.RemoveAll(False)

...


Gruß
SESE