und bitte nicht zu laut lachen, falls mein Problem denn doch zu einfach ist:
Ich möchte von einem Writer-Doc/Makro auf eine OOo-DB (odb-Datei) zugreifen.
Mein erstes Ziel ist insoweit erstmal DB öffnen und einfach seriell auf die Daten irgendeiner Spalte zugreifen. Mit weiterem beschäftige ich mich dann später.

Also habe ich nach dem Studium etlicher WWW-Seiten und OOo-Anleitungen folgendes Makro gefertigt:
Dim oDatasoure As Object
Dim oConnection As Object
Dim oStatment As Object
Dim oResultset As Object
Dim oTable as Object
dim sDBName as string ' Name der odb-Datei
dim sTabName as string ' Name der Tabelle
dim a as string
sub Main
sDBName = "Kamigawa"
sTabName = "karten"
oDatasoure = createUnoService("com.sun.star.sdb.DatabaseContext").getByName(sDBName)
oConnection = oDatasoure.getConnection("","")
oStatment = oConnection.createStatement()
'oTable = oConnection.getTables().getByName(sTabName)
'a = otable.name
'msgbox a
'If ( oConnection.getTables().hasByName( sTabName ) ) Then msgbox "Tabelle Karten"
oResultset = oStatment.executeQuery("SELECT * FROM " & sTabName)
while (oResultset.next)
msgbox oResultset.getstring(5) ' Daten der 5.Spalte
wend
oResultset.close()
oConnection.close()
End Sub
Die odb-Datei (Kamigawa.odb) ist in OOo registriert (Extras\Optionen...Datenbanken). Mit der F4-Taste wird die DB auch im Fenster in Writer angezeigt.
Eigentlich bin ich der Meinung, dass alles richtig ist; zumal die auskommentierten Zeilen (oTable = ...) fehlerfrei arbeiten, ABER:
Wird das Makro ausgeführt, dann erhalte ich in der Zeile
oResultset = oStatment.executeQuery("SELECT * FROM " & sTabName)
folgende Fehlermeldung:
Basic Laufzeitfehler
Es ist eine Exception aufgetreten
Type: com.sun.star.sdbc.SQLException
Message: Table not found in Statement [Select * from karten]
Ersetze ich nun aber die beiden Zeilen:
sDBName = "Kamigawa"
sTabName = "karten"
durch
sDBName = "Bibliography"
sTabName = "biblio"
und greife also auf die mitgelieferte DB zu, dann läuft das Makro einwandfrei !!!???
Das Makro muss also eigentlich OK sein. Andererseits ist meine odb-Datei aber auch OK, weil in OOo erzeugt und ja zu sehen etc.
Wo stelle ich mich denn nun zu dusselig an?
Wäre Euch für einen hilfreichen Hinweis dankbar.