Sunday, March 17, 2013

Customizing Queues in CRM 2011

When users need access to multiple custom entities, the system queues feature provides a way to organize it.
Say a user needs access to leads and opportunities to support sales, case entity to support maintenance, and campaigns in support of new marketing efforts, this is an ideal situation to use the queue feature to group these entities together.

Creating Queues: Activities and Cases go into queues as a native dynamics feature. To get Leads, Opportunities, in a queue customize each entity by making sure that the Queues option is selected in the entity definition. You cannot reverse a queue relationship for an entity once established.

Add to Queue: The 'Add to Queue' button appears on the ribbon when this relationship is published. Simply select the entity and select all the individual records to 'add to queue'.

If only a couple entities are added to this queue, it can be easily managed. As more entities get added, this queue becomes long and unmanageable again.  In such a situation, the most effective way is to categorize them based on the entity type and create a personal view.

Creating Views for Queues: A personal view 'My Leads Today' for example can be created when you create a view and specify the related object 'Leads' in the details section.
Now these queues can be easily managed by creating such personal views by entity.
Screenshot details for the use of queues can be obtained here from Mark AuCoin's blog.

Queue Item Security: being a child entity of queue is owned by the user of the queue. So if you need to create, update or delete a queue item, you need 'Append To' privilege on the queue.

Personal Dashboard default page: Now the user can create a dashboard and Set it as his start page with all his personal queue views information on different entities he is working throughout that day, to get his day started.


Sunday, February 3, 2013

Customizing Site Map & Ribbon


The application navigation pane is controlled by the site map, which is the node in the customizations.xml of an unmanaged solution. It is affected by the user's security privileges that is, if a user does not have read access to a particular entity in the Site Map, then the navigation option will not be displayed to the user. 
SiteMap also has its own privilege settings which are very useful for specifying privilege requirements to view a page that is not related to a specific entity.

Editing the sitemap is quite a time consuming task - because you have to create solution, add component, export, update Xml and reimport the solution to update the SiteMap.
Any syntax errors will cause the SiteMap not import correctly and then if you don’t like the changes or you have done it wrong then you have to go through the export/change/import procedure all over again.

SiteMap Editor

SiteMap Editor for Microsoft Dynamics CRM 2011 helps developer and customizers to configure the Site Map in a graphical way.

This excellent tool makes editing the SiteMap is a lot easier, you can load the SiteMap into the editor, make the changes and then export them back.
You can get the SiteMap editor on codeplex here. Tanguy also has written other tools and you can take a look at them in his blog here.


There is also the Ribbon editor which can be used to edit the Ribbon using a graphical tool rather than hand editing XML files again. You can download the tool here


Ribbon Editor
Microsoft Dynamics CRM 2011 introduces the ribbon, similar to controls in the Microsoft Office. The ribbon acts as the primary location of controls that are used to perform actions in the application

Working with Ribbons
Create a solution for each entity you want to modify the ribbon. To add or hide buttons, the first step is to export the entity definition. Note that it is recommended to create a solution for each of the entities for which you want to modify the ribbon. That way, the size of the customization file will be smaller and easier to manage. Also, for the purpose of editing the ribbon, you do not have to include the required component in the solution that you are going to export.

Hiding a Ribbon element
To hide a ribbon element, follow the same steps above to export the ribbon. Then locate the Location and the ID of the control that you want to hide from the exported<entity>Ribbon.xml. Finally, specify the control that you want to hide, in the CustomActions area.

Ribbon Editor makes it easier for developers and customizers to edit Microsoft Dynamics CRM 2011 ribbons. With this tool, you have to understand how ribbon works even if you do not have to memorize all its capabilities to customize it.
This application is not a wizard, it is really an editor. There are no consistency checks until you try to import back the ribbon. The download link for this project is in Alpha version; there are also other tools available to edit ribbons online like this one, here among others that offers more operations than just strictly ribbon customization.