Intro

Since SAP Dashboard Design (Xcelsius) uses the internet browser to show your dashboard model, the limitations of Internet Browsers may cause some challenges. One of these challenges can be the issue of showing a non up-to-date version of the SWF model. This may happen because your Internet browser stores the SWF model in the browser cache memory.

What is cache?
Your browser’s cache holds the contents of all the pages that you have visited during a session or period of time, depending on your settings. It monitors requests for HTML pages and image files and saves copies for itself. Then, if there is another request for the same page or file, it will use the copy that it has, instead of asking the server for it again. Since the request is satisfied locally, it takes less time for your browser to retrieve and display the page.

How to fix this?
There are many suggested ‘manual’ solutions for this issue. Most of them show ways how to manually delete your cache, quickly delete it with the use of a hot-key, let your browser delete it by itself every time a page loads, increase the virtual memory, and so on.

I have found just only one solution that really worked in my case, thanks to Centigon Solutions.
They provide a simple solution, by just randomizing the URL every time the dashboard starts. This way, the dashboard can never be in the cache, since the webpage hasn’t ever been visited before. It works quite simple, if you can dynamically change the target URL where the dashboard is located. In my case, I had a ‘welcome screen’ with a URL button integrated into it, from which the real dashboard was started. In this case, I can easily use the ‘randomized URL parameter’ solution for solving the caching issue. You can also add this URL button in your dashboard and let it open the target URL in the same window. This way, it is sort of a ‘refresh’ button.
All the other ‘internet browser settings related’ solutions did not work in my case.

How to do it?
1. Bind the URL button of your dashboard to a cell in your spreadsheet
2. Use another cell with a function “=RAND()” to generate a random value between ’0′ and ’1′.
3. Set a third cell in your spreadsheet model to concatenate the base URL and the random parameter and add a ‘?’ character in between

 

Example
I created a simple example XLF in which you can easily test the solution and copy paste your own URL witout having to manually add the ‘?’ character.
You can download the example here.

Again thanks to Centigon Solutions for pointing out the direction of the solution.