Hi MedWong,
Please check Steve Zhao comment.
On that point you need to make changes and the modified function will look like below:
function OpenAndSaveForm(executionContext) {
//Get the form context
var formContext = executionContext.getFormContext();
// Get the form type
var formType = formContext.ui.getFormType();
if(formType == 1) { //create form
try {
// for default company
var globalContext = Xrm.Utility.getGlobalContext();
var userId = globalContext.userSettings.userId;
Xrm.WebApi.online.retrieveRecord("systemuser", userId, "?$expand=cdm_Company($select=cdm_companyid,cdm_name)").then(
function success(result) {
if (result.hasOwnProperty("cdm_Company")) {
var cdm_Company_cdm_companyid = result["cdm_Company"]["cdm_companyid"];
var cdm_Company_cdm_name = result["cdm_Company"]["cdm_name"];
var companyLookup = new Array();
companyLookup[0] = new Object();
companyLookup[0].id = cdm_Company_cdm_companyid;
companyLookup[0].name = cdm_Company_cdm_name;
companyLookup[0].entityType = "cdm_company";
formContext.getAttribute("mscrm_company").setValue(companyLookup);
formContext.data.entity.save();
}},
function(error) {
console.log(error.message);
});
}
catch (e) {
Xrm.Utility.alertDialog(e.message);
}
}
}
You can use above function. Now it is error free.
Thanks,
Pradeep