Das Problem ist außerdem, dass die andere geöffnete Datenbank nicht geschlossen wird und damit das zugehörige Fenster noch aktiv obwohl die Anweisung Call ws.GetCurrentDatabase.Close schon durchlaufen wurde. Das Fenster wird erst am Ende des gesamten Scripts geschlossen.
Kann mir jemand hierzu etwas sagen.
Das ist genau das Problem von diesen "effizienten" aufrufen wie
Call ws.GetCurrentDatabase.Close
Du weißt nie, ob "ws.GetCurrentDatabase" überhaupt gesetzt ist. Die 6er Designer-Hilfe meint nämlich: GetCurrentDatabase gets the current database. This method supersedes the CurrentDatabase property, which fails under some circumstances but cannot be fixed for reasons of backward compatibility.
Alles klar?
Zu Deinem anderen Problem:
Wenn die mit
Call ws.OpenDatabase(<Server>, <Datenbank>, <Ansicht>, "", True)
aufgemachte DB nicht zugemacht wird, ist für mich klar, dass session.CurrentDatabase was anderes zurück gibt, auch wenn die Designer-Hilfe da etwas anderes sagt. Ich würde jetzt mal so locker ein Bierchen drauf verwetten, dass es wie erwartet funktioniert, wenn der Close call auf die Datenbank funktionieren würde.