web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Dynamics 365 Community / Blogs / HIMBAP / Setting Lead name based on ...

Setting Lead name based on Existing Customer

Mahendar Pal Profile Picture Mahendar Pal 45,095

Do you feel it annoying to enter First Name and Last Name in lead even Existing Contact is selected already??, if yes then this post will help you to auto populate these fields as soon as Existing Contact is selected. Lead entity contains fullname which is primary field (key attribute). It is combination for First and Last name. These fields is used to create contact record if Existing Contact lookup is not selected under lead, so based on default process when lead is qualified it will create a contact record with the value of these fields (We can write a plug-in to stop create contact record if required)

Lead1

Requirement:  We need to fill First Name and Last Name based on the Existing Contact lookup.

Solution: Existing Contact field is placed on the business process flow and logical name of the field is parentcontactid. We can write a quick script with the help of OData endpoints to get selected contact firstname and lastname and set it on the lead record. To call our script we need to place this field on lead form first. Following are the steps to implement this solution:

  • Create custom solution or open default solution by navigating Settings -> Customizations-> Customize the system
  • Add a new script web resource and upload SDK.REST.js library like below, this library comes with CRM SDK, you can find it under \SampleCode\JS\RESTEndpoint\JavaScriptRESTDataOperations\JavaScriptRESTDataOperations\Scripts

Note: If you have not downloaded CRM SDK then first download it from here and then extract it.

Lead4

  • Create another Java Script web resource and let’s name it Lead.js, we need to place following code under Text Editor:

function ParentContactId_OnChange() {

if (Xrm.Page.getAttribute(“parentcontactid”) != null) {

var ContactId = Xrm.Page.getAttribute(“parentcontactid”).getValue()[0].id;

//utilize retrieveRecord method from REST library to get data based on contact id

SDK.REST.retrieveRecord(

ContactId,

“Contact”,

null, null,

function(contact) {

//once we have data fill name fields

Xrm.Page.getAttribute(“firstname”).setValue(contact.FirstName);

Xrm.Page.getAttribute(“lastname”).setValue(contact.LastName);

Xrm.Page.getAttribute(“fullname”).setValue(contact.FirstName + ” ” + contact.LastName);

},

function Error() {

alert(“There is error in reading contact data”);

});

}

}

  • Save and close web resource
  • Double click on Lead form to open form editor by navigating Lead->Forms->Lead, under your solution, and drag and drop Parent Contact for lead on lead form from Field Explorer

Lead2

  • Double click on this field now and add our both web resources and bind on change event using following steps in below screen:

Lead3

  • Click on Display tab and uncheck following option, to hide our lookup field from lead form.

Lead5

  • Save and Clos form.
  • Click on Publish All Customizations to publish all the changes.

Now when we will select Existing Contact in lead it will auto populate Name field.

Lead6

HIMBAP | Need any help in Microsoft CRM Contact US !!

Comments

*This post is locked for comments