Domino 9 und frühere Versionen > ND8: Entwicklung

Frontend DB schliessen, andere Replik öffnen

(1/3) > >>

jo@chim:
Hi! Da manche Nutzer es irgendwie immer schaffen, internationale Repliken einer Datenbank zu öffnen, anstatt die auf dem lokalen Application-Server - und sich dann über die "lausige Lotus Notes Performance" beschweren - habe ich ein Skript programmiert, das auf Basis des Mailservers des Anwenders ermittelt, ob die dazu passende Replik geöffnet wurde und ggf. nach einer Abfrage die Replik auf dem richtigen Server öffnet. Die "falsche" Replik soll anschliessend geschlossen werden. Sieht dann so aus:


--- Code: ---Dim ws As New NotesUIWorkspace
Set uidb = ws.CurrentDatabase
...

'Open suitable server and close open db
Dim ndb As New NotesDatabase( suitableserver, path )
If Not ndb.IsOpen Then
MsgBox "Could not open database on server " & suitableserver & Chr$(10) &_
"Please contact your db admin",48,"Error"
Exit Sub
End If

Call ws.Opendatabase(suitableserver, path,,,,True )
Call uidb.Close()
--- Ende Code ---

Wenn ich das in einer Aktion aus der bereits geöffneten Datenbank heraus teste, funktioniert es auch einwandfrei. Wenn ich den Code jedoch aus dem Datenbankscript im Postopen aufrufe, wird zwar die Frontend DB geschlossen, die gewähle Replik aber nicht geöffnet.

Woran kann das liegen?

Tode:
Die REIHENFOLGE ist an dieser Stelle ganz essentiell...

Mache es so, so funktioniert es definitiv (habe ich hier vor ein paar Tagen benutzt):


--- Code: ---Call uidb.Close()
Call ws.Opendatabase(suitableserver, path)
--- Ende Code ---

jo@chim:
Funktioniert auch so rum nicht bei mir
Hast Du das auch im PostOpen stehen?

Tode:
Eventuell hängt es damit zusammen, dass Du Dir das uidb- Objekt über den NotesUIWorkspace ziehst..: Ersetze mal uidb durch Source, das ist der einzige Unterschied, den ich zu meinem Code erkenne, und der funktioniert in 8.5.3, 9.0 und 9.0.1...

Driri:
Müssen die User denn auf alle Server Zugriff haben ? Sonst kann man die Server ja auch einfach für "fremde" User sperren. Wir machen das hier auch so auf einem Server, auf dem wir Repliken von einigen Anwendungen liegen haben und auf dem eine Schnittstelle für Datenim- und exporte läuft.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln