Skip to main content
Question

Esri Geodatabase (ArcSDE Geodb) writer no multipolygon?

  • November 8, 2018
  • 6 replies
  • 80 views

Forum|alt.badge.img

Hi,

When trying to write I am receiving

"The error message from ArcObjects is: {Number of parts in shape is incorrect for its geometry type}"

FME 2018.1, Postgres 9.5.9, config keyword: PG_GEOMETRY

Isn't multipart writeable?

Same input data written to file geodatabase and copy/pasted to sde with arccatalog works.

Regards,

Richard

This post is closed to further activity.
It may be an old question, an answered question, an implemented idea, or a notification-only post.
Please check post dates before relying on any information in a question or answer.
For follow-up or related questions, please post a new question or idea.
If there is a genuine update to be made, please contact us and request that the post is reopened.

6 replies

stalknecht
Contributor
Forum|alt.badge.img+21
  • Contributor
  • 305 replies
  • November 8, 2018

Must be one of the settings.

I was successful in loading your data. See screenshot.


Forum|alt.badge.img
  • Author
  • 29 replies
  • November 8, 2018

Must be one of the settings.

I was successful in loading your data. See screenshot.

I was not using the PostGIS writer but the Esri Geodatabase (ArcSDE Geodb) writer as per title of the question.

 


stalknecht
Contributor
Forum|alt.badge.img+21
  • Contributor
  • 305 replies
  • November 8, 2018

Must be one of the settings.

I was successful in loading your data. See screenshot.

Ok, I can reproduce your situation. Maybe someone at Safe has an answer.

As a workaround you can write to a filegeodatabase and then use arccatalog to do the translation.


Forum|alt.badge.img
  • Author
  • 29 replies
  • November 8, 2018

Yes, I've worked around with python caller using arcpy but better not to if possible.


nampreetatsafe
Safer
Forum|alt.badge.img+13
  • Safer
  • 383 replies
  • November 21, 2018

Hi @tfsrichard: Thanks for your question! The feature it's failing on is pid=7166521. When I filter out this feature, all remaining features (including all other multipart polygons) are written successfully to the SDE. So I'm thinking the issue isn't quite related to multipart polygons.

The feature pid=7166521 contains 6 extremely narrow polygon parts. I believe the issue sent back from the SDE is caused by your database/SDE tolerance (i.e. vertices that are snapped to a particular tolerance may result in self-intersecting and/or duplicate vertices that affect the resulting geometry).

For example, the following coordinates are four vertices from one of the parts of the offending feature. If the tolerance was set to 0.001, you will find that the three of these vertices would be identical:

  • 508493.5333573815, 5431015.562052546
  • 508500.625289657, 5431014.372179839
  • 508493.53359999973, 5431015.562
  • 508493.5333573815, 5431015.562052546

To confirm this train of thought, I tried passing pid=7166521 through a GeometryValidator and setting the Tolerance parameters for Duplicate Consecutive Points and Self-intersections in 2D to 0.001:

pid=7166521 comes out the GeometryValidator's Failed port as a self-intersecting 2D object.


nampreetatsafe
Safer
Forum|alt.badge.img+13
  • Safer
  • 383 replies
  • November 21, 2018

Hi @tfsrichard: Thanks for your question! The feature it's failing on is pid=7166521. When I filter out this feature, all remaining features (including all other multipart polygons) are written successfully to the SDE. So I'm thinking the issue isn't quite related to multipart polygons.

The feature pid=7166521 contains 6 extremely narrow polygon parts. I believe the issue sent back from the SDE is caused by your database/SDE tolerance (i.e. vertices that are snapped to a particular tolerance may result in self-intersecting and/or duplicate vertices that affect the resulting geometry).

For example, the following coordinates are four vertices from one of the parts of the offending feature. If the tolerance was set to 0.001, you will find that the three of these vertices would be identical:

  • 508493.5333573815, 5431015.562052546
  • 508500.625289657, 5431014.372179839
  • 508493.53359999973, 5431015.562
  • 508493.5333573815, 5431015.562052546

To confirm this train of thought, I tried passing pid=7166521 through a GeometryValidator and setting the Tolerance parameters for Duplicate Consecutive Points and Self-intersections in 2D to 0.001:

pid=7166521 comes out the GeometryValidator's Failed port as a self-intersecting 2D object.

FYI: I also tried writing it to a file geodatabase and then loading it into the SDE feature class. I ended up getting a similar error in ArcCatalog: