Skip to main content

Hi,

I have insert polygons into a Sql Server server table, and for some reason polygons are converted to geometry collections polygon and or curved polygons circularstring

For this reason Geoserver and or ArcMap does not work, because it cannot view these geometry types

I have tried all the coercer and filter but cannot seem to make it an polygon and or mutli polygon

running on SQL Server 2014, worked perfectly on 2008R2

How can i force it to these 2 logical types?

Rudy

Have you tried deaggregating them before writing?


Have you tried deaggregating them before writing?

multi polygon is not the issue, deaggregating just create single polygons with the same issue.

 

Rudy

 

 


Have you tried deaggregating them before writing?

I have just inserted polygons from GeoDataBase and the fme writer has changed it from Polygon to: SQL Spatial Table

 

CURVEPOLYGON (COMPOUNDCURVE (CIRCULARSTRING (321261.79050000012 5814367.8983, 321261.121410844 5814365.4550765241, 321260.2999 5814363.0588), (321260.2999 5814363.0588, 321232.64039999992 5814366.1883, 321233.17879999988 5814371.1716, 321261.79050000012 5814367.8983)))

 

 

GeodatabaseTable

 

POLYGON ((321261.79050000012 5814367.8983, 321233.17879999988 5814371.1716, 321232.64039999992 5814366.1883, 321260.2999 5814363.0588, 321261.79050000012 5814367.8983))

 

 

 

 

Rudy

 


Are you specifying the geometry type on the writer or using the none spatial writer by any chance?


Are you specifying the geometry type on the writer or using the none spatial writer by any chance?

i'm using sql server spatial writer - inherit from wrter

 

 


Hi @rudy_v, Saw your post and thought I would chime in. I took your geometry (the GeodatabaseTable POLYGON coordinates you shared) and created a geometry wkt out if it with FME 2016.1. I then loaded it into an SDE Geodatabase (SQL Server 2014, 10.4 with a ArcGIS client 10.2.2). I reviewed the geometry in FME Data Inspector. Looks as I expect it would.

 

Then, in FME, SDE Geodatabase Reader to SQL Server Spatial Writer (SQL Server 2014, FME 2016.1) and could not reproduce your outcome. Reviewing all the geometries in Data Inspector they all show up as a polygon.

 

 

To troubleshoot further, can you add a Recorder to your workspace just before the Writer feature type and pass along the resulting ffs file? If you are able to share the data that is? Or submit a case?

 

 

A few other notes/questions:

 

It isn't possible to set the geometry type on the SQL Server Spatial Writer... it can take most geometries you past to it. You do set the coordinate types, either in Geography or Geometry but I don't believe this is a factor here.

 

I'm using SQL Server Client 2012 on the system where I have my FME.

 

What is your current client installed on the FME system?

 

What version of FME is involved here?

 


Yes that is correct i have used a geometry extractor using WKT and then geometry replacer WKT to SQL Server Spatial to replace it the same as Geodatabase, because ESRI does not support Curved Polygons or Complex.

Without using WKT from Geodatabase to SQL Server straight, Spatial will stored it as Curved Polygon, which is the correct OGC standard.

With ellipse you need to do a geometrycoercer to polygon, otherwise WKT will generate a point


Another possibility is to use an ArcStroker transformer before the writer to convert the curved section(s) to normal lines.


If you don't want your SQL Server to have any curves at all, one more adventurous option is to reduce its database compatibility level (see https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-database-transact-sql-compatibility-level); FME will honor that. Given that this option controls more than just curve support, it's unlikely you'd want to use so large a hammer, though.


Reply