XML Maps Best Practices for Xcelsius 2008

XML Maps Best Practices for Xcelsius 2008

Written by: Ryan Goodman
Published: June 20th, 2008
7247 views

I recently worked on a project with Xcelsius 2008 where we used the XML maps connectivity option load data into a dashboard. I have used this feature for a long time in Xcelsius 4.5, but found some challenges that I had to work through so I will share them with you below.

  • If you are using Excel 2003, by default you can not get access to the XML maps dialogue. You have two options: Do your XML maps in Excel, and import into Xcelsius, or insert the XML Source menu item. To get the XML Source menu button, right click in your Excel toolbar and click Customize and navigate to the Commands tab. Select Data, and scroll down to the XML Data source option. You will click and drag the XML Source button into your toolbar.

xmlsource

  • If you are using Excel 2007, you will need to enable the Developer tab within your toolbar/ribbon. To do this, open Excel 2007 outside of Xcelsius, click on the Office icon (the round button in the upper left corner), and select Excel Options. In the first tab you will see a tab labeled "Show Developer tab in the Ribbon." Check this box and you will now have access to the XML source option, within Xcelsius. From there, the process for configuring XML maps is the same in both Excel 2003 and 2007.
  • If you use XML maps inside of Xcelsius, I found some odd behaviors when I try to re-import XML maps. I have not yet pinpointed the cause, but I found that if I re-bound my XML maps after changing the XML structure slightly, that items were miss-matched. The result was me having to create a new Excel tab and re-importing my XML maps there. That said, I would recommend having a separate tab for each XML map source you import.
  • Make sure the application server containing your XML file or script has a cross domain policy file. If the XML source is on your desktop PC, you shouldn't have any problems.

Hopefully these tips will get you going in the right direction. If you have any experiences with this feature, please post them as a comment and we can add them to this best practices sheet. Thanks.

9 comments

Comment from: Dino [Visitor]
Hi Ryan goodman,
I experience some unwanted behaviours whith missmatching xml-variables when export/import xml files when using Xcelsius. I would prefer using xml-maps inside xcelsius because when mapping xml in excel the files are imported as one kolom with the variables below (probably i miss experience of proper mapping and excel). Before going for that option i would like to inform if the solution is known allready (or fixed in sp1). Or a suggestion to a site that explains proper mapping in excel for example. Hope the question is valid. Kind regards Dino
08/26/08 @ 03:50
Comment from: Ryan Goodman [Member] Email · http://ryangoodman.net/blog
I usually do all of my preliminary mapping outside of Xcelsius in Excel. I have found weird behaviors where Xcelsius caches an XML map from the previous import. I have also found that deleting the XML map connection, restarting Xcelsius, then re-importing the XML map sometimes works.

thank you for the inquiry.
09/19/08 @ 14:41
Comment from: Louchelle [Visitor] Email
Hi Ryan,

I am using the xml connections within Xcelsius and have found that Xcelsius is caching the XML on the local pc. And instead of reading the new xml from online, it reads the local out of date copy. Is there any work around?

I have tried putting on cookies and even no cache in the html and exporting, but no luck...

Thanks for all the help already...
03/04/09 @ 08:40
Comment from: Ryan Goodman [Member] Email · http://ryangoodman.net/blog
As long as you re-point the XML Map URL to your server, it should not read it from your local machine at all. Did you clear out the data from your model before you export your SWF?
03/05/09 @ 10:11
Comment from: Stewart [Visitor]
I am having some issue when using filtered rows with XML data. I pulled in Bay Area BART xml feed, using XML Map, and when data refreshs, it only returns one item in the filtered list when ( per the xml map ) there should be more than one - any experience with this type of thing?
03/25/09 @ 16:03
Comment from: Mahdi [Visitor] Email
I have an xml data map in my workbook which works great for refreshing data. I can export my swf once I get everything set and refresh the xml. However, if I go back into the Xcelsius document a few days later to make some adjustments or add other components, my XML Map disappears from the XML Source screen in excel. I have to re-import my xml and then adjust all my formulas that reference those cells.

Any thoughts to why I'm losing the mapping? The connections still exist in the Data Connections, just missing the map to the data.
12/21/09 @ 02:07
Comment from: Kevin [Visitor] Email
****-
I am trying to extract data from SAP in the form of Excel 2003 XML format and then import into Xcelsius. This does not seem to work. My assumption is that the XML format required by Xcelsius is rigid and will not handle what I am exporting from SAP...?

The actual problem I am having is that the XML Refresh in Xcelsius does not refresh the dashboard...
02/08/10 @ 14:08
Comment from: Manuel [Visitor]
The caching has something to do with the Windows Internet Cache. If I delete the temporary internet files in IE, I get a fresh copy of the online xml map instead of the local one.
03/31/10 @ 09:57
Comment from: Mike Howles [Visitor] Email
*****
To bypass cache problems (for the initial loading of the SWF, at least) I point my XML Maps location to an Excel cell (A1, for this example) that is a formula such as the following:

=B1 & "?r=" & RAND()

Then, cell B1 is my URL:
http://www.example.com/source.xml

This results in it generating a pseudo-random URL like:

http://www.example.com/source.xml?r=1.235235

This will virtually guarantee each time the SWF is loaded, it hits a "different" URL and avoids cache. It's not the best solution in the world, but better than nothing.

You could also try changing the HTTP headers if you are dynamically generating the .xml on each request and telling it not to cache, but I didn't have that luxury in my case, as I didn't have access to the server.
07/13/10 @ 09:09

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
PoorExcellent
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)





©2010 by Ryan Goodman •

Contact • Credits: free blog | green hosting | FP