Autor Thema: Alle Ordner einer DB ausgeben  (Gelesen 1229 mal)

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Alle Ordner einer DB ausgeben
« am: 11.11.09 - 11:44:54 »
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


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

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
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

Offline bikerboy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.155
  • Geschlecht: Männlich
Re: Alle Ordner einer DB ausgeben
« Antwort #1 am: 25.11.09 - 13:59:10 »
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.
Robert Kreutzer

Anwendungsentwicklung

"Jeder Idiot kann was kompliziertes bauen, es Bedarf eines Genie für etwas einfaches"

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz