Hallo zusammen,
ja ich komm schon wieder mit etwas, dass es im FOrum schon öfters gibt, ich komme trotzdem nicht weiter.
Folgendes Szenario, ich habe eine DB mit Repliken auf mehreren Servern und eventuell auch noch eine lokal.
Wenn der User nun die DB nicht auf seinem Mailserver öffnet, dann wird die DB geschlossen und die auf dem Mailserver geöffnet (zumindest theoretisch).
Gelöst über den Code im DB-Script\PostOpen:
Set db = Source.Database
a_objRoles = Evaluate(|@UserRoles|)
objRet = ArrayGetIndex(a_objRoles, "[Admin]", 1)
If IsNull(objRet) Then
a_objMailSrv = Evaluate(|@MailDbName|)
strDBSrv = db.Server
If UCase(a_objMailSrv(0)) <> UCase(strDBSrv) Then
Set dbTmp = New NotesDatabase("","")
Call dbTmp.Openbyreplicaid(a_objMailSrv(0), db.Replicaid)
If dbTmp.isopen Then
Set db = Nothing
Call Source.Close
Print "Database closing"
Call ws.Opendatabase(a_objMailSrv(0), dbTmp.Filepath, , , True)
Print "Database server changed!!!"
Exit Sub
End If
End If
End If
Nur öffnet er die DB auf dem Mailserver ohne Rahmengruppe im Hintergrund, mit der Meldung in der Statusleiste(?) unten : "Der Inhalt der Rahmengruppe konnte nicht geladen werden. Datenbank wird ohne Rahmengruppe geöffnet."
Und noch schlimmer die "Falsche" bleibt offen.
Ist jetzt irgendwie nicht so hübsch, was mache ich falsch?
Warum wir das so machen (möchten), in erster Linie, dass die Leute keine lokale Repliken öffnen, wenn sie online sind.
Danke im Voraus...