Hopefully anyone who reads my blog will know I love answering questions about Unified Service Desk (USD) for Microsoft Dynamics CRM. (At least when I know the answers!)
One recent question was how to correctly display windows when adding attachments to emails.
The problem was that having opened an email in a hosted control (tab). Clicking “+” on the attachments sub grid would open the dialog to add an attachment to an email. In the same way as would happen if “just” running CRM in the browser. But when this is done in USD the dialog to add the attachment replaces the currently viewed email and from that point on the navigation is “broken”. You can see below that I have loaded an email in a contact session. And saved the email.
Clicking “+” on attachments opens the attachment in the same tab as my email. Overwriting the email being viewed. Not ideal.
Now in my application I happen to have a back button in my navigation toolbar. So I could use that to get back to the email. But you might not have (or want) this type of navigation. Also it isn’t intuitive for an end user to navigate like this.
The answer (as the person asking the question had correctly realised) would be the addition of a window navigation rule to open the attachment dialog in a separate tab / pop-up. But the navigation rule wasn’t quite as straight forward as you might expect. Here is the rule I created ……
|Name||Attachment from Email
You can call it anything!
“1” worked for me but the required order will depend on how your window navigation rules are sequenced. Remember that navigation rules are evaluated in order!
The hosted control containing my email is called “Email”!
|Entity||In this case blank.|
This is the relative url for the dialog for email attachments. The actual full url will also include the server / organisation of your CRM server, plus the GUID of the associated email. (But luckily you don’t need to add those variables to your navigation rule.)
As the dialog is going to popup!
I had a couple of options here! One we to create a hosted control then use a route window action. With the target tab and destination tab set to that hosted control.
But I found a simpler approach was to use a “Show Outside” action. Leaving the target and show tab fields blank. Meaning I didn’t need an additional hosted control.
You need to understand what “Show Outside” implies! Show outside loads the tab outside of USD, which means it will exactly emulate the normal IE behaviour. Which was exactly what I wanted. But it will also mean that the dialog opened is outside of any further USD control. This was fine in my application but you may need to be mindful of this in yours!
If I repeat my initial test again, you will see that the attachments dialog now opens in a style which is much more intuitive to the user.
Hopefully this answer has been useful. J