OO4O and Spatial Hi All,
I have the following code that fails. I suspect that I am doing
something really dumb, but I don't know how to locate the problem.
It fails on the ExecuteSql line with the error: 440: OIP-04149: Invalid
input object for field and parameters
Dim oraSession As New OracleInProcServer.OraSessionClass
Dim userSession As OracleInProcServer.OraDatabase
Set userSession = oraSession.OpenDatabase("aubis", "aubis/aubis",
0)
userSession.AutoCommit = False
Dim sql As String
sql = "UPDATE MAP_CLASTS SET GEOMETRY = :GEOMETRY WHERE CLAST_ID =
2001"
Dim sdo_geom As OracleInProcServer.OraObject
Set sdo_geom = userSession.CreateOraObject("MDSYS.SDO_GEOMETRY")
Dim sdo_elem_info As OracleInProcServer.OraCollection
Set sdo_elem_info =
userSession.CreateOraObject("MDSYS.SDO_ELEM_INFO_A RRAY")
Dim sdo_ordinates As OraCollection
Set sdo_ordinates =
userSession.CreateOraObject("MDSYS.SDO_ORDINATE_AR RAY")
sdo_elem_info.Append (1)
sdo_elem_info.Append (2)
sdo_elem_info.Append (1)
sdo_ordinates.Append (10#)
sdo_ordinates.Append (0#)
sdo_ordinates.Append (0#)
sdo_ordinates.Append (0#)
sdo_ordinates.Append (10#)
sdo_ordinates.Append (0#)
sdo_ordinates.Append (10#)
sdo_ordinates.Append (10#)
sdo_ordinates.Append (0#)
sdo_geom.Item(1).Value = 3002 'SDO_GTYPE
sdo_geom.Item(2) = Null
sdo_geom.Item(3) = Null
sdo_geom.sdo_elem_info = sdo_elem_info
sdo_geom.sdo_ordinates = sdo_ordinates
Dim params As OracleInProcServer.OraParameters
Set params = userSession.Parameters
params.Add "GEOMETRY", sdo_geom, 2
params("GEOMETRY").serverType = ORATYPE_OBJECT
userSession.ExecuteSQL (sql)
params.Remove ("GEOMETRY") |