Hallo eBayer,
sorry, dass ich mich erst so spät melde, aber du hast mich ja auch zum trainieren gezwungen

Vielen Dank für deine Mühe. Ich bin jetzt nun schon ein großen Stückchen weiter.
Einen Schönheitsfehler hätte ich dann noch:
Du hast mir ja schon einmal den Code und eine entsprechende Extension geschickt, wodurch man die Datenbank wie eine eigenständige Anwendung verwenden kann. Wenn ich so mein Startformular öffne sowie mit diesem noch weitere Formulare, so kann ich leider mit der Schliessenroutine lediglich das Startformular beenden, da man ja kein "Parent-Frame" in diesem Sinne hat. Also bleiben die anderen Formulare geöffnet.
Um das zu umgehen, habe ich in meiner DB beim Ereignis Dokument öffnen dieses Makro eingebunden:
Code: Alles auswählen
Sub FENSTER_MINIMIEREN_UND_STARTFORMULAR_OEFFNEN
Dim oFrame As Object
Dim handle
oFrame = ThisComponent.CurrentController.Frame
oMenuWin = oFrame.ContainerWindow()
handle = oMenuWin.getWindowHandle(dimarray(), 1) ' 1 = WIN32
ShowWindow( handle, 2 ) ' ' 1 = SW_NORMALIZE / 2 = SW_ICONIZE / 3 = SW_MAXIMIZE
Dim Context AS Object
Dim Conn As Object
Dim DB As Object
Dim FormDoc As Object
Dim Args(1) As New com.sun.star.beans.PropertyValue
Dim FormName As String
FormName = "STARTFORMULAR"
Context=CreateUnoService("com.sun.star.sdb.DatabaseContext")
DB=Context.getByName("DB-Name")
Conn=DB.getconnection("","")
Args(0).Name="ActiveConnection" : Args(0).Value=Conn
Args(1).Name="OpenMode" : Args(1).Value="open"
FormDoc=DB.DatabaseDocument.FormDocuments.loadComponentFromURL(FormName,"_self",2,Args) REM << BASIC-Laufzeitfehler.
FormDoc.CurrentController.Frame.ContainerWindow.setFocus()
ThisDatabaseDocument.FormDocuments.getByName("STARTFORMULAR").open
End Sub
Öffne ich nun über das automatisch geöffnete Startformular weitere Fomulare und editiere Daten, so sind diese teilweise nicht konsistent, d.h. dass meine Änderungen einen Neustart der Datenbank nicht überstehen. Das kann ich mir aber nicht so richtig erklären. Das gleiche ist es, wenn ich mein Startformular extern speichere, und von da aus meine Formulare eigenständig öffne. Während der Sitzung sind alle Änderungen vorhanden, aber nicht mehr nach einem Neustart der DB?
(generell würde ich gern den zweiten Ansatz favorisieren, um auch die Möglichkeit für manuelle Eingriffe haben zu können)