Die Verbindung zur Datenquelle Adressen konnte nicht Hergestellt werden.
Die URL 'file:///../Adressen.0003/' ist ungültig. es Kann keine Verbindung hergestellt werden.
Die Datei Adressen.0003 ist die (von der Endung her umbenannte) TXT-Datei, aus welcher ich die Datenbank erstellt habe.
Ich registriere die Datenbank mit folgendem Code:
Code: Alles auswählen
DatenBanken = createUnoService("com.sun.star.sdb.DatabaseContext")
NeuDB=DatenBanken.getByname("file:///"+PfadODBDatei)
DatenBanken.registerobject("Adressen",NeuDB)
Erstellt habe ich die Datenbankdatei auch Per Makro, allerdings nicht im Selben makro.
Erstellen der Datenbankdate:
Code: Alles auswählen
function CREATE_SBRIEF_DATABASE(DOC_Path as String)
Dim DP as String
Dim ExtensionPos as Integer
Dim DPOhneExtension as String
Dim DPODB as String
Dim DPTXT as String
Dim Extension as String
DP = DOC_Path
REM DokumentenPfad
ExtensionPos = InStr(DP,".")
REM Position des Punktes im String
DPohneExtension = mid(DP, 1, ExtensionPos)
REM Reiner Dateipfad ohne Extension aber mit einem Punkt am Ende
Extension = mid(DP, ExtensionPos - 4, 4)
REM Endung für TXT-Datei ausfiltern
DPODB = DPOhneExtension + "odb"
REM Speicherpfad der ODB-Datei
DPTXT = mid(DPOhneExtension, 1, ExtensionPos - 11)+ "Adressen." + Extension
REM Pfad der TXT-Datei auf "Pfad+Adressen.Endung" ändern
DPODB = Replace(DPODB,"\","/")
REM in ODB-Pfad \ durch / ersetzen
DatenBanken = createUnoService("com.sun.star.sdb.DatabaseContext")
REM Service zur Datenbankerstellung
NeueDatenBank= DatenBanken.createinstance()
REM Datenbank-Instanz erstellen
NeueDatenBank.url="sdbc:flat:"+DPTXT
REM Datenquelle für die Datenbank
Dim myProps(1) as New com.sun.star.beans.PropertyValue
REM Einstellungen der Propertys zum einlesen der TXT-Datei
myProps(0).Name="Extension"
REM Property Endung
myProps(0).Value=Extension
REM Eingeben der Endung
myProps(1).Name="FieldDelimiter"
REM Feldtrenner in der TXT-Datei
myProps(1).Value=";"
REM Feldtrenner auf ";" setzen
NeueDatenBank.Info=myProps()
REM Propertys setzen
dim getargs()
Print DPODB
NeueDatenBank.DatabaseDocument.storeAsURL("file:///"+DPODB,getArgs())
REM Datenbank Speichern
DatenBanken.registerObject("Adressen", NeueDatenBank)
REM Datenbank Registrieren (Datenbankname, Datenbankpfad)
END Function