CRM 2011 – Why CRM 2011 is great for Developers

I have read lots of posts about the new features in CRM 2011 and there are lots and hats off to Microsoft for creating a great product.

I was thinking this week about why CRM 2011 is great for developers and the improvements over CRM 4.


This is a fantastic enhancement.  Firstly you can see exactly what changes you have made because they are included in the solution.  The most important feature is you can easily import and export all your changes.  The addition of being able to provide managed solutions and basically providing read only solutions is great.

Solution Co dependance

This probably should be in the solutions section but I wanted to make it seperate because I think it’s so important.  The ability to include numerous solutions means it’s a lot more modular and allows you to really split the code up.  An example of this is I created an autonumber solutions which I can now bring into many CRM organisations without affecting the other solutions.

Javascript new and improved

It took me a little bit of time to get used to but once you do you will find the new Javascript a great improvement and more in line with Javascript coding standards.  The other improvement is due to the solutions you now import the javascript files to web resources and this means you can use the same Javascript with multiple entities.  Which means we can have global Javascript files.

Bids reporting

Yes you can create reports in SSRS creating Datasources from advanced find xml.  It does involve a bit of saving xml files, copy and pasting in SSRS but it is still easier for those developers how prefer to stay away from SQL.


You can now do LINQ queries in CRM 2011 which is better than queryexpressions and probably more in line with .NET development outside of CRM.

Early Bound classes

I know this was included in later versions of CRM 4, I like this feature.  It makes reading the code a lot easier when you can see what class is being used and it stops the strong typing stops any runtime errors because the code is strong typed.


I haven’t used this myself but I have seen some very nice looking plugins using Silverlight.  The OData query designer is written in Silverlight and it looks good.


This is a fantastic tool for developers because you can capture inputs from the user.  It basically offers you a super workflow/process.  There are a few things which need to be improved like the fact you can’t store dates or bits but it’s a great enhancement and one which I don’t think people fully appreciate the power of it yet.

CRM Cloud plugins

This isn’t new but the fact you can have plugins is great for developers because it means people can use CRM Online and use the functionality of plugins.  This means more work for developers in my opinion because more people will sign up for CRM and the cheaper online version (no server costs etc) but they will need some modifications with Javascript and plugins

CRM 2011 – How to find how many licenses you are using

Whilst my previous blog post wondered about how Microsoft polices the number of licences being used, it then got me thinking where do you find the number of licences being used.

When I was doing this in CRM 4, I was using the Deployment manager, so I thought I would check this is still the same in CRM 2011.

One quick way to work out how many licences are being used is to go to CRM 2011 and go to settings/users.

This will show you a basic count of all the active users you have on the system.  It will show read only and full cals but for a quick guide this is actually quite a useful way.

You can also find this information using the deployment manager, you will have to be logged onto the CRM server and have permissions of course.  It has slightly changed from CRM 4 and it took me a while to work out where the information was.

You need to open CRM Deployment manager and then click on Microsoft Deployment Manager and not any of the other options below.

You then press the properties button on the right or go to action/properties.  This will bring up the screen below and then you choose the licenses tab and you can see how many licenses are being used

CRM 2011 – Make sure you are keeping track of licenses being used

We had an interesting debate at work this week about CRM licences being used and how do you keep track of them in CRM 4.  I’m not sure if it’s different in CRM 2011 but it’s probably the same.

If a company has a professional licence in CRM then it shows the number of licences avalable in CRM is unlimited.  It shows this even if the user has purchased a certain amount of licences.

When I did my CRM exam there is a question on licences and how companies should manage them.  The answer to this question was for the user to deactivate some licences whilst enabling others (inactive licences don’t use cals).

This lead me to believe that CRM would automatically disable users once a company had used up more than the amount of licences they had purchased.  This proved not to be the case because the licences were always unlimited.

So I googled the problem and found this forum discussion.

The forum post basically says you can’t stop the user adding more licences except by using security roles to not allow them to add new licences.

These two answers I found the most interesting

You don’t need to install anything for a license. You simply report to your SPLA reseller on how many user licenses were used in the previous month. I’d suggest contacting your reseller if you are still unsure.

You can stop your customer from adding users via security roles. If they do require more users though, you should charge them accordingly for the extra users and report the usage to your SPLA reseller.

So it seems that the methods to control and monitor licence usage at clients site is to stop them adding new users via security roles and check up on them and inform your SPLA reseller.  The forum sounds a bit big brother with it’s wording saying you should REPORT them.

It strikes me that this is a very trusting method used by Microsoft and I wonder how many installations are using more licences than they have paid for but no one has reported the extra licences being used.

I wonder if there is a technical reason why Microsoft doesn’t create licences with a finite number of users allowed.  Maybe it would take a lot more resources to deal with people buying more licences but then this would probably pay for itself.

So make sure you are on top of the licences being used by your users and take away the power to add more.