Hallo Robert,

Robert Großkopf schrieb:
Hallo Andreas,
Wären die Formulare in unabhängigen Dokumenten hättest du weder Probleme
sie per Hyperlink zu öffnen, noch irgendein Problem mit einer
abgeschmierten Datenbank.
So musst du dich wohl um die Datenbankverbindung kümmern bevor du das
"Datenbankdokument" schließen kannst.

Das Beknackte ist ja, dass

oDoc = ThisDatabaseDocument
oDoc.close(True)

mit der Einstellung True genau dies machen soll: Der Prozess wartet, bis alle ausstehenden anderen Prozesse beendet sind und führt dann das Schließen des Dokumentes durch. Nur beim DatabaseDocument (statt einem normalen) wird anscheinend die Datenbank selbst nicht berücksichtigt. Kennzeichnenderweise finde ich auch nirgendwo einen Befehl, wie ich eine Datenbankverbindung lösen kann, wohl aber, wie ich sie erzeugen kann ...
Öffnest Du ggf. mehrere Instanzen (ich weiss nicht genau wie ich das für Openoffice.org Base sonst nennen soll)? D.h. öffnest Du mit einem Macro die Datenbank, verarbeitest etwas in einem zweiten Makro, erstellst oder öffnest Du ein Formular in einem weiteren Macro und möchtest in einem letzten Makro alles wieder schliessen? Dabei beziehst du Dich in den einzelnen Programmteilen auf das aktuelle Dokument (ODoc=ThisDocument)?

Ich habe die Doku zu Openoffice.org Base so verstanden, das Base keine Macros enthalten kann.
Daher kannst Du mit ThisDocument auch keine Referenz darauf setzten?!
Wo hingegen getCurrentComponent() möglicherweise zum Erfolg führen könnte?!

Aber vielleicht kannst Du Die oDoc Variable einfach global deklarieren und während des ganzen Makro-Prozesses deklariert lassen? Dann solltest du am Ende diese auch mit .close() schliessen können?

mfg
Volker

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Antwort per Email an