Sunday, September 20, 2015

How to fix: Access denied error on Dynamics CRM

When you receive an access denied error on the CRM screen and you want to find out what really failed?

Download the error log file and fetch the following details:

OwnerID, CallingUserID, ObjectTypeCode and ObjectID.

Get on to your SQL Server and analyse the error details using the below queries.

This will give you an idea why did it fail.

SELECT fullname FROM SystemUser Where SystemUserId = 'ownerid'

SELECT fullname FROM SystemUser Where SystemUserId = 'callinguserid'

SELECT ObjectTypeCode,* FROM ENTITYVIEW where ObjectTypeCode = ''

SELECT entityID, * FROM entity WHERE entityId = 'objectid'

Monday, July 13, 2015

How to resolve "The account specified to run the Microsoft Dynamics CRM application does not have Performance Counter permissions"


"The account specified to run the Microsoft Dynamics CRM Asynchronous service does not have Performance Counter permissions"

You might have come across these errors during the installation of Dynamics CRM on the System Checks screen as shown below.

  • Open Computer Management.
  • Expand Local Users and Groups
  • Select Groups
  • Double click Performance Log Users and add those users into this group
  • Gp back to Dynamics CRM installation. Click Back on the System Checks screen and then Next
You should be good to go!

PS: I was installing CRM 2013 on Windows Server 2012 R2

Thursday, July 9, 2015

Can a user licensed with a CAL access multiple instances of Dynamics CRM?

The answer is yes!

As per Microsoft Dynamics CRM 2015 Licensing Guide, "A user or device licensed with a CAL may access any number of instances of Microsoft Dynamics CRM 2015 or earlier versions running on the organization’s servers."

Integration of multiple Dynamics GP Companies to a single Microsoft Dynamics CRM Organization

We recently had to ponder upon this scenario to integrate multiple GP companies to single instance of Dynamics CRM organization. With some looking around I found a blood which gives you confidence that it can be done however, the implementer needs to be considerate.

Thehetz very nicely explains the 2 scenarios and their pros and cons.

I would ask you to have a look at the blog post by clicking here.

I'm still trying to get hands on an official Microsoft document that explains how this could be achieved, or will have to give it a shot and test it myself.

I'll keep you posted if and when I have something to share.

Monday, June 15, 2015

What's compatible with Dynamics CRM 2013 and what's not?

Microsoft has come up with a great KB article with the most recent compatibility tests performed and supported releases. It includes the compatibility results with the following products:

  • Windows Server
  • SQL Server
  • Office
  • Office for Mac
  • Internet Explorer
  • Internet Information Services (IIS)
  • Exchange Server
  • CRM Outlook Client
  • Apple OS X Yosemite

Thursday, March 19, 2015

Memory gates checking failed and how to fix it in Dynamics CRM 2013

Pat for the 100th post :) Thank you all for liking what I do here and supporting indefinitely. Back to business....... :)

Pushing the limits comes with its own limitations. You can only go so far! This is the latest in the list of challenges after a long smooth running CRM at our client's.

I was reported that CRM wasn't saving any data as the Account and Opportunity forms data wasn't being saved. My first move was to check the Event viewer and I found this.

Exception: System.ServiceModel.ServiceActivationException: The service '//XRMServices/2011/Organization.svc' cannot be activated due to an exception during compilation.  The exception message is: Memory gates checking failed because the free memory (219115520 bytes) is less than 5% of total memory.  As a result, the service will not be available for incoming requests.  To resolve this, either reduce the load on the machine or adjust the value of minFreeMemoryPercentageToActivateService on the serviceHostingEnvironment config element.. ---> System.InsufficientMemoryException: Memory gates checking failed because the free memory (219115520 bytes) is less than 5% of total memory.
Since the SQL Server and CRM Server are running on the same server, this wasn't a surprise.

This pointed out something. I immediately looked up the Performance Monitor on the Task Manager and sure enough, the RAM was almost fully utilized (screenshot below).


To get around this issue, I restarted the SQL Server Services and CRM Async Services. Since no users were logged in at this time, the usage went down to 3 GB. This I believe is a temporary fix and it would return when we have users log in again.

A permanent fix would be to separate the SQL Server and CRM Server and feed them with sufficient memory.

Another resolution I have been reading online is to adjust the value of minFreeMemoryPercentageToActivateService on the serviceHostingEnvironment config element.

This perhaps is the easiest way. The snippet to add into your web.config file is:
   <serviceHostingEnvironment minFreeMemoryPercentageToActivateService="0" />  
I am wondering how would this impact otherwise.

Monday, January 12, 2015

How to fix: Insufficient Permissions issue in CRM 2013

Insufficient Permissions

You do not have permission to access this record. Contact your Microsoft Dynamics CRM Administrator.

Fortunately, you are reading a blog and you do have permissions to read on :)

Turn on CRM tracing and you will be able to point out the specific error.

Well in my scenario, we had upgraded from CRM 2011 to Dynamics CRM 2013 and when my users tried to access Account or Contact records, they received this error. Even when they had read permissions on them.

I initially thought may be it is something to do with the Append and Append To privileges. So I pumped them up but to no gain.

You need to provide the following permission to Opportunity Relationship as show in the image below:

Organization level access rights on

  • Read
  • Append and
  • Append To

User level access rights on

  • Create
  • Write and
  • Delete

Provide Organization level Read access to Process Configuration which you can find on the Customization Tab of Security Role.

Turns out CRM 2013 requires this setting explicity which was available in CRM 2011 previously. For more information read Security Role UI Mapping