In my series of posts about learning Unified Service Desk (USD), I thought it might be appropriate to talk about window navigation rules ….
Window navigation rules are used to govern how tabs will load, for example, when you click on a contact record USD needs to know if a new session should be started or if the contact details should be loaded in a fresh tab.
There are a multitude of settings possible with window navigation rules, including some “special” ones connected with CTI integration. I don’t plan to cover CTI here that will be the subject of a future post.
Note:
In this post I am purely focusing on the logic for window navigation rules, meaning I am assuming you understand the concepts behind the hosted controls and actions that might be needed to trigger the rules.
Rather than simply quoting from the Microsoft Technical documentation, I will explain some examples of combinations I commonly use. I’m not going to cover every combination possible just give you a few examples that I think might be useful. But if you’d like to refer to the full documentation the link is; https://msdn.microsoft.com/en-us/library/dn864949.aspx
Options I will cover include;
- Creating a new session.
- Loading a new tab in a session.
- Triggering a second tab to load from a search.
Window Navigation Rule to start a new session
Say you have a list of accounts (or anything) and you wish to load a new session when an account is selected. You’ll need a window navigation rule to instruct the USD to load a session containing the account which has just been clicked.
An example navigation rule to start a new session is shown below. Things to note include;
- “From”, the hosted control in my example is search. As I have a tab called search which includes a view of accounts.
- “Entity”, obviously in this example the entity I have selected is account. This concept is useful, as in my search tab might display accounts, contacts or leads. (or any entity) Meaning this particular rule is only triggered when an account is selected from my search tab.
- “Route Type”, this time it is popup. As the account would popup from the search results.
- “Destination”, as is typical my destination is a tab.
- “Action”, Create session as I want to create a new session. (Don’t forget you’ll need to use “Session Lines” to define the session name and optionally an session overview.
- “Target and show Tabs”, both are set to the Account hosted control.
- “Hide Navigation Bar”, it is quite common that I set the hide navigation bar to yes.
Window Navigation Rule to load a tab within a session
A common use of navigation rules is to load a tab from within a session. Say I have an account session open and click on a contact record within the account tab. This might be the primary contact or one in a sub grid of associated contacts. Having clicked by default this contact would be loaded in the current tab. A much better approach would be to load a new tab within the current session. Below is an example of how to achieve this.
Some things to note include;
- “From”, this time my “from” tab is account.
- “Entity”, this time contact. You can quickly see that I might have several entities on the account tab that could be selected. You will need to define a rule for each.
- “Route Type”, “In place”, meaning the loading of a CRM form.
- “Action”, route window as I want to load a new tab. (Rather than a session.)
- “Destination”, tab as I want to load a tab.
- “Target and show Tabs”, both are set to the Contact hosted control.
- “Hide Navigation Bar”, it is quite common that I set the hide navigation bar to yes.
Window Navigation Rule to load a tab from a search
This one might be a little more complicated!
In this example, I show how to load a tab as a result of doing a search. Consider this ….. Whenever an account is loaded I trigger a search to pull details about the primary contact. A window navigation rule can be triggered when that search loads the data parameters for the contact. Then we can load a second tab for the primary contact.
Fields to notice include;
- “From Search”, instead of triggering the rule from a tab this time it is triggered from the search.
- “Entity”, this is the entity that will be returned in the search results.
- “Route Type”, OnLoad as the rule is triggered when the contact data is loaded into the data parameters.
- “Destination”, this is tab as I intend to load a tab.
- “Action”, route window as I want to load the tab within the current session.
- “Field”, this field isn’t mentioned in the Microsoft documentation. Fun! J But I found that I needed to enter the ID of the entity returned. I worked out the exact field name by looking in the debugger at the parameters returned by my search.
- “Target Tab”, in this case the tab (hosted control) I am using is “Contact”.
- “Show Tab”, normally I would set the show tab to be the same as the target tab! But here I want the account tab to keep focus and just load the primary contact in a separate tab.
Leave a comment