Tuesday, May 31, 2011

CRM 2011 List Component does not work

I had a lot of trouble getting the list component to work on my Dev Machine, I eventually managed to fix the problem, so in the hope that this might help someone please try some of the following steps:
  • Ensure that CRM is running under a domain account with access to the sharepoint site where you plan to install the CRM List Component, see my other post
  • Try creating a new Sharepoint Web application
  • Install the List Component.WSP in the Sharepoint site. Go to site settings -> Galleries -> solutions. Activate the solution. This one was hard to solve. Try the following:
    • Ensure Sharepoint Foundation Sandboxed code service is running ( found user central admin -> System Settings -> Manage servies on the server.
    • In Manage Applications, select your application - select General Settings (ribbon), make sure that Browser file handling is set to permissive.
    • reset iis
    • if you get the error that user code service is too busy, restart the service and try again.
    • Finally and this one was the hardest, edit your hosts file located at system32\etc. add the following entry 127.0.0.1 crl.microsoft.com. I found the soluation here
That's all i can think of now. Good Luck!

Thursday, May 19, 2011

The user Id is invalid. at Microsoft.Crm.BusinessEntities

Make sure that the user which is running the application pool for the CRM application is added to the following groups
 PrivUserGroup
CRM_WPG
also make sure the account has access to sql server in sysadmin role

CRM 2011 Error Sandbox Host - Access Denied

Okay for those of you who have stumbled upon this issue when changing Dynamics CRM to run under a custom account then here is hte solution:
Your account should be a domain user account with the following permissions as recommended by Micrsoft:
  • Domain User membership.

  • That account must be granted the Logon as service permission in the Local Security Policy.

    • If you add the account as a member of local administrator then that should be sufficient.
  • Folder read and write permission on the \Trace, by default located under \Program Files\Microsoft  Dynamics CRM\Trace, and user account %AppData% folders on the local computer.

  • Read permission to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM subkey in the Windows Registry.

  • The service account may need an SPN for the URL used to access the Web site that is associated with it. To set the SPN for the Sandbox Processing Service account, run the following command at a command prompt on the computer where the service is running.
    SETSPN –a MSCRMSandboxService/<ComputerName> <service account>


  • If you want to change your Dynamics CRM web app to run under this account  then you will need to do some more stuff
  • The account should be in the sysadmin group of the SQL Server where your crm database is located.

  • The account should be in the SQLAccessAGroup

  • Add to CRM_WPG group

  • Add to PrivUserGroup (this is usually missed)


  • Hope this helps someone out there.



    Saturday, April 16, 2011

    What's this XRM?

    Before we go onto what XRM is lets first look at what a CRM is. Straight out of Wikipedia "Customer relationship management (CRM) is a widely-implemented strategy for managing a company’s interactions with customers, clients and sales prospects. It involves using technology to organize, automate, and synchronize business processes—principally sales activities, but also those for marketing, customer service, and technical support. The overall goals are to find, attract, and win new clients, nurture and retain those the company already has, entice former clients back into the fold, and reduce the costs of marketing and client service.Customer relationship management describes a company-wide business strategy including customer-interface departments as well as other departments"
    So now that we know what a CRM is, lets see what Dynamics CRM offers and why Microsoft is promoting the term XRM (Extended Relationship Management).
    Out of the box dynamics offers typical CRM functionality such as marketing, leads, sales, correspondence (emails, phone, fax) etc, but the difference is that you have the ability to customize all this. You can build your own custom entities which can capture anything for example you could create an entity called Application, add a few fields to it and there you go you'll have your own application entity which you can use to enter in details about a particular application (such as application for a job or a tender response), the possibilities are limitless. On top of this you have the ability to create relationships between these entities, so this would mean an create sometime really complex with many entities related to each other. Its just like creating a database within SQL Server of MySQL, but with one difference you straight away get your forms to enter data, you can create reports by a few clicks and you can even secure your entities in quite a number of ways, and to top this off you can create workflows that contain business rules for your entities and if you fancy yourself you can also create .net plugins to extend your xRM further. The XRM also exposes web services so other programs can hook into it, not to mention the Sharepoint and Outlook integration that comes out of the box. So there you are, that's what Microsoft mean by XRM.

    Wednesday, April 13, 2011

    CRM for a .net developer

    Okay so I've always been interested in buzz words as they come out, Sharepoint was once that, then came Dynamics and they jump back and forth with every new version of the software released. To be honest Microsoft did a pretty good job with Sharepoint 2010, specially the support they have provided within visual studio for it.k Anyway comming to the point of this post, I come from a pure developer background c# .net, asp.net etc etc...all the cool microsoft technology stack, but then one day I got a chance to have a look at Dynamics 2011 throught he 30 day online trial. I played around with it and jeez! it was good, really good. The stuff you could do by just pointing and clicking was awesome. Why build an asp.net app, a database and deploy it when you can just do that in 10 mins with dynamics.
    Hence my interest in dynamics, plus the integration with .net and sql server means that it is extendable and you can even write code to do a lot of cool things (i.e. if you want to).
    So this blog is going to be about the things i discover in dynamics as i learn it with the hope that it might benefit someone out there who might also be interested.