You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Xrm.Navigation.openForm打开表单时自动填充Parcours lookup字段

实现方案

直接读取当前Parcours表单的记录ID和主属性值填入对应参数即可,修改后的代码如下:

function NavigateQuestion(executionContext) {
    // 获取当前表单上下文
    var formContext = executionContext.getFormContext();
    var entityFormOptions = {};
    entityFormOptions["entityName"] = "zs_question";
    var formParameters = {};

    // 自动填充lookup字段参数
    formParameters["zs_parcours"] = formContext.data.entity.getId().replace(/[{}]/g, ""); // 移除GUID自带的大括号
    formParameters["zs_parcoursname"] = formContext.data.entity.getPrimaryAttributeValue();
    formParameters["zs_parcourstype"] = "zs_parcours";

    Xrm.Navigation.openForm(entityFormOptions, formParameters).then(
        function (success) {
            console.log(success);
            console.log(formParameters);
        },
        function (error) {
            console.log(error);
        }
    );
}

配置注意事项

  • 按钮在命令设计器中配置时,必须勾选「将执行上下文作为第一个参数传递」选项,否则代码无法获取当前表单数据
  • 如果需要自定义取值,也可以通过formContext.getAttribute("字段逻辑名").getValue()手动读取对应字段的值填入参数
  • 确保填入的字段逻辑名、表逻辑名和Dataverse中配置的完全一致

内容的提问来源于stack exchange,提问作者Omar Bouattour

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 05:45:04