Wednesday, September 29, 2010

Developing for CRM 2011 and SharePoint 2010 Foundation

If you are a MS CRM person looking at SharePoint as something new here are a few things that may be of interest.

The SharePoint 2010 Foundation is free and will work with the MS CRM list component but it is limited to database sizes of 4Gb. This makes it much easier to leverage some of the power of SharePoint for your CRM customers. Your customers by default already have licensing for Windows Server and SQL Server in order to run MS CRM and SharePoint Foundation can share that same server.

In addition the new Business Connectivity Services (BCS) are also supported by SharePoint Foundation: http://msdn.microsoft.com/en-us/library/ee557646.aspx

BCS will allow you to expose data from other databases to show up in SharePoint, but not take space in the SharePoint database, this of course includes CRM data. There is obviously a performance penalty depending on the interface to access this external data, but it also allows maintaining legacy databases while having access to that data in SharePoint without passing the 4Gb database limit in the SharePoint database.

If you are looking at SharePoint integration using their web services, you can see from the following link which services are supported by both SharePoint Foundation and by SharePoint Server and just by SharePoint Server. http://msdn.microsoft.com/en-us/library/ee705814.aspx

As an obvious guideline it would make sense to write your base code to support SharePoint Foundation to let customers try out SharePoint functionality, and to have any features that require SharePoint Server features be switchable at a later time if your customer upgrades.

SharePoint Server has a number of useful features shown in this version comparison that you may or may not need: http://sharepoint.microsoft.com/en-us/buy/Pages/Editions-Comparison.aspx

As a practical note, SP 2010 is built on .NET 3.5 and CRM 2011 is built on .NET 4.0, so while most of you will not have a lot of .NET 4.0 legacy code at this point, is will be important to make sure your libraries with logic that will be shared between SP and CRM components are all kept at .NET 3.5.

3 comments:

Jukka Niiranen said...

Thanks for the post, I hadn't realised before that also BCS is now included in the free Foundation version of SharePoint. I guess this should enable developing a "global search" functionality for CRM data, since there have been no new features added on this front for Dynamics CRM 2011.

In a way I understand why Microsoft doesn't want to replicate the free text search functionality on CRM side, but I wish they'll at least provide a good Accelerator package to lower the barrier for customers to implement this with the help of SharePoint.

Mark Kovalcson said...

MS CRM is highly relational, whereas SharePoint is more flat by design, making it a better match for searches. They each have opposite skill sets with some overlap. The key will be using the right tool for each piece of functionality in a total solution.

I think it is healthier to encourage MS to expand each product with new functionality that makes sense for each and for us to use those more powerful tools rather than asking the two products to have more overlap.

Expert SharePoint Developers Blog said...

I am very interested in your post and It is more useful for me to develop the SharePoint Apps. Thanks for share this valuable post.