PCF Multiselect Records 控件配置笔记

背景

在 Model-driven App 中,原生的 Lookup 字段只支持单选。当需要实现多选记录关联时,可以借助社区优秀的 PCF 控件来扩展。本文记录使用 Víctor Sánchez 开发的 Multiselect Records PCF 控件时,字段配置过程中遇到的关键问题。

配置要点

1. 绑定字段类型选择

不要直接绑定 Lookup 字段。 需要新建一个 Multiple Lines of Text(多行文本)类型字段来承载 PCF 控件的数据。

字段类型:Multiple Lines of Text → Text Area
绑定方式:将该字段拖入表单 → 配置为 PCF 控件

这样 PCF 控件会将选中的记录 ID 序列化存储在该文本字段中。

2. Field Filter Values 写法

如果 Filter 条件绑定的是表单上的自定义 Lookup 字段,参数写法需要在字段名后加 _value 后缀:

// 自定义 Lookup 字段「新客户」的 filter 参数
_new_accountid_value

// 而非
_new_accountid

这是因为 Lookup 字段在 DOM 中的实际值存储在 _value 属性中。

3. Columns 参数格式

配置 Columns(显示列)时,Display Name 和 fieldName 缺一不可,且格式必须严格:

[
  {
    "Display Name": "客户名称",
    "fieldName": "name"
  },
  {
    "Display Name": "客户编号",
    "fieldName": "accountnumber"
  },
  {
    "Display Name": "城市",
    "fieldName": "address1_city"
  }
]

⚠️ 注意是 Display NamefieldName,不能写成 displayNamedisplay_name

参考资源

总结

三个关键点:

问题正确做法
绑定字段使用 Multiple Lines of Text,非 Lookup
Filter 参数自定义 Lookup 加 _value 后缀
Columns 配置严格使用 Display NamefieldName

这些细节文档较少,踩坑后记录下来供参考。

💬 评论区

🍌 评论系统正在配置中(Giscus)。如需交流,欢迎通过 邮件GitHub 联系我。