No hay acceso al objeto. Uso no valido de un objeto.

Hola,
Tengo una bd en mysql en un servidor virtual, al ejecutar una macro que ejecuta una sentencia SQL para añadir una registro a una tabla me aparece este error: No hay acceso al objeto. Uso no valido de un objeto.

Sub Main()
Dim Control as Object
Dim oStat As Object
Dim sSQL As String
Dim oRes As Object

'añado entrada en log de sesion conectada del usuario.
If IsNull(ThisComponent.CurrentController.ActiveConnection) Then
	ThisComponent.CurrentController.connect 
End if
oStat=ThisDatabaseDocument.CurrentController.ActiveConnection.CreateStatement()
sSQL="INSERT INTO Log_tb (id, momento, usuario, fb) " &_ 
"VALUES (NULL ,CURRENT_TIMESTAMP ,LEFT(CURRENT_USER(), INSTR(CURRENT_USER(), '@') - 1) ,'F' );"
oRes=oStat.ExecuteUpdate(sSQL) ' **Aqui es donde ocurre el error**

End Sub

Y te funciona la misma sentencia SQL ejecutándola directamente tomando el valor que tienes en sSQL.

Si m.a.riosv.
La sentencia sql es correcta. Fue construida y comprobada con la utilidad SQL del mismo libreoffice.

hola a todos,

Al final, he estado buscando por todo internet,y realizando pruebas y he conseguido obtener una macro que lo hace.

Sub InsertRecord

REM INSERT RECORDS INTO DATABASE TABLE

Dim Context

Dim DB

Dim Conn

Dim Stmt

Dim Result

Dim strSQL As String

Context=CreateUnoService(“com.sun.star.sdb.DatabaseContext”) '< get the database context

DB=Context.getByName(“DATABASENAME”) '<- change database name

Conn=DB.getConnection("","") '<- username & password pair - HSQL default blank

Stmt=Conn.createStatement()

strSQL=“INSERT INTO TABLENAME(COLUMN) VALUES(‘VALUE’)” '<- change tablename, column name/s and data to be inserted

Stmt.executeUpdate(strSQL)

Conn.close()

End Sub