D365 For Outlook 2016: There is a Problem communication with the Microsoft Dynamics CRM server for D365 v9

One of the recent and most frequent issues faced while upgrade is that of the existing Dynamics 365 For Outlook 2016 setup which doesn’t connect to D365 v9.

Right after the environment upgrades to v9, D365 For Outlook’s older version doesn’t connect.

But that’s not the end of the story, obviously, there’s is an upgrade. So let’s see how to go about this process and why this happens.

Error

When you’re trying to re-enter credentials or connect to D365 v9 from the existing D365 For Outlook version, you see this error
error

Reason

The reason is that D365 version 9 required TLS 1.2. Detailed explanation of which you can find here – https://support.microsoft.com/en-in/help/4054414/dynamics-365-for-outlook-update-for-version-9-0?LCID=1033

Version Upgrade

You can either choose to upgrade to D365 For Outlook v8.2.2.137 which you can download from here – https://www.microsoft.com/en-us/download/confirmation.aspx?id=56327

Or, if you don’t have any pre-installed version, you can also directly setup D365 For Outlook – https://www.microsoft.com/en-us/download/details.aspx?id=56972

Make sure you have upgraded your D365 to v9 first. I’ve posted a related blog regarding this in the past and you can refer it here – https://d365demystified.com/2018/11/13/d365-quick-tip-higher-version-of-d365-for-outlook-wont-work-older-d365-online/

 

Hope this helps! 🙂

Advertisements

Delete Async Plugin Logs if plugin succeeds, save D365 storage space

Let’s see how we can efficiently manage D365 storage without bloating the storage with data that you might not need.

In my opinion, we don’t really need to know that the background process was successful or not, we typically care for what failed.

So, from an Asynchronous plugin standpoint, the logs in D365 is registered in the System Jobs and they create a ton of System Events if you are Importing data in D365 and your Async process is on the create of such records.

sysjobs

Check your Async plugin step

  1. Now, you can preserve this storage space by choosing to Delete the Async plugin logs.
  2. In the screenshot below, you can see an option to ‘Delete AsyncOperation is StatusCode = Successful
    deletelog

In this case, the System Jobs for the will not be created, thus, saving you valuable storage space if your plugin is run frequently.

Hope this helps.

Enable entity for Party List selection in Appointment

Out-of-the-box, you have fixed set of entities enabled for Party List fields in Appointment entity. Of which, you can select to be either in Required or Optional fields on Appointments.

But, what if you want to enable a custom entity for the same? You can do that was well.

Enable Entity for Sending Email

  1. In your custom entity, you can turn on Sending Email option on the entity level and the entity will be enabled for Party List.sendingemails
  2. And Publish your customization.
    Now, when you select the Required/Optional field in Appointment, Look for More Records
    lookForMoreRecords.png
  3. Select the Look For option to expose available entities
    expandlookfor
  4. And look for the custom entity you created i.e. Office Representatives my this case.
    selectentity
  5. And select the record you want
    jamieg
  6. And the custom entity record will be added to the Party List field
    addedtolist

The reason your see them enabled is because Email Address (emailaddress) field has been created for the entity i.e. the entity is now Email enabled.

Hope this helps!

Use Azure App Passwords for MFA enabled D365 authentication from Console App

If you have a Console App that authenticates to D365 using a credential (typically, an Administrator) but now the administrator is setup for Multi-Factor authentication, your Console App won’t work. So here’s what you can do.

If you first want to check out about enabling Multi-Factor Authentication, you can check my blog post on it here – Office 365 Admin: Quickly Enable Multi-factor authentication for users

Standard Authentication vs MFA enabled User

When there’s not MFA enabled for Dynamics 365 (Office 365) account credentials, you are able to connect to the organization with no issues and get the CRMServiceClient in your application easy.
authenticated

But, if you have Multi-Factor Authentication enabled for a credential that is used in Console Apps to connect to D365, the Console App will not connect and the CrmCerviceClient will have null as below with the error ‘Unable to Login to Dynamics CRM

unabletologin

Managing App Passwords on Azure Portal

Once you have multi-factor authentication enabled for your account, you can go to portal.azure.com and manage App Passwords as follows –

  1. In Azure Portal, go to your account settings.
    gotoaccount
  2. Then, go to Additional security verification
    additionalsecurityverification
  3. Look for App Passwords
    apppasswords
  4. You can manage and create more passwords here
    manageapppasswords
  5. Create a password if you don’t want to use a default one or want to use different passwords for different apps. Give it a suitable name and click Next
    createapppassword
  6. Copy the password as it is the only time it will be displayed.
    copypassowrd
  7. And you can see your passwords as you create them
    morepasswords

 

Implementing App Passwords in Console App

As the name suggests, App Passwords will let you create special passwords for applications to authenticate to Dynamics 365 without needing to go through multi-factor authentication like when you’re running a Console App to connect to Dynamics 365

  1. Go to the Password in the credentials in the App.Config of the Console Application
    oldpassword
  2. And replace it with the App Password
    newpassword
  3. Now, Build the application and run it. It will authenticate successfully.
    authenticated

Hope this helps! 🙂

 

Quickly use Email Signatures in D365

You can use Email Signature in D365 Emails as well. Here’s a quick tip on it to quickly create a Signature and use it.

As I write this blog, this feature is not yet available in the Unified Interface yet.

Create a Signature

  1. Navigate to Settings > Templates > Email Signatures
    insertsignaturefeature

  2. And create a New Signature as below
    newemailsignature
  3. Now, I save and close.
    emailsignaturesaved

Insert and use Signature

Now, when you write a new Email or this email in D356, you can select the signature as below –

  1. Select Insert Signature while working on the email
    insertinemail
  2. Select the Signature and click Select.
    selectsignature
  3. And the Signature appears.
    finalsignature

That was easy. 🙂

Restrict User Access to a D365 instance using Security Groups

Use Case

You have multiple instances and you don’t want every member with a D365 license to be able to access each of those environments. How do you tackle this? Answer is using Security Groups on the Environments and Users.

Creating Security Group

In Office 365, create a Security Group and add members to it who should have access to the desired environment.

  1. Navigate to Groups in Office 365 and create a New Group. Give it a suitable name.
    creategroup
    groupname
  2. Add members to the Group who should have access. Click on Edit as shown below to Add members to the group and select the members and save it.
    editmembers
    addmembers
    membersadded
  3. Your Security Group is ready.
    securitygroupready

Apply Security Group to the D365 instance

  1. Navigate to Dynamics 365 Admin Center and select Edit on the instance you want to apply the Security Group on.
    editinstance
  2. Select the Security Group field and select the Security Group you created.
    selectsecuritygroup
  3. Click Next.
    clicknext
  4. Save once confirmed that you have selected the correct Security Group.
    saveinstance
    That’s it.

Who all can access the environment

All those are a part of the Security Group applied to the instance will have access to the environment including the Global Administrator
enabledusers

Rest of the users will be in the Disabled Users list
disabledusers

And if they try to access the environment, they will not be able to and will see this –
accessdenied

Hope that was easy! 🙂

D365 Quick Tip: Allow messages with unresolved email recipients to be sent

Most new users get stuck with issues saying ‘Email address of the recipient was not resolved’. Like in case you want to send out an email from D365 but you don’t have the same saved in the system as a Contact/Lead or any other record.

And it resulted in this the big red cross like the one below –

unresolvedemailaddress

There’s a simple setting for this in Settings > Administration > System Settings, under Email tab.

You can simply flip the switch on ‘Allow messages with unresolved email recipients to be sent’ to Yes.
setting

 

And, now simply enter the Email address in the Recipient (To) field and let the email go!

resolvedemail

Hope this quick tip was helpful!