Voici une macro qui crée cette source et le fichier ODB.
Code : Tout sélectionner
Sub EnregistreSourceODB
Dim NomSource as string
Dim Chemin as string
Dim NomBase as string
Dim Classeur as string
NomSource = "Dude Source"
Chemin = "u:\temp"
NomBase = "maBase.odb"
Classeur = "maBase.ods"
oContexte = createUnoService("com.sun.star.sdb.DatabaseContext")
If oContexte.hasByName(NomSource) Then
msgBox NomSource & " existe déjà !"
Else
oSrcODB = createUnoService("com.sun.star.sdb.DataSource")
sUrl = ConvertToURL(Chemin)
oSrcODB.DatabaseDocument.storeAsURL(sUrl & "/" & NomBase, Array())
sUrl = "sdbc:calc:" & sUrl & "/" & Classeur
oContexte.registerObject(NomSource, oSrcODB)
oSrcODB.setPropertyValue("URL", sUrl)
oSrcODB.DatabaseDocument.store()
End If
End Sub
Code : Tout sélectionner
msgBox NomSource & " existe déjà !"
Code : Tout sélectionner
oContexte.revokeObject(NomSource)