48 Saturday, May 28, 2016 |
Msxrmtools Publisher
Publisher at Msxrmtools

Activity Feeds Introduction (1 of 5): Dynamics CRM 2011

This snack explains how activity feeds allows users to stay up to date on the CRM records that are most important to them. After you complete this snack you will be able to:

• Install activity feeds

• Configure entities for activity feeds

• Disable activity feeds rules

• Auto post activity feeds

Field Level Security in Microsoft Dynamics CRM 2015

Email Router Demystified in MS CRM Part -1

Troubleshooting Email Router Configuration Wizard issues

The first part of the Email Router to ensure you don’t run into any issues is around the Email Router Configuration Manager.  If you run into errors within the Email Router Configuration Manager, you will face these same errors when the Email Router is trying to process the email requests.  We need to ensure that the configuration is error free.

Load Data

The first step of ensuring the Email Router is configured properly is to click on Load Data.  When clicking on Load Data, it is going out to the Organization service and retrieving a list of CRM users that have their User Profile configured for E-mail Router for the Incoming/Outgoing E-mail Access Configuration.  If you run into an issue when clicking on Load Data, this indicates an issue accessing the CRM services, either the Discovery or Organization service endpoints.  To troubleshoot this issue, ensure you take the URL provided within the Deployment Profile and append it with the following: URL/XrmServices/2011/Discovery.svc?wsd

This should show an XML response like the following:

If you get any error accessing this URL, then you will need to troubleshoot those errors before the Load Data will ever work.  Since there are a vast number of problems that can come up when accessing this URL, we will not cover any of these. However, knowing that Load Data is directly related to the Deployment Profile should help you

Service Account

If you are able to access the Organization and Discovery services within Internet Explorer and not able to within Load Data, it could be an issue with the account running the Email Router service.  When clicking on Load Data, it is running under the context of the Email Router service account.  This account can be found within Services (Start > Administrative Tools > Services) with the name of Microsoft CRM Email Router.  By default, the account running the Email Router service is Local System.

NOTE: The service account needs to be a Microsoft Dynamics CRM user or it needs to be added to the PrivUserGroup for CRM OnPremise customers.

If you experience an error where the Email Router Configuration Manager is not able to Load Data, try changing the service account running the Microsoft CRM Email Router service to a domain user.  I have seen many situations where the Email Router is not able to connect to CRM due to proxy configuration.  Within these environments, the internet proxy configuration is pushed out to users and not applied to servers/workstations. 

If you still experience issues while clicking on Load Data after changing the service account to a domain user, then look at using a web debugger, called Fiddler, to try and give more information about what actual HTTP errors we are getting.  Again, when clicking on Load Data, we are trying to access a couple of HTTP endpoints from CRM.  In order for Fiddler to log the HTTP requests coming from the Load Data request, the Microsoft CRM Email Router service account must be the logged in user.  Fiddler will only capture HTTP requests of the user that opened the application.  We will cover using Fiddler in a later section but let’s view a situation where Fiddler can be used to help identify an issue with Load Data.



In this scenario, I can see that when clicking on Load Data I am getting a very generic response in my OnPremise environment with Claims and IFD enabled.  When using the Auth endpoint for the Deployment Profile, the error I get from Load Data shows:

However, using Fiddler, I can get a better understanding of where the failure is occurring:

The error shows that it’s coming from ADFS.  This could help me with troubleshooting as I now know to look at the ADFS logs and see what exception is being raised there.

Test Access

After we have successfully loaded the users from the Load Data button, the next step to ensure the Email Router will work properly is to click on a user and then click on Test Access.  So when we click on Test Access, what exactly is the Email Router doing?  There is a lot of speculation of what this is exactly doing so let’s demystify and document what it actually does.


  1. The first request being made is out to Exchange using EWS to do a GetFolder request for the default folder providing the user’s Mailbox email address and authenticating as the account within the Incoming Profile.  The response that comes back should be that of the Inbox.
  2. Now, as the account within the Deployment Profile, it logs into CRM and does a series of Organization service requests.  The first one is a WhoAmIRequest.  The WhoAmI response contains the user’s UserId, BusinessUnitId, and OrganizationId
  3. The next CRM request being made is CheckRouterCompatibility.  This is to verify that we are not using an older or newer version of the Email Router that is not supported by that version of Microsoft Dynamics CRM.
  4. Lastly, we do a CheckIncomingEmailRequest and checking if the result comes back with a ReasonCode of ShouldDeliver



  1. The first thing that happens is a WhoAmIRequest being made to the CRM server as the account specified in the Deployment Profile.  The WhoAmI response contains the user’s UserId, BusinessUnitId, and OrganizationId
  2. The next request being made is CheckRouterCompatibility.  This is to verify that we are not using an older or newer version of the Email Router that is not supported by that version of Microsoft Dynamics CRM.
  3. Lastly, it does one of the following:
    1. SMTP: The Email Router is doing a HELO request.  The router is looking for a ReplyCode of 220 within the response that comes back from the server.  We can emulate a similar request by using a Telnet as discussed HERE:

    2. EWS: The router is doing a GetFolder EWS request for the Default folder.  The response that comes back should be that of the Inbox.

As long as no error is presented during these requests, then you should see Succeeded responses within the Email Router Configuration Wizard.


The next part of this post is to cover Troubleshooting Outgoing email issues.

Microsoft Dynamics CRM Sales Process Management

Watch this 7 minute video demonstration to learn how Microsoft Dynamics CRM can streamline, drive and control the complete sales cycle of your business. Contact one of our experts for more information. W: www.pa.com.au E: microsoftinfo@pa.com.au T: 1800 126 499

Opportunity : Related Record To Opportunity

  • Products: View existing products that are part of the Opportunity. For example, the customer might be deciding to purchase a Mountain Bike as part of this Opportunity. This would be seen and managed within this section.
  • Activities: View existing activities or create a new activity for the Opportunity record.
  • Documents: Add a document location associated with the Opportunity record by specifying a URL of an existing SharePoint folder.
  • Connections: Add to the record an individual who has a certain role or relationship to the record.
  • Audit History: View the edit history of the Opportunity record. This also captures the date and time of the modification, along with the old and new values of the specified fields.

Product Catalog : Product Kit

  • Products can also be bundled together to form a kit.
  • A kit helps to simplify the sales and ordering process.
    • For example, if an organization sells digital cameras and batteries, these two products can be bundled together to form a kit.
  • To form a kit, first convert the product to a kit product, and then add each product to the kit.

Create Record In Dynamics CRM Using Early Bound

Following example demonstrates how to create record in dynamics crm using Early Bound

Connection String

<add name="connection" connectionString="Url=https://org.crm.dynamics.com; Username=user@org.onmicrosoft.com; Password=Password;"/>


using Microsoft.Xrm.Client.Services;
using Microsoft.Xrm.Sdk;
using System;

namespace CrmSampleCodes
class Program
static void Main(string[] args)
IOrganizationService _service = new OrganizationService("connection");

// Instantiate an account object.
Account account = new Account { Name = "Fourth Coffee" };

// Create an account record named Fourth Coffee.
Guid _accountId = _service.Create(account);
Console.Write("{0} {1} created, ", account.LogicalName, account.Name);



Microsoft Dynamics CRM Roadmap.

Learn more about microsoft dynamics crm roadmap.


Dynamics CRM 2011 - What's New Session 1: Workflows

CRM 2011 Workflows -- or "Processes" as they're now called -- are even better than they were in 4.0. One of the biggest improvements is the addition of a "Dialog" category of process, which allows you to create a user experience -- prompts and responses -- as part of an automated process. That's what I focused on in this session. More to come in later sessions!

Chart Visualization Multiple Category Charts (4 of 5): Dynamics CRM 2011

This Snack shows how to use chart designer to quickly and efficiently create graphs and charts to monitor business metrics in Microsoft Dynamics CRM 2011 At Training Material Completion After you complete this snack you will be able to:

• Add and delete entities

• Refresh the metadata

• Manage profiles

• Import and export profiles

Round-Robin Lead Assignment using CRM 2011 Dialog Processes