Category: Dynamics 365

Update a lookup from a text field (No code solution)

Hello Readers

We have many times faced this scenario; of updating a lookup field from a text field. I will be showing you how to do this without writing a single line of code, with the help of MS Flows.

Scenario: I have a custom entity ‘geography’ where I am storing all my post codes. This custom entity is also related to users/Salesperson. On my contact form there’s a reference field of Geography (Lookup) and Text field is Address 1: ZIP/Post Code. Now based on what is filled in the text post code field, I want to auto-populate geography so that I can further use it for salesperson assignment.

Let’s see how we can achieve this:

Step 1: Log on to flows.microsoft.com

Step 2: Click ‘My Flows’

Step 3: Click new and create from blank

Step 4: Select a trigger for your flow to execute

Step 5: Select the instance/Org of CRM and specify the entity

Step 6: Click on new step and select ‘condition’

I have entered a condition as ‘if Address 1 ZIP/Post code contains data’

Step 7: After you have entered condition, automatically a Yes and No branch will pop up. Under the Yes branch select what would you like to find. Basically asking flow to look at the list of geographies (custom entity for post code) to find if the Address 1: ZIP/Post code entered is found in the list. That’s why I have selected list records

Step 8: Specify the instance, entity and ODATA query. In my case the query is “name of the geography is equal to Address1:ZIP/Post code”. I know it sounds like a code but its not. You just have to know schema name of the field of the records you want to list. e.g. name eq ‘Address1:ZIP/Post Code’

Note that eq means equal. And I am using Address 1:ZIP/Post code as a dynamic expression and not query.

Now click on update a record

Step 10: Again select the instance, entity name and unique identifier of record. In my case ‘contact’

Step 11: The end result should be as shown below. Now click save and test your flow.

This is absolutely amazing coz we don’t need code to do that anymore now.

Hope this helps.

Happy CRMing!

3 INGREDIENTS TO TAKE YOUR PORTAL TO THE NEXT LEVEL – PART III

Read Part II

Third Ingredient: Live Chat

Being responsive to your customers and prospects is very important. Installing Live Assist from Café X certainly helps both your Agents and Customers.

Examples: Live Chat

Prerequisites: You must have the following available in your D365 instance-

  1. Live Assist Solution Installed
  2. Licenses for Café X Live Assist

Scenario: I want to enable my customers to be able to chat with the Agents about shipment delays or any other issues.

Step 1: Installing Café X Live Assist

Go to D365 Admin Centre>>Applications>>Live Assist>>Manage

Manage will take you to Set up Live Assist Page>>Select the instance of your D365 CRM here

Accept the T&Cs and submit then wait for solution to be imported.

Once it’s done, you will see the ‘Live Assist’ Tile on your D365, as shown below:

Click on Live Assist>> Administration>> Enter Details>>Confirm & Authorise

Select an option, if you want to purchase or run a trial:

Click on ‘Get Started’ on the top right corner and then click ‘Start’

Copy the snippet

Note: Before pasting the snippet in D365 Portal Config, remove ‘ and ’ from your snippet

Go to Portals>>Web Templates>>Header and paste the snippet just before where it is ending (this is not mandatory); just paste the snippet anywhere before </script>. Save the form.

And that’s all, you can go to your portal and refresh it. Now you will see a ‘Live Chat’ pop up

Click on Live Chat

User/Agent logged in to D365 can pick up this chat and see all the stats related to it.

Hope this helps.

Happy CRMing!

3 Ingredients to take your Portal to the Next Level – Part II

Read Part 1

Second Ingredient: Charts

Customers logged into the portal always expect easy Interface and better visibility of their orders and its status.

Examples:

Order Status

Shipment Status

Refund Status

Ticket Status

Scenario: I want to show consignments of a customer by consignment status.

Prerequisites: You must have the following available in your D365 instance-

  1. System View of your entity and its GUID
  2. Chart for your entity and its GUID

To get help on getting GUID of a chart and view, visit https://docs.microsoft.com/en-us/dynamics365/customer-engagement/portals/add-chart

Step 1: After completing the above listed prerequisites, go to Navigation>>Portals>>Entity List as shown below:

Step 2: Add entity list of the desired entity to be shown as chart and make sure you have selected the correct System View

Step 3: Replace the following text with the correct GUIDs of view and chart

{% chart id:”Enter GUID of the Chart here” viewid:” Enter GUID of the View here” %}

Step 4: Login to the portal as an admin and click edit on the corresponding page. I am doing it for ‘My Consignments’

Step 5: Select the correct entity List and then click on ‘Language Content’ tab

Step 6: Paste the text from “Step 3” here under Language Content and then click save

All done, following is what your customers will see on login.

Hope you find this helpful.

Happy CRMing! Read Part III

3 Ingredients to take your Portal to the Next Level – Part I

First Ingredient: Inserting Maps

Hello Readers

We all have been asked a question at least in one implementation that can we show a map on Portals. Well this blog is a step by step process on how to show a map for a D365 object on portals.

Examples:

Store Locator

Shipment Tracker

Scenario: I want to show In-Transit consignments of my company on a map of my Portal when the customer logs onto Portal.

Prerequisites: You must have the following available in your D365 instance-

  1. Entity which you want to show on maps
  2. Entity must have the following two fields:
    1. Latitude
    1. Longitude
  3. Bing Map/Google Map API/Credentials

Step 1: After completing the above listed prerequisites, go to Navigation>>Portals>>Entity List as shown below:

Step 2: Create new entity list for the corresponding entity; I am using a custom entity called “Consignment”.

Type a name, map the entity name, select the home page of your portal and select a view respectively, as shown below:

Step 3: Under the ‘Map View’ tab, check mark “Map Enabled”

Select your Latitude and Longitude fields

Select a Map type, I am using Bing maps

In the credentials, enter the key generated by Bing Map for D365. Check the following URL if you need help with Bing Map key generation:

https://docs.microsoft.com/en-us/bingmaps/getting-started/bing-maps-dev-center-help/getting-a-bing-maps-key

Step 4: Now login to your Portal as Admin and edit the desired page where you want to show maps and select the entity list you created above under ‘Entity List’ lookup of Portal edit page.

Save the page.

And that’s all, see the result below:

Hope you find this helpful.

Happy CRMing! Read Part II

Small but useful features Dynamics 365 V9

Multiselect Option Set

You can read about it here: http://dynamicscrmcoe.com/dynamics-365-v9-multi-select-option-set/

But how to import data with multiselect option set is a question and below is the answer:

Taking example of contacts with preferred car, following is a table on how to do it:

Correct format

Sample first Name Sample Last Name Email Mobile Preferred Car
Joe H Joe.h@sample.com +61 467891234 Honda; BMW; Toyota
Andrew Ly Andrew.ly@sample.com +61 467891235 Audi; BMW; Tesla

So, the key is to separate the values by a “;” + space

Incorrect format

Sample first Name Sample Last Name Email Mobile Preferred Car
Joe H Joe.h@sample.com +61 467891234 Honda, BMW;Toyota
Andrew Ly Andrew.ly@sample.com +61 467891235 Audi BMW Tesla

Text Wrap

This is a good one, as now the fields with big labels can be displayed in full J

Currently if we have long text labels, we can’t see the whole text and we must hover as shown below:

1

But if we enable the text wrap settings then we can see the whole text here, as shown below:

2

How to enable the settings? Go to Settings>>Administration>>System Settings>>General Tab>>First Option>>select Yes and click OK

3

Inactivity Timeout

You can now set inactivity timeout for a session along with a warning.

Go to settings>>Administration>>System Settings>>General Tab>>Scroll down>>enter your duration and click OK (as shown in the screenshot below)


4

Hope you find this helpful.

Happy CRMing !

USING SITE MAP DESIGNER IN DYNAMICS 365

Hello Readers,

I am glad that Dynamics 365 is making things easier for people with no technical background; here’s one such useful thing 🙂

Navigate to new Site Map Designer

Go to Settings>>Customisations

1

Click on ‘Customise the System’

2

Navigate to Client Extensions>>Site Map

3

Double click to open the Site Map

4

Area, Group and Subarea

This is explained in the screenshot below:

5

Adding a component

There are two ways of doing it:

1.Click on the add button on top

6

2.Click on the respective components on right

7

Let’s try and add each of the component type

Drag ‘Area’ from components window at the right and drop it just before ‘Sales’

8

Let’s give it a name by clicking on pencil icon, which you can see when you hover over the new area. After that I am placing a group and subarea under it.

9

Click on save and then publish:

10

This is how it looks now:

11

There are four different types of Subarea:

  • Entity
  • Dashboard
  • URL
  • Web Resource

All of them works fine except URL, I have used google.com.au as my URL with an expectation that it will load google within my CRM (well, I was wrong); to do that you need to add a web resource component otherwise you will see a blank screen. However, if you right click and open in a new window, it works fine.

12

So no more XRMToolBox, you can edit your sitemap from within Dynamics 365 🙂

Hope you find this helpful.

Happy CRMing !

Making a Field Mandatory Based on Forms via JavaScript in Dynamics 365

Hello Readers!

Entity Forms now come with security roles. You can select security roles and who should be allowed to see the form. This is helpful in scenarios where we have multiple forms for different departments. Let’s say we have two departments: Customer Service and Sales

Customer Service deals with people, while Sales deals with organizations.

Issue: Sales Dept. wants ‘Account/Company Name’ to be mandatory on “CONTACT” form , while Customer Service wants it to be non-mandatory. Both the departments do not want any change in the form design as it suits both.

Solution: Create/Copy a new contact form for either of the department. I am creating a new form for Sales department and naming it ‘Contact Sales Form’ (this form will be a copy of main information form).

Mandatory 1

Go to form properties.

Create a web resource and add it on load.

Mandatory2

Here’s the JavaScript I used:

function getFormName()

{

var Form = Xrm.Page.ui.formSelector.getCurrentItem().getLabel();

if (Form == ‘Sales Contact Form’)

{

Xrm.Page.getAttribute(“smsmt_accountname”).setRequiredLevel(“required”);

}

else

{

Xrm.Page.getAttribute(“smsmt_accountname”).setRequiredLevel(“none”);

}

}

 

Hope you find it helpful!

Happy CRM’ing!