Tip #279: Don’t reuse AD accounts

Jon Lagavulin has left and Jim Laphroaig has joined the company. Same role, same position, even the same salary. In fact, Jim is supposed to take over all the leads, customers and opportunities left behind by Jim.

It’s very tempting to rename Jon’s account in Active Directory – select the user object, press F2, type the new name, press ENTER and, presto:
Rename user in AD

Complete all the fields including user logon name and save. Then switch to CRM and edit User Name field to match the new account:

Rename user in CRM

Right? In theory, yes. In practice, CRM does not seem to complete the account changeover if SID of the user remains the same and Jim, in all likelihood, will face 404 page immediately after the login. In my experience, it is always better to create new user in Active Directory, change account in CRM to point to the new user and then disable the old user account. Not only CRM will continue to work as advertised, Jim will be also spared of all the mailing list spam Jon has managed to subscribe to during his short stint with the company.

Some things just don’t mix.

Tip #278: Where did the users go?

So you set up a shiny new CRM 2015 environment, the first thing you want to do is add additional users.

But where did the “Users” go? They have always lived in the Settings–>Administration area. Did they move?

The answer is that Microsoft has moved users and user related entities (like security roles, teams, and the new hierarchical security settings) to a new Settings area called “Security.”

Screenshot 2014-11-28 07.56.42

 

 

Tip #277: Disabling user prompts

In Dynamics CRM, many of the system user prompts can be turned off in System Settings (Settings–>Administration–>System Settings)

  • Get CRM for Outlook. On the Outlook tab of System settings, set “Users see ‘Get CRM for Outlook’ option displayed in the message bar” to “No.”

outlook message

  • Prompt to use CRM app when running CRM in tablet browser. On the General tab of System Settings, set “Users see app download message” to “No.”

tablet

navtour message

Thanks to Andre Margono for suggesting this tip. Got any burning tips? Send them to jar@crmtipoftheday.com

Tip #276: When nobody is an O365 Global Administrator

With CRM Online, adding users and managing organizations is performed via the Office 365 Administrator Portal. This has some great advantages, as you can perform organization maintenance on all of your organizations from a central location.

This also means that managing CRM Online organization settings in Office 365 Admin Portal requires Global Administrator privileges.

But what do you do if no CRM users are Office 365 Global Administrators? If you work in a high security environment, there is a good chance that CRM administrators will not be given Office 365 Global Admin permissions, especially if other systems like Exchange Online or SharePoint Online are in use.

Without Global Admin permission, no CRM user will see notifications, alerts, be able to monitor the health of the service, or be able to schedule upgrades.

Suggestions:

  • Designate a Global Administrator to work with the CRM team. When users have trouble accessing the system, they will need someone to call who can check the status of the service. When there is an upgrade to schedule, the CRM team will need to work with a Global Administrator to schedule the upgrade.
  • Have at least one Global Administrator trained in the process or copying and refreshing sandbox organizations, so the dev/uat/qa environment can be refreshed occasionally.
  • Create a Global Administrator user account, then set up a rule to forward all mail sent to that user’s mailbox to a distribution list that includes CRM admins. That way alerts that come up will get sent to the members of that group. It’s not perfect, because you won’t get every notice (such as licensing conflicts, which don’t generate emails), but it is better than nobody on the CRM team being notified.

Thanks to my friends at Palmetto Technology Group for advising me on this tip. If you need someone to help you manage the sometimes confusing world of Office 365, they really know their stuff.

Tip #275: Uninstalling the MDM Connector

If you implement Microsoft Dynamics Marketing, Microsoft documents the process of installing the MDM connector. However, should you ever need to remove the connector, the instructions are not as clear.

At a high level, the process of uninstalling the connector is:

  •  Be sure the connector queues are drained. Verify in Azure management portal that there are no message in the Queue. Either don’t make any updates in CRM / MDM or disable the CRM service bus endpoint, if your CRM environment is life.
  • In MDM Service Settings, clean the configuration via the trash can button.
  • Disable the connector in MDM
  • Remove the Solution in CRM
  • Remove the Service Bus components in Azure

Be aware that after you remove the solution in CRM, there will be some additional artifacts that you will want to be sure you remove. This includes the service endpoint and 19 SDK Message Processing steps that you will want to delete either through the Customization menu or via the Plugin Registration tool. This will prevent system jobs from firing messages to Azure that won’t be received.

img 4

 

 

Tip #274: Lookup fields in CRM for tablets

I recently wrote the book The CRM Mobile Survival Guide. In Chapter 5 I discuss how to configure Dynamics CRM to give users a good user experience when using CRM via the CRM for Tablets app.

One thing I found while researching the book is that lookup field behavior in the tablet app is not consistent with other CRM user interfaces, like browser. if you configure field properties to filter a lookup field in form customization, the field will be filtered when using CRM in browser, but the filter will not apply when using CRM via tablet app.

To filter lookup fields in the tablet app, use a JavaScript Xrm.Page.getControl.addPreSearch function.

For example, say I have a custom Account lookup field called “Vendor” (new_vendorid), and I want to filter the lookup to Accounts where relationship type contains “Vendor.”

First, do an advanced find for accounts with the desired filter. The columns displayed in the advanced find don’t matter.

IMG1

Click the “Download Fetch XML” button to download the fetch query. Copy the contents of the Fetch XML between the <filter> tags.

IMG2

Paste the copied filter to the XML editor of your choice, and replace all double quotes with single quotes.

IMG3

Then add the filter to an addPreSearch function on load. This will override the filter of the lookup field with your new filter.

Xrm.Page.getControl(‘new_vendorid’).addPreSearch(function () {

Xrm.Page.getControl(‘new_vendorid’).addCustomFilter(“<filter><conditionattribute=’customertypecodename’operator=’like’value=’%Vendor%’ /></filter>”);

});

Now when you click on the lookup field in the tablet app, the results will be filtered based on the custom filter in your PreSearch function.

Bonus double dip

Since writing the Mobile book, I have discovered another inconsistency with lookup fields on the tablet app–they only search against the primary field. If you have other fields defined as find fields, from browser you can type in the field find the record using another search attribute. From the tablet app, the lookup field will only search the primary (name) field of the lookup entity.

Tip #272: How to shoot yourself in a foot with the Edit button

Our next tip for CRM 2015 comes from Jim “Sourdough Master” Steger and continues nice tradition of warnings against premature actions in Dynamics CRM.

When creating a Rollup or Calculated Field, be sure to have all of the information for the field out to your satisfaction BEFORE you click the Edit button to configure the rollup or calculated field. Once you click Edit, Dynamics CRM will auto-save the form, and will lock your schema name, data type and field type and cannot be changed.

Tipp Jarr’s Double Dipp

Doh!

Tip #271: Edit FetchXML In Style

Have you ever been frustrated trying to work with FetchXML queries? Sure, you can create an advanced find and export the query, but working with Fetch can sometimes be tedious if you want to edit the query.

Back in the CRM 3 and 4 days, there was a great FetchXML editor from Stunnware. However, that tool has not been updated for years.

CRM wunderkind Paul Way has recently released a beta version of his FetchXML editor, Fetch Tester 3000. This tool will remove many of the headaches of working with Fetch. It includes Intellisence-like auto complete (including 1:N relationships), schema validation, and the ability to test the results in a tabular format that supports Export to Excel.

This is a great start, and definitely something you should check out if you do FetchXML surgery.

Read more at http://paul-way.com/

Auto-complete of CRM attributes

Tip #270: Close Appointments from Outlook

We recently posted a tip about how non completed tasks are deleted from CRM if the owner deletes the task in Outlook. The same applies to non “closed” appointments. The problem is, for Outlook users, there is no “close appointment” button in Outlook. The user must open the Appointment in CRM to close the appointment (and therefore, many appointments never get closed).

One recipe for closing tasks, suggested by Gustaf Westerlund, the Swedish Chef of CRM, is to create a workflow that runs on update of the description field and closes the appointment when the description contains a unique phrase like “CLOSE ME” That way, users can close appointments directly from Outlook by simply writing “CLOSE ME” at the end of the description field.

Got any tips? Want to be as awesome as Gustaf? Send them to jar@crmtipoftheday.com.