Question

Read multiple Oracle Spatial geometry columns in FME

  • 26 June 2013
  • 5 replies
  • 21 views

Hi,

 

 

I have 5 SDO_GEOMETRY columns in an Oracle Spatial table. I am trying to read multiple geometry columns from the single table in Oracle Spatial.

 

However it is reading only the first geometry every time.

 

 

How can I read all the 5 geometry columns in FME within one transaction flow?

 

 

Regards,

 

Ananda

5 replies

Badge
The Oracle Spatial reader has a parameter called Handle Multiple Spatial Columns which you need to set to Yes.

 

 

Search this document for HANDLE_MULTIPLE_SPATIAL_COLUMNS for the detalks

 

 

http://docs.safe.com/fme/reader_writerPDF/oracle8i.pdf

 

 

 

CA

 

 

Followed the approach. Now I can see the name of the geometry columns in the logger,

 

 

Name(fme-system): 'GEOM1'

 

Name(fme-system): 'GEOM2'

 

Name(fme-system): 'GEOM3'

 

 

However I can't see the name in the attributes. I want to filter out the geometries based on the attribute name and retrieve the co-ordinates. GeometryFilter does not work. MultipleGeometryFilter doesn't allow me to specify the name.

 

 

Regards,

 

Ananda

 

Badge
How about using an AttributeExposer transformer to expose the geometry columns. Does that solve the problem?

 

 

CA
Badge +3

Hi anandak and ca,

After you set Oracle Reader parameter "Handle Multiple Spatial Columns" to 'yes', you retrieve aggregate geometry.

 

Next step is to use the Deaggregator transformer to split both geometries.

Finally you can expose the desired geometry column name (if necessary) and filter the correct geometry with a Tester/TestFilter.

Userlevel 2
Badge +16

You can use the GeometryPropertyExtractor transformer to retrieve the name of the geometries after using the DeAggregator. That will store the name in an attribute.

Reply