Hello,
I have been trying for a while to work with MapSuite Desktop edition as I inherited the code and a project from my predecessor. Looking through the code and through this forum I realised that MapSuite is not able (yet? correct me if I am wrong) to issue ad hoc queries in the PostGis server and from there to create Layers. It rather expects a View or Table as i have seen. This is very limiting as (a) you must either resort in creating tables on the fly and then call them via the PostGisFeatureLayer contructor or (b) creating views on the fly that is also ... ugly... In fact, the best would be to be able to get MapSuite layer diretly form custom queries or even better from stored procedures that return records/setof[]/table structures etc. So my first question is, am I missing something or is this really the case?
In the meanwhile I bypassed the PostGisFeatureLayer and I am using ad-hoc queries and stored procedures passing the returned "geometry/geometries" to MapSuite features like "Dim aPoint as new PointShape(<wellknowtext>wellknowtext)" . That works great and I probably understand why (if this is again the case) there is no enhanced PostGisFeatureLayer constructor that accepts addhoc queries or stored procedures i.e itterating through the ResultSet and creating Features is not that big deal. However, trying to optimise my code I thought that it is better to return the HEX "well known binary" from PostGress/PostGis than the lengthy "well known text". In such a scenario, I could use the "Dim aPoint as new PointShape(byte[])" constructor. Well here is the question, before I reinvent the wheel, and write my own code to convert the HEX to unsigned bytes, is there any hellper function in MapSuite that does the conversion from HEX to byte/binary?</wellknowtext>
Thank you for your patience and for the help
Kind Regards
Yiannis