Hallo,
ich habe mal die neue Funktion "GetMailInfo" verwendet (in einem Webservice). Mir ist dabei aufgefallen, dass diese Funktion um einiges langsamer ist als die altbewährte Methode mit names öffnen, $Users-Ansicht hohlen und Dokument suchen.
Im konkreten Fall dauert es 2,3 Sekunden.
In der Altbewährten Methode - nicht messbar.
23.04.2012 10:56:33 HTTP Server: Agent printing: Dauer: 2,300781
23.04.2012 10:56:33 HTTP Server: Agent printing: Dauer: 2,300781
Muß da noch etwas am Server konfiguriert werden? Kann das jemand nachvollziehen?
Anbei der verwendete Code
Dim sTime As Single
Dim elapsedTime As Single
sTime! = Timer()
'Adressbuch öffnen und Suchansicht ermitteln
On Error 4731 Goto ERR_USER_NOT_FOUND
Dim notesdir As NotesDirectory
Set notesdir = session.getDirectory(DD_SERVER)
homeserver = notesdir.GetMailInfo (benutzer, False, False)
mFile = Cstr(homeserver(3))
elapsedTime! = Timer() - sTime!
Print "Dauer: " & elapsedTime!
If nab Is Nothing Then
Set nab = session.GetDatabase(db.Server, "names.nsf")
If Not nab.IsOpen Then
If Not nab.OpenWithFailover(db.Server, "names.nsf") Then
Call doError(fehler, "Das Notes Adressbuch konnte nicht geöffnet werden", -1002, "createMeeting")
Exit Function
End If
End If
End If
If nabView Is Nothing Then
Set nabView = nab.GetView("($Users)")
If nabView Is Nothing Then
Call doError(fehler, "Die Suchansicht '($Users)' im Notes Adressbuch konnte nicht gefunden werden", -1003, "createMeeting")
Exit Function
End If
End If
nabView.Refresh
'User im NAB suchen
Set nabDoc = nabView.GetDocumentByKey(Lcase(nam.Canonical), True)
If nabDoc Is Nothing Then
Call doError(fehler, "Der User '" + Benutzer + "' konnte im Notes Adressbuch nicht gefunden werden", -1004, "createMeeting")
Exit Function
End If
mServer = nabDoc.Mailserver(0)
mFile = nabDoc.MailFile(0)
mShort = nabDoc.SoftSwitchDEN(0)
mUser = nam.Canonical
elapsedTime! = Timer() - sTime!
Print "Dauer: " & elapsedTime!