After creating a pretty decent looking dashboard in Dynamics CRM, I wanted to show this within my USD on load. I’d have thought this would have been a pretty simple task but it instead required a little more work as I dug deep into it.
The USD part here is pretty simple, create a hosted control, set it to CRM page and you are pretty much done. The action call of what to load in the field becomes a little more problematic.
Sidebar: I think this would be much easier in the USD if there was a hosting control of type “CRM Dashboard” and it then provided you with a drop-down of all configured dashboards in the system, taking all the complexity out of it (and poor syntax).
I had read some previous posts on how to do this in previous versions of CRM that did at some point involve going to the database, but since my tenant is online, this wasn’t really an option. This post on accessing the information from the URL got me thinking.
Since I couldn’t figure out a way how to access the URL from the back-end or copy the link, I opened up Chrome’s developer tools and drilled down to the crmContentPanel div tag, I was able to see the definition of the dashboard being accessed, extract the URL and then place that into ActionCall (as linked above).
This isn’t foolproof. I did notice a few times I had to refresh my CRM page on that particular dashboard to get it to load the correct URL that it was currently showing (in the Chrome debugger). However, when I found the URL and copied it to and from other browsers I was then able to browse directly to my dashboard and with that be able to place it directly within the USD – so it does work.