ThinkGeo.com    |     Documentation    |     Premium Support

SQL Layer with WhereClause like "Where SHAPE.STSrid ="

When opening an MsSQLFeatureLayer we are wanting to test the table to verify that all geometries are in the same SRID and if not open multiple layers one for each SRID.  We tried setting the WhereClause = "Where SHAPE.STSrid = 26915", but it looks like MapSute does not like that as it gave an error that STSRID is unknown.  Short of requiring that every row in the table has an SRID column or creating a view that includes SHAPE.STSrid as SRID as a column, is there any way to accomplish this?


Thanks,



 Jamie,


 


If every row has “SRID“ column, why you not use it instead of Shape. STSrid . If I misunderstand please give me more information about your problem.


 


And there is a easy way to debug in your side because I couldn’t access your database so that maybe some problem it’s difficult to debug. You can hookup the event ExecutingSqlStatement which contains sqlStatement, and then just copy it to execute in Sql management studio, there will be more information if have some problem.        ((MsSql2008FeatureSource)msSql2008FeatureLayer.FeatureSource).ExecutingSqlStatement += new EventHandler<ExecutingSqlStatementMsSql2008FeatureSourceEventArgs>(msSql2008FeatureLayer_ExecutingSqlStatement);


 


Thanks,


James