In my case, I will select a contact from lookup and it will fill the account lookup field.
function OnContactChange(executionContext) {
var formContext = executionContext.getFormContext();
if (formContext.getAttribute("parentcontactid").getValue() != null) {
var CustomerId = formContext.getAttribute("parentcontactid").getValue()[0].id.slice(1, -1);
var CustomerName = formContext.getAttribute("parentcontactid").getValue()[0].name;
var CustomerType = formContext.getAttribute("parentcontactid").getValue()[0].entityType;
// Call contact API
Xrm.WebApi.retrieveRecord("contact", CustomerId, "?$select=_parentcustomerid_value").then(
function success(contactresult) {
// Call Account
Xrm.WebApi.retrieveRecord("account", contactresult._parentcustomerid_value, "?$select=accountid,name").then(
function success(result) {
var setaccountlookupData = new Array();
setaccountlookupData[0] = new Object();
setaccountlookupData[0].id = result.accountid;
setaccountlookupData[0].name = result.name;
setaccountlookupData[0].entityType = 'account';
console.log(setaccountlookupData);
// Set Account value
formContext.getAttribute("parentaccountid").setValue(setaccountlookupData);
},
function (error) {
console.log(error.message);
}
);
},
function (error) {
console.log(error.message);
}
);
}
}
Comments
Post a Comment