Tip #459: Don’t touch that file. Or that one. Or this one.

From time to time people complain that, after applying the update rollup X, their CRM deployment suddenly starts spitting out errors. One of the most popular ones is “Parser Error Message: Could not load type ‘Microsoft.Crm.MapOrgEngine'”.

They complain here. And here. And here, here, here, and there. And then they give bad advice here.

Why the advice is bad? Because it just follows the path that led that deployment into this situation in the first place. That’s right, modifications of the web.config file.

Do not touch the thermostatFrom time to time CRM team needs to update some of the installation files that may seem innocuous enough to modify, web.config in particular. However, during the update rollup installation the files are updated only if they have not been modified since the last installation. If you opened web.config in notepad, added a single space and then saved it, installer will NOT touch that file no matter how much it wants to overwrite it. People report that full reinstallation of CRM followed by update rollups helps. Of course it does, it restores web.config file. Simpler solution is to get the file from the original CRM installation and then reapply update rollup allowing it to overwrite that file.

Tip #458: Tipster guide to Dynamics CRM App for Outlook

It’s Friday and CRM for Outlook is making its way into OWA. OWA, Karl!

This video walks you through the new CRM App for Outlook that was released as a preview feature as part of the Dynamics CRM 2015 Spring Update 1. Derik shows you how to configure Exchange online to use the feature, how to enable the feature in your CRM organization, and then how to use the functionality both in OWA and Outlook.

YouTube player

Give us your feedback, all of it: good, bad, and ugly, I’m sure we can take it. Suggest new topics either in comments or by sending your ideas to jar@crmtipoftheday.com.

Tip #457: Get your icons here

When adding custom entities to Microsoft Dynamics CRM, adding icons for you entities is an important fit and finish detail. However, finding the right icon in the right size can sometimes be a challenge.

Here are two of my favorite resources for finding flat icons that generally look good in CRM 2015.

www.flaticons.net Includes 2,500 free flat icons available in the size and color of your choice, as well as an icon maker.

https://icons8.com 15,400 free flat icons in any format, size, and color

Between these two sites, you can find just about any icon you want. Got any others to recommend? Post them in the comments.

Tip #456: Smart contact filtering

One of the challenges of using Dynamics CRM in small businesses is that business owner tends to own everything. What did it mean for one of our customers who had Microsoft Dynamics CRM for Outlook installed? The default filter, as you know, is “My Contacts”, i.e. contacts “owned by me”, and she owned all CRM contacts, all 15,000 of them. Long story short, we had to kill the initial sync and clean up her contact list by hand.

It is possible to select the records to synchronize, of course. But what would be the filter for the owner of thousands of contacts?

On this occasion, it was the business owner who came to the rescue.

In my Outlook I want to see only the contacts I’m dealing with right now.

Solution? Add a new field “Last contact date” to the contact entity, populate this field using the workflow, when relevant activity in CRM is created (e.g. email, task, appointment, etc) and then use that field in the synchronization filter to only synchronize contacts that had any activity, in the past, say, 90 days.

Since Outlook never deletes the contacts “on behalf” of CRM, the challenge still remains, of course, is how to “clean up” the contact list in Outlook to get rid of stale contacts that no longer satisfy the filter condition. Luckily, in this case, “drop out” rate was negligible enough for the business owner not to worry about it.

Tip #455: Upgrading CRM? Use server side Sharepoint

In case you missed it, with CRM 2015 update 1 (and later), server side SharePoint integration is supported for CRM online customers with SharePoint on premises. One additional detail you should not miss is that the grid control is now deprecated. This does not mean that it won’t work, but that it will be taken away in the near future. This means that if you are upgrading you are encouraged to move to server-side integration if you currently use the grid control.

If you use SharePoint 2010 and cannot use server side SharePoint integration, there is an updated version of the grid control available here: http://www.microsoft.com/en-us/download/details.aspx?id=45018

 

Tip #454: Windows 10 Support for CRM

Support of Microsoft Dynamics CRM 2015 on Edge browser will be available for CRM 2015 with Update 0.2 (7.0.2) and Update 1.1 (7.1.1) in September.  And the support of Microsoft Dynamics CRM 2013 will be introduced in Update Rollup 4 for Service Pack 1 (6.1.4).

There is a known issue with Microsoft Dynamics CRM 2011 and CRM 2013 for Outlook on Windows 10 with Office 15 on IE 11.  It is actively being addressed and a fix will be available soon.

This blog post covers the plans for full support across Microsoft Edge and Office 2016 in each version of Dynamics CRM and CRM Online.

Tip #453: Tipster guide to calculated fields

It’s Friday, Karl, Friday! That means, instead of our fingers, we let our magnificent voices do the talking.

This video explores Dynamics CRM calculated fields feature. It demonstrates how to perform basic field calculations on an entity, how to use some to the date functions available, and how to populate data from other entities. In addition to some demos, it talks about limitations, and other items to be mindful of when implementing them.

YouTube player

Give us your feedback, all of it: good, bad, and ugly, I’m sure we can take it. Suggest new topics either in comments or by sending your ideas to jar@crmtipoftheday.com.

Tip #452: How to use SSL certificates internally

tl;dr

Get a wildcard SSL certificate for your domain, reserve some names for internal CRM (e.g. internalcrm.contoso.com) and use internal DNS to resolve those addresses internally-only. If blah.foobar.local is required, domain CA should be used to issue an internal only certificate with trust implied.

The Stop

Dynamics CRM TipperOur own Joel “Standing on the shoulders of other MVPs” Lindstrom recklessly caused another mini truckstop by not being able to find an answer on his own.

Question

According to DigiCert, no public CA will provide certificate after Nov 1, 2015 that covers an internal resource. I read that as server or server.domain.local. Apparently this is for any address not “verifiable” from the internet. It also will not cover any resource on RFC 1918 (10.x.x.x or 172.16.x.x-172.31.x.x, as well as 192.168.x.x)

For CRM IFD which ALWAYS uses an internal and external address that are not the same address, this might mean publishing the internal address, externally (at least for the cert) which isn’t recommended by Microsoft. Normally the internal address isn’t published externally, but we could do that. My concern is if an internal user hits one of the 4 URLs (Internal, External, Discovery, or Auth) on an INTERNAL RFC 1918 IP, will there be an issue.

Is there any CRM off specific guidance on this?

Answer 1

Feridun “Best Twitter Handle for CRM MVP” Kadir patiently explains the mechanics:

For all the IFD implementations that I have done, I’ve used a wildcard certificate for the company’s domain name. eg. *.contoso.com. No internal resource is published.

Then for internal CRM access I use a name like internalcrm.contoso.com but arrange for the name to only resolve on the internal DNS server. (highlight mine – t.j)

Answer 2

There must be something going on with SSL certificates in U.K., because David “British Scientist” Jennaway chimed in as well:

In most cases I’d do as Feridun’s example. However, if there is a need to use an internal name like server.domain.local, then you can use an internally issued certificate. This would require ensuring the trust path of the certificates, but that’s just something to weigh against the reasons for using an internal name.

I don’t see that IP addresses are relevant here. It may be you can register a certificate for an IP address, rather than a domain name, which would explain the reference to RFC 1918, but that’s not applicable to IFD.

Tip #451: Locking field in business rule can be tricky

Business rule to lock a field Empowering users in Dynamics CRM is great but one needs to be prepared to troubleshoot adventures of a power user. If you have a rule that locks the field when certain conditions are met, beware what happens when this field is editable. That’s right, the last edit will be lost. Why? because locking the field is a common-speak for disabling the control and, as most of readers know, CRM cannot be stuffed to send saves the bandwidth by not sending content of the disabled controls.

Unfortunately, there is no definite answer to this challenge in “no code” land but the solution is fairly trivial – all we need to do is to force content submission for the control by wiring something like the following to the form OnSave event:

function account_onsave()
{
   if(Xrm.Page.getControl("emailaddress1")
              .getDisabled()) {
      Xrm.Page.getAttribute("emailaddress1")
              .setSubmitMode("always");
   }
}

Tip #450: System Settings – Previews Tab

As of CRM Online version 7.1 there is another new tab on the Systems Setting configuration window. The new previews tab is where the CRM Admin will enable access for their organization to some really cool new features – IFRAME in tablets, the Web API Developer Preview and my personal new favorite the CRM App for Outlook.

CRM Online System Settings

CRM Online System Settings