Book review – Microsoft Dynamics CRM 2011 Application Design

I was given a free copy of the Microsoft Dynamics CRM 2011 Application Design book by Mahender Pal who is one of the splendid CRM MVP’s that contribute a great deal to the CRM community.

CRM books are usually either user manuals or maybe an Administrator guide so I was pleasantly surprised to find this book is aimed more towards the CRM developers/ CRM Consultants and for people who want to do some customization of CRM.

The book started with a fairly standard chapter on CRM, a bit of a waste of time but perhaps it helped the writer get into the flow of things.

There are some really good parts in the book and one of the real plus points is it goes through problem and then shows the solution the author would create and explains his reasoning.  This is useful because it allows the reader to understand the choices and how it helps provide the solution needed.  I think I would have really found this book useful when I was starting out as a CRM developer.

The other major plus point about the book is it goes through examples of different types of CRM customizations and different parts of Microsoft Dynamics CRM.

  • Marketing
  • plugins
  • sub grids
  • Silverlight
  • Mobile Client
  • custom workflows

The book gives you a great insight how an MVP would tackle a project, which in my opinion is as valuable as the technical examples.

One of the downsides of the book (and books in general) is by the time the author has published the book Microsoft Dynamics CRM 2011 has already made distintive leaps forward which makes some of the solutions potentially a little bit dated in the world of Polaris and Orion.

Also for people who have done some CRM development then you might find pages of the book not particularly interesting as they parts of the CRM system you are already familiar with.

Overall the book is a very practical and insightful look into developer solutions in CRM 2011 and there will be something useful and interesting for everyone who has to work with CRM.  The book is well written, easy to read and follow.   I liked the idea of going through a problem and solution because this offers you an idea of how Mahender creates CRM solutions, it also offers you an example CRM solution and personally I find it easier to work with examples rather than just reading about CRM.

It doesn’t suffer from a lot of boring wasted pages, the first chapter is a bit dull but the rest of the book gets down to business

Overall I found it an interesting book, well laid out and easy to read.

Congratulations to Mahender who shows why he is a CRM MVP.

The book can be found on packt website, click this link 

or you can buy on

Amazon also has a few other reviews which will allow you to get a good idea what other people think of the book, which is always useful.


CRM 2011 – Entity with no notes or activities!

I had a strange request, a user was asking to add the Notes and Activities onto an entity.

I never knew you could remove the notes and activities from an entity, so I went over to the entity to find the notes and activities cupboard was indeed bare.

I wondered if someone had done something dodgy to remove the fields but no, I googled it but nothing.

I then went to the Entity in solution and found Notes and Activities are tick boxes, which I am guessing are ticked by default when you create a new entity.

So it seems the person who created this custom entity unticked all options.

One word of warning the Notes and Activities check-box’s have an ominous tombstone next to them, this means if you tick this and save it you can never untick it (but you could hide the values I guess)

CRM 2011 – plugins and isolation mode

I had a frustrating afternoon the other week, when I wrote a simple plugin but the plugin was throwing an error in the first line of code.

The plugin compiled without problem.

In the end I took out all the code except for some logging statements but it was still throwing an error.

This particular project we were using log4net, which is offers a good middle ground if there are a lot of developers all interested in getting logging information and debugging their various plugins etc.

I should also mention I was using the CRM developer visual studio add in.

I went over all the areas which might cause problems and got to the RegisterFile.crmregister.  This file contains the plugin details, information like what entity, when the plugin is triggered.

I then noticed the problem (I say me it was actually a fellow developer who told me to check it) but the isolation mode was defaulted to Sandbox as you can see from the line below

    <Solution Assembly=”test.Plugins.dll” Id=”55b7d62d-9111-e111-8eab-1cc1dee89a7f” IsolationMode=”Sandbox” SourceType=”Database”>

The reason why my plugin was crashing was being the Log4net was using a a third party dll which was held in the GAC.  Plugins which use the isolationMode of Sandbox are not allowed to call any dll’s otherwise they throw an error.

I changed the isolation mode to none and it worked.  Pity it took me 2 or 3 hours to work.


Extending CRM 2011 study information and partner source links

I am (still) studying for my the Extending CRM 2011.  The links below are for people who have access to partner source, reading the courses below and the CRM 2011 SDK should definitely prepare you for the exam.

The courses will lead you to a site where you can download the course in pdf files and then work through them.  These courses are usually the only thing I use when study for a CRM exam

Exam MB2-876:

Extending Microsoft Dynamics CRM 2011

Course Number 80295

This training offers detailed and interactive information on how to develop extensions for Microsoft Dynamics CRM 2011, with focus on extension methods documented in the Microsoft Dynamics CRM SDK. It provides details on the use of a number of Common Platform Operations, on how to query and execute these operations, as well as on developing a concise understanding of business process implementation and workflows. In addition, the training describes the use of Plug-ins, application event programming, client extensions and web resources. Finally, it includes a summary overview of the integration between Windows Azure and Microsoft Dynamics CRM 2011.

  • Describe how Microsoft Dynamics CRM 2011 is extended and the core extensibility features.
  • Use common methods to access system and custom entities, including the Security Model, business logic, xRM Framework and exceptions.
  • Execute queries in the Microsoft Dynamics CRM database including QueryAttribute, QueryByExpression, LINQ, FetchXM, filtered views and OData.
  • Explain how the Organization Service web service interacts with Microsoft Dynamics CRM metadata.
  • Develop custom workflow activities for use within Microsoft Dynamics CRM that run code when configured workflow or dialog rules are created.
  • Debug custom workflow activity code and use declarative workflows for On-premise deployments.
  • Use Plug-ins to extend the functionality of events for any entity in Microsoft Dynamics CRM 2011.
  • Understand the integration between Windows Azure with Microsoft Dynamics CRM 2011.
  • Use the built-in features of the Microsoft Dynamics CRM application and understand how the Dynamics CRM application behaves when forms are loaded or saved, field data changed, tabs change state, and when IFRAMES are loaded.
  • Add custom buttons, menu items and modifications to the navigation areas, including interaction with the Site Map and the Ribbon.
  • Add custom web content (for example HTML, Images, Silverlight, JavaScript) to CRM forms.
  • Use web resources to enable the storage of shared blocks of code or resources for reuse across the Microsoft Dynamics CRM web application.

Workflow and Dialog Processes in Microsoft Dynamics CRM 2011 Course Number 80444

A customer source license is required to access this material.

Reporting in Microsoft Dynamics CRM 2011 Course Number 80445

A customer source license is required to access this material.

CRM 2011 book released – Microsoft Dynamics CRM 2011 Application Design

I got this book today Microsoft Dynamics CRM 2011 Application Design which is written by Mahender Pal who is a CRM MVP, this books should also help me with revision for Extending CRM 2011 exam I am studying for.

I will write a full review of the book when I have finished reading it but I thought I would post a quick blog post about it. The book is quite an interesting idea because it goes through CRM development process and it’s often interesting to see how different CRM developers go through the process, particularly if you are just starting out.  The book also covers the different areas of CRM development

The brief overview is this
  • Create your first application quickly and with no fuss
  • Develop in days what it has taken others years
  • Provide the solution to your company’s problems
here is the chapter summary
Chapter 1Getting Started with Microsoft Dynamics CRM 2011 , will explain the different deployment options and clients for Microsoft CRM 2011. You will learn about the hardware and software requirements for Microsoft CRM 2011.

Chapter 2Customizing Microsoft Dynamics CRM 2011 , will help you to understand customization concepts, e-mail integration, and how to use the marketing module in Microsoft CRM 2011. It will help you to develop Project Training Enrolment System.

Chapter 3Using Process in Microsoft Dynamics CRM 2011 , shows how to use, process, and configure security in Microsoft CRM 2011. This chapter will help you to develop Employee Recruitment Management System.

Chapter 4Implementing Business Logic through Plugins , will help you to understand plugins in Microsoft CRM 2011. You will learn to use sub-grids, set products, and set a pricelist. It will help you to develop a hotel management application using Microsoft CRM 2011.

Chapter 5Using Web Resources in Microsoft CRM 2011 , will help you to understand, create, and use web resources. In this chapter, you will learn to create the Bing Maps application using Silverlight.

Chapter 6Using External Web Application in Microsoft CRM 2011 , covers application development using Microsoft CRM 2011 web services. You will learn to create and deploy custom editable grid view web applications in Microsoft CRM 2011.

Chapter 7Using Mobile Client in Microsoft CRM 2011 , covers the mobile client for Microsoft CRM 2011.

Chapter 8Issue Tracker using Microsoft CRM 2011 , will help you to learn and create the custom workflow assembly and auto number plugins in Microsoft CRM 2011. This chapter will help you to create the Issue Tracker application using Microsoft CRM 2011. 
if you want to see what it’s like before you buy then you can download a sample chapter (chapter 2)