I'm trying to select features by attribute using the following code:
Var options = {};
Options.layers = ‘roads_layer’;
Options.filter = REFVAL = 'B4323'’;
Parent.Fusion.getWidgetById(‘Map’).query(options);
This produces the Fusion Error : FATAL: xml2json: invalid XML document: MgInvalidArgumentException : ...
I find that if I add the geometry parameter to "Options" with a dummy geometry then the error goes away. But I don't want to select by geometry, just by the attribute.
The dataset I am connected to is a Shapefile.
Any ideas?
Solved! Go to Solution.
Solved by janechii. Go to Solution.
I have MGE2011 and had similar issues. From what i gather through reading from forums, the "query" in Fusion for mapguide has changed substantially and doesn't seem to want to use the "filter" option anymore, even though you'll see that in all the documentations. Instead of sending a request through Query.php, it is now going directly to mgagent.fcgi.
anyways, in the fusin library, there are 2 implementations of the query method, one for mapguide and one for mapserver. I looked at the code for mapserver's implementation (which still uses the Query.php) and reimplemented to work with mapguide and now my query method works like in the documentations.
Good luck!
Hi.
our implementation is really application specific and relies other components. it would be more confusing to look at it than the fusion one.
you should be able to find it in Fusion.Layers.MapServer class (maybe in .../fusion/layers/MapServer/MapServer.js)
search for the query method "query:". we pretty much used that exact code.