Earl.Bennett Report post Posted October 3, 2008 I have discovered the (undocumented) API getEntityList. This would be VERY useful in our application. I am pretty much copying what the FusionMaps GUI configuration tool does. In my FC_Rendered event handler I have the following code.. var widget = infosoftglobal.FusionMapsUtil.getMapObject(DOMid); var entities = new Array(); entities = widget.getEntityList(); This works great the first time I call it. However, when I load a new map, when I make this call from the FC_Rendered handler I get the following error.. Unable to evaluate the expression. Operation not supported. Unknown error: 0x80020102 Any suggestions as to what I might be doing? Earl Share this post Link to post Share on other sites
FusionCharts Support Report post Posted October 5, 2008 Hi, Please make sure that you are using the registerWithJS option when re-rendering the maps. The same process is involved in the Map GUI too. Hence, you can take the cue from the code of th GUI. Share this post Link to post Share on other sites
Earl.Bennett Report post Posted October 6, 2008 Sudipto, Thank you for your reply. Unfortunately, I am setting the registerWithJS flag for every map that I load. I set the debug flag, and verified via the messages in the debug window that the control is (claiming to) register with Javascript when the call fails. I have also reduced the XML used to load each map to the following minimal XML: <map animation="0" showShadow="0" showBevel="0" fillColor="F1F1F1" /> Do you have any otherr suggestions? Earll Share this post Link to post Share on other sites
Earl.Bennett Report post Posted October 6, 2008 With more testing, I have found that ANY call I make, including setDataXML(), fails after I load the second map. I could live without the getEntityList(), but not being able to make other calls is a real problem. Again, I have verified that the registerWithJS flag is set when I create the FusionMaps object, and the debug window shows the message "INFO: Map registered with external script. DOM Id of map is serviceMapID". However, I can't make any calls to the object. :w00t: Any suggestions would be greatly appreciated... Earl Share this post Link to post Share on other sites
Earl.Bennett Report post Posted October 6, 2008 After much hair pulling, I have tracked the problem down to the following code contained in the render function in FusionMaps.js.. if(!document.embeds[this.getAttribute('id')] && !window[this.getAttribute('id')]) window[this.getAttribute('id')]=document.getElementById(this.getAttribute('id')); When the second map is loaded, the if statement prevents window[this.getAttribute('id')] being updated, and the flash object can not properly register with the javaScript. The various callback methods (getEntityList, setDataXML, etc.) do not get created, and an error occurs when I try to call them. If I comment out the if statement, allowing the assignment to always execute, everything works fine. The FusionMaps.js used by the Maps GUI tool is much different than the one used by the FusionMaps product itself, and does not contain this code. By the way, I'm using IE 7, with the latest version of FusionMaps (3.0?) Earl Share this post Link to post Share on other sites