Проблемы в некоторых javascripts после обновления до Dynamics CRM Online 2016

Мы только что обновили один из наших экземпляров Dynamics CRM с CRM Online 2015 до CRM Online 2016.

В то время как я мог видеть, что остальные функциональные возможности работают должным образом, в конкретном сценарии для нас есть главный ограничитель показа:

Ниже приведен код из функции сценария Java, который вызывается во время загрузки страницы:

function SetDefaultValuesInLookup()
{
  Xrm.Page.getAttribute("new_applicationcontactid").setValue([{ id: 
records.new_Contact.Id, name: records.new_Contact.Name, entityType: records.new_Contact.LogicalName }]);

  ........

  Xrm.Page.getAttribute("new_applicationtype").setValue(1000002);
}

function ShowHideFields()
{
  var applicationtype = Xrm.Page.getAttribute("new_applicationtype").getValue();

  ...............

}

Подводя итог, функция SetDefaultValuesInLookup устанавливает значение для поля поиска "Application Contact Id" в форме, а также устанавливает "new_applicationtype" на основе некоторого условия.

Эти две функции регистрируются в форме загрузки для выполнения в заказе. однако проблема в том, что - иногда метод SetDefaultValuesInLookup внезапно завершается после выполнения первого значения getAttribute, или, если метод завершает свое выполнение, мы не получаем значение в поле new_applicationtype. Или иногда оба метода работают правильно.

Я попытался отладить код и увидел, что мы получаем свойства Id, Name и LogicalName, которые заполняются каждый раз, поэтому на этом уровне проблем нет.

Мне интересно, есть ли здесь что-то, что не поддерживается в CRM 2016? Кроме того, эта функциональность все еще отлично работает в Online 2015.

1 ответ

Решение

Попробуйте с приведенным ниже кодом, у меня это сработало

var object = new Array();
  object[0] = new Object();
  object[0].id = records.new_Contact.Id;
  object[0].name = records.new_Contact.Name;
  object[0].entityType = records.new_Contact.LogicalName;
  Xrm.Page.getAttribute(fieldName).setValue(object);

Другие вопросы по тегам