Tip #15: Auto refresh CRM dashboard

Some implementations manage fast-paced processes that bring fresh data to CRM every minute (for example, busy call center). Dashboards in these scenarios can be very useful, however they will age very quickly and potentially display obsolete information. While it is probably not an issue for the most end-users who drive CRM interface as part of their jobs, some users, like managers, may find that they need to refresh the display on a regular basis to get up-to-date information. If this is the case, add a small html resource to your dashboard that refreshes the parent dashboard every few minutes.

Step 1. Create and publish HTML resource with the following content

EDIT: <title /> just does not work, browsers (yes, plural) fail to interpret and execute script that follows. Replaced it with <title></title>. I have no clue what kind of HTML sorcery is this, really. g.d.

<html>
  <head>
    <title></title>
    <script type="text/javascript">

        // add visual timer just because we can
        var d = new Date();
        document.write(d.toLocaleTimeString());

        // refresh parent (dashboard) every 2 minutes
        // (timeout is in milliseconds) 
        setTimeout("parent.location.reload(true);", 120000);
    
    </script>
  </head>
  <body></body>
</html>

Step 2. Add this HTML resource to the dashboard you’d like to refresh
Step 3. Publish

Naturally, time displaying part of the code is optional, all that is required is setTimeout line. If you already have HTML web resource as part of the dashboard then you can simply add the <script> block in the page header.

This tip is from our guest contributor Lyfe Langmead

12 thoughts on “Tip #15: Auto refresh CRM dashboard

  1. Elizabeth says:

    Is it possible to create a desktop shortcut to a dashboard?

  2. Yes, it is possible though not very portable. You need to find ID of the dashboard you want to display and then create a shortcut with the following URL:

    https://your_organization_url/dashboards/dashboard.aspx?dashboardId=dashboard_guid

  3. Rocky says:

    Does this work with CRM2013? I Could not get the refresh to happen on the dashboard.

  4. Kolbe Stevenson says:

    As the other poster commented, does anyone know if this works in CRM 2013???? Or does anyone know of a solution. I have googled everywhere.

  5. Nick Plourde says:

    I just found a nicer a way to do that. Just add in the header of your html.

    https://community.dynamics.com/crm/f/117/t/158474

  6. pratyush says:

    how to make drop down to select users in dashboard to see accounts created accounts by the user on a particular date.for date also i want to put drop
    down.

    • pratyush says:

      or if i want to see account created by particular user on a particular date i will select from drop down user and date and dashboard will come according to record

      • Sounds like you need a custom parameterised report where you can edit the filter and/or parameters. If you need just a simple filtering dropdown, I think you’ll need to do some development using custom html web resource and some javascript.

  7. Sarfraz Khan says:

    If you want to do it without loading the page in UCI, using the following:

    setTimeout(“window.parent.document.getElementById(‘RefreshDashboard’).click();”, 30 * 1000);

  8. Monika says:

    Tried this code but unable to refresh my dashboard.
    I want to refresh my dashboard view in dynamics 365 CRM interactive hub dashboard.
    Please guide me what can I do.

Leave a Reply

Your email address will not be published. Required fields are marked *