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

Microsoft Dynamics CRM 2011 - Getting online through product and programs

Lead Management: Email To Lead Conversion

To convert an email to a lead, follow these steps:

  • On the Navigation Bar, click Create and then click E-mail.
  • On the Command Bar, click the ellipsis button (…), select Convert To, and then click To Lead.
  • In the Convert-to-Lead dialog, specify the details of the new lead as follows:
    • First Name
    • Last Name
    • Company
    • E-mail Address
    • Open the new Lead option
    • Close the e-mail form option
    • Click OK
    • The new lead record is created

Email Router Demystified in MS CRM Part -3

Troubleshooting Incoming email issues

Now let’s shift our focus on troubleshooting to incoming email issues.  This is where the Email Router is going to connect to a mailbox and process the mail.  There are a few things to take into consideration when we talk about troubleshooting incoming emails.  The first one is to figure out if the user configuration is set to use Email Router or Forward Mailbox.  Each of these have different troubleshooting steps.

Email Router

Troubleshooting the Incoming Email option for Email Router is relatively simple.  It’s very similar to the Outgoing troubleshooting steps.  For this route, the user’s “Incoming Email” option must be set to Email Router:

Since this user is configured to use the Email Router for “Incoming Email” lets refer to the following mail flow diagram referenced from the earlier blog post (Email Router Demystified – Explanation) in the section labeled “E-mail Router – Incoming E-mails”:

Each step constitutes a potential problem so let’s break down each step below:

  1. Someone must send an email to the user.  Now, it’s important to ensure that the Email Router is connecting to the same mail profile that the user is using within Outlook.  I have actually run into cases where the user’s mail profile is configured for a different mailbox within Outlook and the Email Router is configured to use another one.  Typically, this is seen where the Email Address for the user in CRM does not match what is in Outlook.
  2. The Email Router connects to the user’s mailbox.  There are a few things that could be an issue here:
    1. Connecting to the user’s mailbox: This is done by what is specified in the Incoming profile, specifically what is set under Access Credentials.
    2. If Access Credentials is set to Other Specified, then this is going to be using a service account or the user’s own credentials to connect to the mailbox.  If using a service account, that account must have permissions to access user’s mailboxes.
        • You can give permissions, within Exchange, per mailbox using the Add-MailboxPermission or you can set the service account to use a Role Group such as View-only Organization Management.  However it is done, the credentials must allow for GetFolder and GetItem requests within the mailbox. 
        • Exchange is not the only protocol we can use to process incoming emails.  We can use POP3 as well.  In this case, you need to work with the POP3 provider to determine how to give access to a service account to other user’s mailbox
    3. User has not specified credentials in the Mailbox profile:

      If you have defined the Access Credentials within the Email Router to use User Specified, the user must enter in their credentials within their mailbox profile
    4. The user is not listed in the Email Router Configuration Manager after clicking on Load Data:

      This could be due to the Email Access Configuration for the user not set to Email Router for Outgoing or the user’s email address has not been approved. 
  3. Lastly, once the Email Router has processed the inbox and it has items to send to CRM, it must connect to CRM and query to see if the email should be a CRM email.  A user’s personal options dictate what emails make it into CRM.  If we go into the Personal Options for Email, what is the option for “Select the email messages to track in Microsoft Dynamics CRM”?

    Based on the setting determines what emails are created or promoted into CRM:
    • All email messages – This will promote every incoming email the user receives
    • Email messages in response to CRM email – This will promote only emails that were either sent out of CRM or they were in response to an email that was tracked within the CRM Outlook client
    • Email messages from CRM Leads, Contacts and Accounts – This will promote any emails that have an email address that correlate to a Lead, Contact, or Account
    • Email messages from CRM records that are email enabled – This will promote any emails that have an email address to any CRM records that are email enabled.

Additionally, if you are sending emails between users and you want both the outgoing and incoming emails to be created into Microsoft Dynamics CRM, you must check the Email System Setting for “Track emails sent between CRM users as two activities”


Forward Mailbox

If the user’s profile for “Incoming Email” is set to Forward Mailbox, then this will mean that the Email Router is going to be connecting to a Forward Mailbox and processing email from that mailbox:


This would mean that we would need to refer to the following mail flow diagram referenced from the earlier blog post (Email Router Demystified – Explanation) in the section labeled “Forward Mailbox”:

Again, each one of these steps indicate a potential break point in the email routing process for the forward mailbox.  You’ll notice that this is very similar to the Email Router method except that the email router is no longer connecting directly to a user’s mailbox but to a forward mailbox.  Additionally, emails are being forwarded as an attachment from the user mailbox into the forward mailbox.  Hence why we call it the forward mailbox.

Since most of what we talked about previous applies to the Forward Mailbox option, I will simply highlight them rather than going through those steps in detail:

  1. Someone must send an email to the user. 
  2. The email is being forwarded as an attachment from the primary user’s mailbox into the forward mailbox.  We use the Rule Deployment Wizard to try and help to automate this task by applying the forwarding rules programmatically for users.  However, there are situations where the Rule Deployment Wizard does not work and you must manually create this rule.  The bare necessities of the rule is that you forward the email as an attachment to the mailbox you designated as the forward mailbox:
  3. The Email Router connects to the Forward Mailbox.  The Forward Mailbox is defined within the Email Router Configuration Manager:
  4. Lastly, once the Email Router has processed the forward mailbox and it has items to send to CRM, it must connect to CRM and query to see if the email should be a CRM email.  A user’s personal options dictate what emails make it into CRM as we discussed above.

    Once the Email Router has been able to process the email for the forward mailbox, it has the ability to delete the message out of the mailbox for the forward mailbox as long as the option within the Forward Mailbox profile has been set:

    This helps maintain the size of the forward mailbox and not to retain emails that are unnecessary for the forward mailbox.

Incoming Protocols

So now that we understand the various breakpoints, we can now determine what tools we can use based on the different Incoming protocols being used.  Troubleshooting incoming issues are the same as troubleshooting outgoing email issues.  Our two options, realistically, is Exchange Web Services (EWS) and POP3. 


When we are connecting to Exchange, we are connecting using Exchange Web Services.  We’ve already seen how we can troubleshoot EWS issues by using Fiddler and by using EWS Editor.


Troubleshooting POP3 issues are like troubleshooting SMTP issues.  To troubleshoot POP3 issues, we use a network sniffer like Microsoft Network Monitor (NetMon).

What's New in CRM 2011 - Auditing

In the ninth installment of Sonoma Partner's 10-part series, we will highlight a new feature in Microsoft CRM 2011- Auditing, a background process that will record any changes to your records.

Microsoft Dynamics Marketing Spring '14 Administration in Office 365

Office 2010 / Microsoft Dynamics CRM Demo -- Rapid RFP Response Features (Part 2 of 2)

In this demonstration, you will see how combining Microsoft Dynamics CRM with Microsoft Office 2010 and Microsoft SharePoint Server 2010 can help you to increase the velocity of your key business processes.

Folder Level Tracking in CRM Online 2015 Update 1

Tracking email activities is key to successful customer engagement, from sales to service. In this video, we'll walk you through setting up folder level tracking to simplify and automate email tracking, which improves end-user productivity and helps to drive positive customer engagement. For more information, visit http://www.microsoft.com/en-us/dynamics/crm-customer-center/default.aspx and http://go.microsoft.com/fwlink/?LinkId=394323

Update Record In Microsoft Dynamics CRM Using Early Bound

Update Method

To update record use IOrganizationService.Update(entitymethod.


Name Type Comment
entity Microsoft.Xrm.Sdk.Entity Entity object to update



This method is implemented by OrganizationService class and OrganizationServiceContext generated in previous chapter.

Using Early Bound

To update object assign updated values to the fields of object.

//retrieve account to update
Account account = (Account)_service.Retrieve(Account.EntityLogicalName, _accountId, new ColumnSet(true));

//update the values
account.Name = "Update Name";
account.Revenue = new Money(500000);

You can get the object to update multiple ways for ex: using retrieve operation.

Object to update must have Guid in the Id field, when we retrieve object it is already present.

Now pass prepared object to the Update method.

 //pass object to update method


Following example demonstarates how to update record in Microsoft Dynamics CRM using early bound


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

namespace Msxrmtools
class Program
static void Main(string[] args)
//"connection" = connection string name from config file"
IOrganizationService _service = new OrganizationService("connection");

//assumed guid of existing account record
Guid _accountId = new Guid("9ec0b0ec-d6c3-4b8d-bd75-435723b49f84");

//retrieve account to update
Account account = (Account)_service.Retrieve(Account.EntityLogicalName, _accountId, new ColumnSet(true));

//update the values
account.Name = "Update Name";
account.Revenue = new Money(500000);

//pass object to update method


Microsoft Dynamics CRM 2013 Setup and Upgrade New Features - Base and Extension Table Merge

Microsoft Dynamics CRM 2011: Installing and Configuring the Outlook Client

Installation and Configuration for Microsoft Dynamics Marketing Connector for Microsoft Dynamics CRM

Color Grid for Dynamics 365

Color Form for Dynamics 365