This is a fully functioning connected HTML5 version of an SAP dashboard that connects to the eFashion universe on State change and refreshes the data. Yes. You are not reading this wrong. No plugins used, no third party tools or tricks, just SAP dashboard XLF file. Read on to learn more…
Ever since I read Joseph Warbington SCN post about finding SAP Dashboard html5 source files when previewing a dashboard for Mobile, I’ve been intrigued with the possibilities this opened up.
So, during the SAPPHIRE conference, I managed to find an SAP employee on the show floor who was a member of the Dashboard product team. “Can you please tell me when will SAP make the option to export dashboards outside the mobile App available?” I asked. “Well, never… there is no such plan and dashboard relies on the platform for certain things, so we will not make such functionality available…”. Hmmm… Really. Well, this conversation left me a bit disappointed (and by the way, I have no idea if this is the official SAP stance, this was just one side conversation, with one person who works at SAP, who may or may not know the entire product road map). So, after I got home, I decided to try and replicate the full dashboard functionality in HTML5 outside the BI app.
As Joseph Warbington describes, harvesting the HTML5 source files is relatively simple, and it all works just fine, except for one important piece. Connections… Since SP5, we can use the Query Browser to embed connectivity in the mobile dashboards, and quite frankly, without connectivity, I don’t really see much enterprise use in the dashboard. And of course, when trying to get the connections to “just work” after copying the HTML5 files from the Temp directory does not work.
So, armed with chrome network debugger, fiddler, a good understanding of the various BO SDKs (the web services and enterprise ones in particular) and with the invaluable help of my colleague, Yevgeniy (Eugene) Tsvetov, we set out to understand how Dashboard invokes connections and what we would need to get the connections to work outside the BI APP. The result is displayed at the top of this post.
The files generated by SAP dashboard already contain all the scaffolding needed for the connections to work, the only thing that is really missing is the enterprise session. So, by adding a few lines of JS to the files generated, we can pass the session using the enterprise and web services SDK. And REST assured, it all works!
This opens up the possibility for Dashboard designers to post their fully connected awesome designs not just to the BI App, but also to any web site, without needing to use flash!!! Enjoy…
Hi Ron, have you posted somewhere how to place html5 output into BO server and connected it to the data?
It would help a lot! Thank you.
No Jan, there is no such thing.. This post has a description of a code hack that is not supported by SAP and never will be. For connected SAP dashboard that are HTML5 based and available NOT through the SAP mobile BI app, you should not be looking at Xcelsius…
Where should one be thinking of looking for such a thing? e.g. a connected SAP dashboard, HTML5 accessible by browser
Thanks in advance
I am having an issue with using the temp files from the new version of Xcelsius – 4.1 SP1. Do you have any ideas why this might be occurring? This was not the case when using 4.0.
Hi Jamey, i did spend a lot of time on this, but i also noticed the html5 outputs on 4.1 look and work differently. If i get time to work on the conversion, i’ll be sure to post..
Anyone know what sort of implications this has on licensing? Would this fail an audit if you haven’t paid for mobile?
That is a good question. Unfortunately, i don’t think you will get a clear answer, it probably depends on the situation, the account, the type of license used and the rep responsible. I would assume that for the most part there wouldn’t be any licensing issues since the Mobile app doesn’t require additional licensing, so this is equivalent to publishing the model to the BI Mobile category. If you have the capability to do that, this is basically the same.
Any issues with timeouts? Also can you share the jsp code so that I can test?
Yes, i plan to put together a concise check list of instructions for this in a follow up very soon. You can view source on the web page to get the REST calls and JS for now.
HI THanks for this great post..Can you share the code???
Yes, i will also share the server side .jsp code
Great stuff. Are you also sharing the ‘coding’ part in another blog?
Hi Xavier, yes, i plan to put together a concise check list of instructions for this in a follow up very soon. Generally speaking you will need to:
1. Obtain a token (just like you would when you embed .swf with connections)
2. Modify the File1 JS – very small mod to the way the session is passed
3. Add code to the dashboard file to make the REST calls to the platform to authenticate and use the serialized session