Tip #1194: When the App for Outlook shows a random dashboard

You provision the Dynamics 365 v9 App for Outlook and click the Dynamics 365 button in Outlook, but what you see is a random dashboard from Dynamics 365, not the Outlook App pane with the set regarding options.

The thing you need to know is that the Outlook app pane is a dashboard in Dynamics 365 v9, and like all dashboards, it can be security role enabled. If a system administrator mistakenly selects that App for Outlook dashboard in Customization and removes associated roles, the App for Outlook will not work correctly–users will see their default Dynamics 365 dashboard, not the App for Outlook.

If this happens to you, navigate to Settings->Customization->Customize The System. Click the Dashboard node, then select App for Outlook dashboard. Click the “Enable Security Roles” button.

Enable the dashboard for everyone.

Save and publish customization, now users App for Outlook should display correctly.

(Facebook and Twitter cover photo by Carson Arias on Unsplash)

Tip #1193: When Case attachments exceed your limitations

I’m setting up automatic case creation from email in Dynamics 365–what is the expected outcome if someone sends an email to my queue that has an attachment that exceeds my attachment file size limits in Dynamics?

A reader

Not finding any official documentation about what the expected result should be, I set up a simple test to find out how this scenario would be handled. I was confident that the attachment would not be created in Dynamics (because of the limit in file size), but would the email and associated case record still get created?

I set up a queue and kept the default file size limitation of 5 MB. Note that for most real world deployments using Exchange Online, I would probably increase that to 15-20 MB.

I then sent myself two emails, one with a small attachment, and one with a large attachment.

The result was that two cases were created in Dynamics 365–the small attachment case included the attachment, the large attachment case was created, but no attachment was created.

The takeaway is that you don’t have to worry about losing cases should an email arrive that exceeds your attachment file size limitations; however, you may get cases referring to attachments that are not included in the case. If this is a concern, you should probably increase your attachment file size limitations to match the file size limitations of your email server.

(Facebook and Twitter cover photo by DiEGO MüLLER on Unsplash)

Tip #1192: Quick Create for custom entities in Unified Interface

Remember the problems with viewing custom activity in Timeline? The unified monster

Do I need to sell my left or my right kidney to make the feature X work in Unified Interface?

is back. This time, Quick Create was not showing up for custom entities neither for me nor for Guido “Future Olive Farmer” Preite. False alarm. Make sure that

  1. Entity is enabled for Quick Create (it’s a subtle checkbox on the “classic” entity properties dialog)
  2. At least one Quick Create form is included in your app (using App Designer). Apps seem to be now not showing what’s not included.

Build: 9.1.0.638

(Facebook and Twitter cover photo by David Clode on Unsplash)

Tip #1191: Where’s my App for Outlook Pin?

In Dynamics 365 v9, one of my favorite convenience features is the ability to pin the App for Outlook pane so it opens by default.

But what if you are on v 9.1 and you do not see the pin option?

  1. Verify that you are running Outlook 2016/O365 Outlook Click To Run version.
  2. If your environment was upgraded from 8.2 to v9, reinstall the app for Outlook.

(Facebook and Twitter cover photo by Lisa Woakes on Unsplash)

Tip #1190: Searchable lookup and relationship

I admit that, for a long time, I was under what turned out to be an illusion, that setting Searchable to No had the same effect whether you do it on a lookup or relationship. How wrong was I. (On unrelated note, isn’t “wrong” a binary construct? Wouldn’t that translate to “how zero was my understanding”?)

Let’s say we have ubiquitous employer (account) < employee (contact) 1:N relationship.

Searchable lookup and relationship

Hiding a lookup from Advanced Find stops the field from appearing in the condition for the entity on the N side of the relationship, i.e. contact. Users will not be able to build a condition like “find all contacts employed by Contoso” or “find all unemployed contacts without an employer”.

Hiding a relationship, on the other hand, hides the related entity, which has an impact on both entities:

  • on 1 side of the relationship it’s no longer possible to build conditions like “find companies without any employees”, or “find companies that have employees born before 1949”
  • on many side of the relationship it’s no longer possible to build conditions on the parent entity, e.g. “find contacts where employer’s turnover is greater than $1,000,000”

Now my (and, by proxy, your) understanding is an extremely solid 1.

(Facebook and Twitter cover photo by Vincent van Zalinge on Unsplash)

Tip #1189: Fill SVG files for all occasions

I thought we chewed SVG to death and even showed how to create SVG images for a Minecraft Dynamics deployment but Tom-Richard “Another CRM Viking” Follegg proved me wrong. (Would you like to earn a “George is wrong” sticker? Send your tip to jar@crmtipoftheday.com!)

By default, when we create modern .SVG files for Dynamics, these should have black fill color to work properly. Dynamics then replaces the fill color if you use it in the menu or entity. 

clip_image002
This is not the case if you want to use the same files as a Ribbon button.  If the fill color is set to black, the default CSS in the Ribbon in Unified Interface will not change the color of the image. You will end up with a black image in the App Ribbon because the fill value in the .SVG file overwrites the CSS value in Dynamics.

Here is a simple trick for using .SVG files in the Unified Interface App Ribbon that also works in all Apps including that for a phone.

Open the .SVG file in Notepad, and find the fill value of the .SVG

clip_image004

Remove the color value so that you are left with only fill=””
clip_image006

Now the standard CSS in Dynamics will fill the image with correct color in the UI App.
clip_image008

It also renders fine in the Phone App.

clip_image009

(Facebook and Twitter cover photo by Holly Stratton on Unsplash)

Tip #1188: The case of the missing activity tab

I was recently upgrading a client from CRM 2011 to Dynamics 365 online, and for one custom entity, after reconfiguring the form and adding the timeline control, the form would only display the notes tab of the social pane.

I removed the pane from the form, saved, published, and re-added the pane, and all I could see was the notes tab.

Next, I tried saving the form as a new form, but my experience was the same. Whatever I tried I could only see the notes pane.

Wanting to avoid the draconian solution suggested in the Dynamics forums to recreate the entity, my next step was to try creating a new form–not save and new, but hit the new button to make a totally new form.

At first it looked like I was still stuck, because the new form still showed just the notes tab, but after removing the social pane from the form, saving and publishing, then adding the timeline control back to the new form, I now could see all of the tabs of the social pane.

Summary: If this happens to you, create a new form and add the timeline control to it.

(Facebook and Twitter cover photo by Russ Ward on Unsplash)

Tip #1187: Automatically track all emails

Some housekeeping before we dig in. Firstly, the tip is from Mohamed “iProperty” Mostafa but since I was instrumental in rejecting all of his ideas, I’m taking part-credit for it. Secondly, the full title should be

Automatically Track All Incoming and Outgoing Email Messages in Dynamics 365 without opening Outlook and across any device :: Pure Exchange and Dynamics 365 Server Side Synchronisation

but SEO is not my strength plus it won’t fit in the margin. (“I” below belongs to Mohamed, it could have been me, but was not).

Sometimes organisations want to track all incoming and outgoing emails for a number of users at Server Side without having the user to do anything manually and across all devices. The requirement here is to save the user time from clicking on “Track” emails when they are sending them or having to manually move incoming emails into a tracked folder to be tracked. They also want this to work on every email sent from any device and every email received even if Outlook is not open. This what I call “pure Server Side Synchronisation”.

As the name gives it away, Dynamics 365 Server Side Synchronisation and Dynamics 365 App for Outlook can help us achieve this requirement with some help from Exchange Mail Flow Rules that uses the transportation layer directly. Just to re-iterate, we are here using Dynamics 365 App for Outlook (not the client). If you are not sure what is the difference between Dynamics 365 App for Outlook and the Dynamics 365 for Outlook (also known as the Outlook Client), you can refer to this comparison.

My approach is using Server Side Synchronisation between Dynamics 365 Online Cloud and Exchange Online but the same approach may work with other setups to achieve the same requirement: Track all incoming and outgoing emails automatically from any device. I’m also applying all of this on 1 single “test user” but you can apply this on as many users as you want. My test user is called “sales test”.

tl;dr

The abridged version of the process is here. If you are after exhilarating step-by-step instructions, go straight to Mohamed’s original post.

  1. Configure server-side synchronization
  2. Set up tracked folder
  3. Create the following email flow rules
    1. Outlook rule to copy all incoming email messages to the tracked crm folder except if the message has “crmtrack” in the message header.
      image
    2. Exchange Online Mail Flow rule that works at the transportation layer to “Bcc” every single email sent from the user to themselves and adds the “crmtrack” header value to the sent email message header
      image
    3. Outlook Rule to move all incoming email messages that has the “crmtrack” header to the tracked folder.
      clip_image023

The result of all of the above complicated approach is that ALL incoming emails are tracked in Dynamics 365 automatically as “Received” emails and ALL outgoing emails are tracked in Dynamics 365 CRM automatically as “Sent” emails. As this approach is using Exchange Online transportation layer, this is a pure Server Side Synchronisation of Email messages with Dynamics 365 which means it will work with “ALL Emails” sent from ANY Device and any app as the synchronisation happens at the server side and not on the client side. So if you sent an email from the Outlook for the Web (Web Mail), sent it from an Android device email client, iPhone Mail app, Outlook app on iPhone, Office Outlook or any other medium, all emails sent and received are tracked in Dynamics 365.

This is how it looks like in Dynamics 365: Tracked emails sent from any device and emails received while Outlook is closed:

clip_image025

(Facebook and Twitter cover photo by Matthew Henry on Unsplash)

Tip #1186: Race conditions with queue items

Today’s tip is from Marius “flow like a river” Lind. (And you can also become a tipster by sending your tip to jar@crmtipoftheday.com)

What happens when a race condition happens in a queue? Let’s say we have a bunch of customer service representatives who are working on cases in the same queue. The queue is sorted by priority and you should always pick the top case. Joel and Marius opens up the queue view at the same time, but Marius is a second faster than Joel to pick the top case. What happens now?

Well, one out of two things.

  1. Marius chose to pick but not remove the item from the queue.
    Joel picks the case, and since the queue item still exists the action taken by him simply resolves and the case is delegated to him.
  2. Marius chose to pick and remove the item from the queue.
    Joel is presented with the following error message
    clip_image002

So how do we deal with this?

For scenario 1, here’s a few options:

  • Accept that this might happen
  • Create a plugin which prevents someone from picking something that’s being worked on

For scenario 2:

  • Tell users about this, accept that it might happen

How to reduce the risk of this happening:

  • Make sure you teach your users to refresh the list view if it’s been open for a while
  • Distribute over several queues to prevent too many people working in the same queue
  • Or maybe you have a better idea, drop it into the comment.

Best regards, your friendly neighbourhood Viking!

(Facebook and Twitter cover photo by davide ragusa on Unsplash)

Tip #1185: Customize the document grid

I upgraded to server side SharePoint integration and now I don’t see enough detail from the document grid. It doesn’t show me who checked out the file, and I have to open the SharePoint location to see who checked it out.

Reader

Good news–with server-side SharePoint integration you can customize the grid more than you could with the client side grid control. 

Do an advanced find of the view entity for where the name contains “Document Associated.” From there you can add a bunch of additional fields to the grid view.

(Facebook and Twitter cover photo by Stefan Schweihofer on Pixabay)