Hallo Zusammen,
ich habe eine Suche implementiert, die Ihre Ergebnisse in einen Ordner kopiert und anschließend im Vorschaufenster anzeigt. Mein Problem besteht darin, dass ich es nicht schaffe, den Ordner anzuzeigen. Obwohl er im Designer zu sehen ist, wird er nicht angezeigt. Fehlermeldung "ungültiger oder nicht vorhandenes Dokument". Ist der Ordner schon vorhanden wird ab dem zweiten Mal alles korrekt bearbeitet. Bedingung hierbei ist, dass die Datenbank einmal geschlossen und wieder geöffnet wird.
Könnt Ihr mir sagen wo mein Fehler liegt?
Code
Sub Click(Source As Button)
Dim workspace As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim uidb As NotesUIDatabase
Dim colDoc As NotesDocumentCollection
Dim doc As NotesDocument
Dim suchString As String
Dim gefuellt As String
Dim i As Integer
Dim t As New NotesDateTime ("")
Dim app As Variant
Dim view As NotesView
Set uidb = workspace.CurrentDatabase
Set db = uidb.Database
Set uidoc = workspace.CurrentDocument
Set doc= uidoc.Document
suchString = ""
i = 0
'Wie viele Zeile sind ausgefüllt ?
gefuellt = doc.getItemvalue("SucheNext_" + Cstr(i))(0)
While gefuellt = "AND" Or gefuellt = "OR"
i = i+1
gefuellt = doc.getItemvalue("SucheNext_" + Cstr(i))(0)
Wend
' Erzeuge Suche
For j%=0 To i
suchstring = suchstring + ErzeugeZeile(doc,j%)
Next
'Ordner leeren
app = "Search" + Replace(Replace(Replace(Cstr(uidoc .FieldGetText("User")), ".", ""),":","")," ","")
Set view = db.GetView(app)
If Not view Is Nothing Then
Call view.AllEntries.RemoveAllFromFolder(app)
Else
' Versuch den View frühzeitig anzulegen.
' Hat keine Auswirkungen
Call db.EnableFolder(app)
Call workspace.ViewRebuild(True)
End If
'Suche und Ordner füllen
Set colDoc = db.Search(suchstring,Nothing,0)
Call colDoc.PutAllInFolder (app, True)
'Call workspace.ViewRefresh
Call workspace.ViewRebuild(True)
' Ergebnis anzeigen
If Not colDoc.Count = 0 Then
Call workspace.SetTargetFrame("NotesPreview")
Call uidb.OpenView(app, ,False,True)
Call workspace.ViewRefresh
Else
Dim uidoc2 As NotesUIDocument
Call workspace.SetTargetFrame("NotesPreview")
Set uidoc2 = workspace.ComposeDocument("","","frmSearchResult")
Call uidoc2.FieldAppendText("SuchAnfrage",suchstring)
Call workspace.ViewRefresh
End If
End Sub
Alles anzeigen
Danke
Wolfgang Martens