Domino 9 und frühere Versionen > ND8: Entwicklung

Alle Ordner einer DB ausgeben

(1/1)

bikerboy:
Hallo Liebe Gemeinde,

ich musste gestern alle Ordner aus einer DB holen. Da es gestern schon spät war habe ich es folgendermaßen über die Propertie .Views gelöst.


--- Code: ---
Forall views in db.Views
  If views.IsFolder then

                varFolder(Ubound(varFolder)) = Cstr(views.Name)
Redim Preserve varFolder(Ubound(varFolder) + 1)

  end if
End Forall


--- Ende Code ---

Das Problem war die Performance. Bei 12 ordner hat das ganze schon 20 Sekunden gedauert.

Gerade habe ich einen viel performanteren Weg gefunden.


--- Code: --- Set nColl = dbMailfile.CreateNoteCollection(False)
nColl.SelectFolders = True
Call nColl.BuildCollection

Dim strNoteID As String
Dim strName As String

Dim docNote As NotesDocument

strNoteID = nColl.GetFirstNoteId

Redim varFolder(0)

While Not strNoteID=""
Set docNote = dbMailFile.GetDocumentByID(strNoteID)

varFolder(Ubound(varFolder)) = Cstr(strName)
Redim Preserve varFolder(Ubound(varFolder) + 1)


strNoteID = nColl.GetNextNoteId(strNoteID)
Wend

--- Ende Code ---

Dieser braucht gefühlt unter einer Sekunde für das selbe Ergebnis

Ich hoffe ich konnte damit Jemanden weiterhelfen. Wenn nicht heute, dann vllt in ein paar Jahren

bikerboy:
Hmm ich habe hier ein Cache-Problem,

ich habe mal Ordner umbenannt und dann neue erstellt, aber mein Code zeigt mir noch die alten namen an. Die neu erstellten Ordner sind aber korrekt da.

Jemand ne Idee wie ich das abschalten kann.

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln