AnsweredAssumed Answered

How to circumvent SDE geometry errors in FME?

Question asked by faebel on Sep 10, 2018
Latest reply on Sep 11, 2018 by vangelo-esristaff

Hi everyone

 

I have a question regarding the SDE Writer (Geodatabase SDE) in FME (FME 2017). There are some issues regarding geometry problems, e.g. self-intersecting polygons cannot be inserted into an Oracle Database with SDE (ERROR |An error occurred while attempting to insert a row into the table 'XXX' using a cursor. The error number from ArcObjects is: '-2147215968'. The error message from ArcObjects is: {Linestring or poly boundary is self-intersecting}).

How can this problem be addressed? (Using PostGIS, these geometries can be inserted normally)

 

I tested the GeometryValidator transformer, which seems not to be the right way though: sometimes the self-intersecting geometries are detected and sometimes they’re not detected (!). After repairing these geometries using the GeometryValidator, there is another error while inserting the data into the DB (ERROR |An error occurred while attempting to insert a row into the table 'XXX' using a cursor. The error number from ArcObjects is: '-2147215975'. The error message from ArcObjects is: {The number of points is less than required for feature}). This problem, however, cannot be solved by the GeometryValidator. 

Furthermore, the GeometryValidator sometimes also detects this error, but the self-intersecting geometry could be inserted into the DB without any problem.

 

This means that I cannot filter the data for these geometry errors, because they’re not always detected and sometimes they are not a problem (the data can be written into the DB anyway). Does anyone know a different transformer that I could use for filtering the data? Or a different approach? Any hint or idea is welcome.

 

Thanks in advance.

Outcomes