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

修改Dynamics 365 Sales代码:新建账户后预填充关联字段打开任务快速创建表单

修改代码实现Dynamics 365 Sales中创建账户后预填充任务表单Regarding字段

原代码仅能打开任务快速创建表单,无法预填充Regarding字段,需通过传递实体引用参数实现预填充,修改后的完整代码如下:

function taskFormAccount() {
    var formType = Xrm.Page.ui.getFormType();
    // 仅在新建账户表单场景下执行
    if (formType === 1) {
        // 获取当前账户的ID与名称
        var accountId = Xrm.Page.data.entity.getId();
        var accountName = Xrm.Page.getAttribute("name").getValue();
        
        // 确保账户信息已存在(保存后才会生成有效ID)
        if (accountId && accountName) {
            Xrm.Navigation.openForm({
                entityName: "task",
                useQuickCreateForm: true,
                parameters: {
                    // 配置Regarding字段的预填充值
                    regardingobjectid: `${accountId},account`,
                    regardingobjectidname: accountName
                }
            });
        }
    }
}

关键修改说明

  • 获取账户信息:通过Xrm.Page.data.entity.getId()获取新建账户的唯一ID,Xrm.Page.getAttribute("name").getValue()获取账户名称
  • 预填充参数配置:在openForm的parameters中,regardingobjectid需按[账户ID],[实体逻辑名]的格式传入,regardingobjectidname传入账户名称,以此自动填充任务表单的Regarding查找字段
  • 异常规避:添加账户ID和名称的非空判断,避免账户未保存时因无有效ID导致的预填充失败

注意事项

需将此函数绑定到账户表单的OnSave事件,并设置为保存成功后触发——新建账户只有完成保存后才会生成有效ID,此时才能正确传递预填充参数。

内容的提问来源于stack exchange,提问作者Huzaifa Mehmood

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 07:07:19