How to – Provision Unified Routing in Dynamics 365 Customer Service Hub


Unified Routing can be configured in Customer Service Hub or Omnichannel Admin Center.

To configure it for Dynamics 365 Customer Service, navigate to

Service Management >> Service Configuration Settings >> Unified routing

(requires Tenant administrator’s consent – click on Provide Consent link)


Accept the permissions requested and provide the consent.



In case unified routing remains disabled  –https://nishantrana.me/2022/03/08/solved-disabled-turn-on-unified-routing-option-in-dynamics-365-customer-service-hub/

Unified Routing once switched on, cannot be disabled from the application, and we need to contact Microsoft Support to turn it off.


The provisioning starts


After a couple of hours, we can see Unified Routing configured for the Customer Service app.

We can see the following solution – Anchor solution for UnifiedRoutingForCS in Dynamics 365 solutions installed in the environment.

Hope it helps..

 

Advertisements

Sample Code to Test and Enable Mailbox programmatically C# (Dynamics 365/CRM)


Suppose we want to Test & Enable Mailbox of the below user programmatically.

We can see the below notification for the disabled mailbox.

This mailbox is disabled for email processing. For more information, see the alerts.

Below is the sample code –

On running the code, we can see the notification removed and the mailbox for the user enabled successfully.

C# Code –

      CrmServiceClient svc = new CrmServiceClient(ConnectionString);

            if (svc.IsReady)
            {
                var mailBox = new Entity("mailbox", new Guid("C88A539A-F493-EC11-B400-000D3A4F37D3"));

                // testemailconfigurationscheduled = Indicates if the email configuration test has been scheduled for a mailbox record
                mailBox.Attributes["testemailconfigurationscheduled"] = true;

                svc.Update(mailBox);

Hope it helps..

Advertisements

How to – Stop Synchronization of Task / Appointment through System View using Sync Filter Manager


In the previous post, we saw how we can create a user filter (outlook) for a particular user and apply the same to other users through Sync Filter ManagerXrmToolBox plugin.

https://nishantrana.me/2022/03/29/how-to-stop-synchronization-of-task-appointment-between-dynamics-365-and-outlook/

In this post, we’d achieve the same through System View.

Here we have created below System View on Tasks entity/table.

The Created On Doesn’t Contain Data False Condition will make sure none of the records of the task are synced.

Open the Sync Filter Manager, navigate to the System Views tab and click on Load System Views

Select the new System View- Task Filter which we created earlier and click on Create – System Synchronization Filter Template from selected view(s)

Select Outlook Template for System Rule Type

We are presented with the option to specify the user(s) to who we want to apply the new template.

If we select Yes, we get the Select users dialog box to select the user(s).

Inside the Synchronization Filters Templates tab, we can click on Load Synchronization Filter Templates to list down all the outlook templates.

We can see our custom template listed there.

From there again we apply it to the user(s) or define it as the default filter.

After applying Define as default, we can see the custom filter applied to the new users. It won’t be applied or make changes to the filters of the existing users.

So for the existing users, we have to explicitly apply this filter using Apply to users option

As the last step, we need to disable or delete any other filter on the task, to make sure that we only have the new filter applied.

On disabling the filter, we can see their status updated as inactive.

Lastly, we can only delete Custom Outlook Template, if we try deleting any default out of the box template we will get the below error.

E.g. on trying to delete the My Tasks default filter, we will get the below error

“Error while deleting selected records: SavedQuery My Tasks for otc 4212 cannot be deleted”

Check other posts on Synchronization –

Hope this helps..

Advertisements

How to – Download files from File Column / Attribute using SSIS – KingswaySoft (Dynamics 365/ CRM)


Let us take a simple example to understand how we can download files from the file column using SSIS Package + KingswaySoft’s Integration Toolkit.

Here we have a File Column defined for Contact Entity.

Our SSIS package will run on all the contact records and will extract the file from the records to one of the folders in the local machine.

This is what our package’s data flow looks like.

It has just 2 components CDS Source and Premium Derived Column.

CDS Source is connected to the Contact entity.

For Columns, we have selected our file column fields.

Next, we have next added a Primary Derived Column component.

We have used the WriteBinaryComponent function to write the binary content (new_myfile_binarycontent field) to a file.

WriteBinaryContent(“D:\\MyDownloadedFile\\”+[new_myfile_name], new_myfile_binarycontent])

On running the package successfully, we can see the files downloaded at the folder specified.

The result – as we just had 2 contact records out of 106 having file uploaded to it we can see those 2 filed downloaded.

Hope it helps..

Advertisements

How to – Disable / Read Only fields in Editable Grid control (Dynamics 365 / CRM)


Say for e.g. we have a requirement to make a certain field or column in the Editable Grid as read-only.

Here we have enabled Editable Grid control for Contact table.

Below are the 2 ways of achieving it –

Here we are taking the email field as an example.

  • Field level security

We have enabled Field Security on the Email field.

And we have set Allow Read and Allow Create as Yes and Allow Update as No.

And added the appropriate users or teams to which this profile should apply.

Now when the user tries to make changes in the email field, it comes as locked.

The other fields still come as editable as we have not enabled them for field security.

  • The other option is JavaScript on the OnRecordSelect event

Code –

function onGridRowSelected(context) {
    context
        .getFormContext()
        .getData()
        .getEntity()
        .attributes.forEach(function (attr) {
            if (attr.getName() === "emailaddress1") {
                attr.controls.forEach(function (myField) {
                    myField.setDisabled(true);
                });
            }
        });
}

The result –

Also check  – https://nishantrana.me/2022/02/15/power-apps-grid-control-in-model-driven-apps-dynamics-365-crm/

Hope it helps..

Advertisements

Couldn’t add resource. Microsoft Dataverse is in use error in Dynamics 365 Customer Insights


We might get the below error while trying to add Microsoft Dataverse Data source in Dynamics 365 Customer Insights.

“Coundn’t add resource. Microsoft Dataverse is in use”

As the error message indicates, this is because we have an already existing data source connected to that same organization.

We can edit the Data Source and can add entities to the same connection.

also delete the data source, if its entities are not used in Match and Merge

else we will get the below error message.

“To proceed, remove its entities from: Match, Merge”

In this case we will have to remove the entities from any Merge and Match configuration first.


Hope it helps..

Advertisements
%d bloggers like this: