Unified Service Desk for Microsoft Dynamics CRM gives the ability to split panels, useful if you want to create a preview style interface. Maybe with a list of activities on the left and the activity details showing on the right. In this post I will explore this concept and demonstrate how to achieve this effect.
I am actually currently sat in a dark corner of corner of a pub using just my tablet connected to my CRM server at home! Hopefully this shows how easy it is to work from any location these days. Although I only mention this in the vain hope that you ignore any small typing mistakes I might make in my little corner! J
The steps involved are;
- Create some hosted controls.
- Create an action. (and trigger it)
- Create a window navigation rule.
Step One – Create some hosted controls.
First off you’ll need to create a hosted control that acts as the container for your split panel layout. Mine is shown below. Notice that the component type is “Panel Layout” and the panel type is “Vertical Split”. Then the application is global and the display type is MainPanel. Also the “Is dynamic” option must be yes and you will probably want the “user can close” option to also be yes.
Now you will need to create two more hosted controls, one for the left panel and one for the right. These will be “standard” CRM Page controls, except the display group will be “MainPanel Split/LeftPanel” and “Main Panel Split/RightPanel”. This is essentially the name of the hosted control you created in step one followed by “LeftPanel” or “RightPanel”. The rest of the options for these controls will be as you’d expect for a typical CRM page shown in a USD tab. (Sorry, I am assuming you’ve got a basic grasp of doing USD configurations!)
Step Two – Create an action
You will need an action to show activities in the hosted control (tab) you created for the left panel. This is a pretty straight forward thing to achieve. Mine is below. Notice that the hosted control is “MainPanel Split – Left”, this is one of the actions you created in step one. I’ve put mine in the left panel but you could obviously position yours on the right if you’d prefer.
I’ve set the action to “Find” and the data to activities. This will effectively load the default activities view in the left panel. Obviously I am just showing this as an example, you could have any action here maybe displaying a list of cases or contacts or anything!
NOTE: I am assuming that you will trigger this action within your supplication. Maybe by adding it to the DeskTopReady event of your global container. Or maybe by a user clicking on a toolbar button.
Step Three – Create a Window Navigation Rule
Finally you’ll need a window navigation rule to trigger the load of the activity detail in the right panel, whenever someone selects an activity from your left panel. The first thing to notice is that I have set the “From” field to “MainPanel Split – Left”. This is one of the hosted controls you created in step one.
In my simple example I want anything selected in the left panel to show in the right panel. In a final production version of the code I might want to create multiple rules to handle different entities in specific ways or maybe to prevent some entities from loading etc. But for now let’s keep things simple.
My route type is pop-up and the action is route window, with my destination being a tab. Both the target tab and show tab have been set to the same thing, the hosted control you created in step one for the right panel.
I also opted to hide the navigation bar but left the command bar in pace. You might want to play around with some different combinations!
You are now ready to test your changes. Below you can see that my main panel has been split into two halfs, with a list of activities on the left and as I select activities they show in the panel on the right. For me to finish this off I will probably want to “play” with the display name on the MainPanel Split hosted control, maybe calling it “Activities” or something. I will also probably experiment with a verticle and horizonal splilt. (Something that is easily changed by changing the panel type on the “MainPanel Split” hosted control.)
But as I’m still in the corner of the pub these refinements can wait for the morning. Time for a beer!!!