+ Start a Discussion
liualiua 

Auto Refresh Salesforce.com Dashboard page for displaying on a wall mounted monitor

Recently come across this request from management, that they want put up the dashboard on a wall mounted monitor.

 

I have went through lots of posts regarding this topic, however the approach of using javascript cross site scripting on a visualforce page that never worked for me

until Google Developer Tools (F12) gave me something very interesting.

 

After I click Refresh button, in the Developer Tools window, under Network tab, a page file named dashboardRefresh.apexp is shown immediately.

If you click on it, under Header tab in the righthand side window, you see Request URL:https://[Domain].salesforce.com/dash/dashboardRefresh.apexp 

Inside "FormData" section in the lower paragraph, you can see id:[DashboardID]

 

If you put them together like this: https://[Domain].salesforce.com/[DashboardID] and paste into your browser, you get a page with only a line of string on it,

which a says something like below: 

{"lastRefreshRelativeTime":"Today at 12:13 PM","lastRefreshTime":"As of 19/08/2013 12:13 PM","needsUpdate":true}

 

Now if you reopen your dashboard or if you haven't close it down, just by refreshing the dashboard page, what you will see is the time showing next to the Refresh button is updated.

 

So this actually makes what the business wanted is possible and to be done in a very easy way.

Since it is only for using on a wall mounted monitor, it only requires a full-screen page pretty much all the time.

You need to two taps, with the http://[Domain].salesforce.com/[DashboardID] running kinda behind the scene when the dashboard page is on fullscreen mode.

And install a page auto refresh addon for your browser and configurate the time interval for both tabs.

 

For example

 

 

Chrome

 

Auto Refresh Plus

 

 

 

FireFox

 

Auto Refresh

 

 

 

Safari

 

Safari Tab Reloader

 

 

Note: I am not quite sure about the the possibility of having a time lag, it might be better to configruate to have the dashboard page refreshed a little bit late than the "dashboardRefresh.apexp" page.

 

 

In summary, it gives me what I wanted, and no code needed, works on most broswer as long as you can find addon does the refresh for you and

also everyone who has a credential can do it, and this is case, by having tabs openning doesn't seems affect user experience.

 

 

 

Peter_sfdcPeter_sfdc
This may have been a good work around in August 2013, but for anyone thinking of doing this today with Visualforce, I would suggest looking at the new tag that has been introduced for rendering standard salesforce charts on a Visualforce page. 

analytics:reportChart allows you to render a standard salesforce chart (configured by an administrator) on a visualforce page. 

This could be combined quite easily with an action poller to have a self-updating chart as a dashboard. 
Chirag MehtaChirag Mehta
You many want to try out this chrome extension - https://chrome.google.com/webstore/detail/auto-refresh-salesforce-d/mogildlgjglckdcfclpbcbidpdkjgeeb (https://chrome.google.com/webstore/detail/auto-refresh-salesforce-d/mogildlgjglckdcfclpbcbidpdkjgeeb" target="_blank)

This extension does help to AUTO REFRESH Dashboard every few seconds.

PS: This might raise performance concerns from salesforce folks as this is literally hitting salesforce every few (10) seconds, but as many customers had asked for same so we had to build one. Suggestions are always welcome to make it better and robust!