Отобразить связанный объект в Dynamics 365 и JavaScript

Я создал сущность с 3 полями:

  • текстовое поле
  • числовое поле
  • отношение к аккаунту

Я создал код JS для отображения или редактирования этих полей, но есть ли способ отобразить данные из сущности Account, используя formContext из моей реальной сущности?

function test(executionContext) {
    var formContext = executionContext.getFormContext();    

    //text
    var text = formContext.data.entity.attributes.getByName('new_text').getValue();
    text.setValue("new text");

    //number
    var number = formContext.data.entity.attributes.getByName('new_number').getValue();
    number.setValue(5);

    //id field for another entity
    var number = formContext.data.entity.attributes.getByName('new_accountid').getValue();

    //my ideal solution would've look like this, but it doesn't working
    number.getParent().attributes.getByName('account_name').getValue();

}

1 ответ

Решение

Отношение к учетной записи - это поле поиска. Как получить / установить значение атрибута поиска?

Вы можете получить это значение:

var lookup = new Array();
lookup = formContext.getAttribute("Lookup Field Name").getValue();
if (lookup != null) {
    var name = lookup[0].name;
    var id = lookup[0].id;
    var entityType = lookup[0].entityType;
}

Вы можете установить его значение:

formContext.getAttribute("Lookup Field Name").setValue([{ id: recordid, name: recordname, entityType: entityname}]);

Если вы просто хотите отобразить какой-либо другой атрибут из этой поисковой записи в текущей форме сущности, вы можете использовать форму быстрого просмотра этой поисковой сущности в текущей сущности.

Если вы хотите получить другой атрибут из записи поиска учетной записи и установить его в поле формы текущего объекта, используйте Xrm.Webapi чтобы получить его и установить значение.

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