os Windows Vista - OOo 3.2.0
I have the following error in a macro that:
-create a database
-register the database in the data sources
-create the tables in the database*
*the error happens here
---error----
Exception:
Type: com.sun.star.sdbc.SQLException
Message: Error in reading/writing on file error java.io.IOException:
S1000 invalid storage class: java.lang.NullPointerException opening file
- file C:\Users\HiIcsToolsDb.odb.data in statement [create table
"icstoolsdb.art"].
This doesn't happen with OOo 3.1.1
If I only register the db, close OOo and reopen, I can create the tables
without problems.
Macro are these ones:
Sub Main
oContext = CreateUnoService("com.sun.star.sdb.DatabaseContext")
oDb = oContext.createInstance()
With oEv.Source.Context.Model
'If ( .getByName("sHSQLDB").State = 1) Then
If oContext.hasByName(HIDB) Then
...
Else
oDb.setPropertyValue ("URL" , "sdbc:embedded:hsqldb" )
sUrl = .getByName("txtDbDir").text
sUrl = sUrl & HIDB & ".odb"
oDb.DatabaseDocument.storeAsUrl(sUrl, array())
oDb.DatabaseDocument.store
oContext.registerObject(HIDB, oDb)
createTables
If oContext.hasByName(HIDB) Then
msgBox ( sSuccess, 0, "IcsToolsConfig" )
Endif
Endif
End Sub
Sub createTables
launchSQLUpdate("create")
End Sub
Sub alterTables
launchSQLUpdate("alter")
End Sub
Sub launchSQLUpdate(sSQLType As String)
'***get sql string to create db
iFile = FreeFile
path = convertFromUrl(getPackageUrl)
path = path & getPathSeparator & "sql_string" & getPathSeparator &
sSQLType & "_db_v1.txt"
path = convertToUrl(path)
Open path For Input As #iFile
While Not (EOF (iFile))
Line Input #iFile, stringVal
sql_string = sql_string & stringVal
Wend
oContext = CreateUnoService("com.sun.star.sdb.DatabaseContext")
oDs = oContext.getByName(HIDB)
oConn = oDs.getConnection("","")
oStmt = oConn.createStatement()
oStmt.executeUpdate(sql_string)
oDb.DatabaseDocument.store()
oDb.dispose()
oConn.dispose()
End Sub
Thanks in advance,
Sergio Corato
http://www.icstools.it/
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]