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

如何使用自定义JavaScript填充Dynamics CRM活动类型发件人From字段

Dynamics CRM 填充From(Sender)活动参与方查找字段修复方案

现有代码的核心问题

  • 错误指定entityType为sender:sender是字段的逻辑名,不是实体类型,你需要填入待关联记录的实体逻辑名,例如用户为systemuser、客户为account、联系人为contact
  • id未赋值:必须传入待关联记录的带大括号的GUID字符串,格式参考"{7B3D42F1-1234-5678-90AB-CDEF12345678}"
  • 第二段代码存在基础语法错误:未声明lookUpObject变量、未获取formContext、未将查找对象放入数组、setValue传入的value未定义
  • 活动参与方类型的查找字段赋值时,数组内的对象必须额外指定participationTypeMask属性,发件人(Sender)对应的取值为1

可行实现代码示例

function PopulateFromLookUpField(executionContext) {
    var formContext = executionContext.getFormContext();
    // 活动参与方字段支持多值,赋值必须用数组包裹
    var senderValue = [];
    var senderRecord = {};
    // 替换为待绑定记录的实际GUID,必须带大括号
    senderRecord.id = "{替换为实际记录的GUID}";
    // 替换为待绑定记录的实际显示名称
    senderRecord.name = "Joe CRM";
    // 替换为待绑定记录的实体类型,用户填systemuser、联系人填contact以此类推
    senderRecord.entityType = "systemuser";
    // 活动参与方必填属性,发件人对应的参与类型掩码固定为1
    senderRecord.participationTypeMask = 1;
    senderValue.push(senderRecord);
    formContext.getAttribute("sender").setValue(senderValue);
}

额外注意事项

  • 代码注册到表单事件时,必须勾选「传递执行上下文作为第一个参数」选项
  • 可在表单编辑器中双击字段确认字段逻辑名,避免逻辑名填错导致赋值失效
  • 若填充后保存报错,检查当前用户对待绑定的记录有至少读取权限

内容的提问来源于stack exchange,提问作者The G

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.08 17:09:04