在 Dynamics 365 和 JavaScript 中显示相关实体

display related entity in Dynamics 365 and JavaScript

我创建了包含 3 个字段的实体:

我创建了 JS 代码来显示或编辑这些字段,但是有没有一种方法可以使用我实际实体中的 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();

}

与客户的关系是一个查找字段。 How to get/set the lookup attribute value?

您可以通过以下方式获取它的价值:

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 获取它并设置值。