使用Power Automate跨站点复制带元数据文件:多选列复制问题
文档库的多选列更新逻辑和普通列表不同,不能直接传入数组,必须转换为分号分隔的字符串格式才能被"更新文件属性"操作识别,以下是具体实现步骤:
1. 提取源文件的多选列值
从源文档库获取目标文件的多选列数据,通常返回的是包含Label(显示文本)和Value(内部值)的对象数组,示例结构:
[ { "Label": "项目A", "Value": "项目A" }, { "Label": "项目B", "Value": "项目B" } ]
2. 转换为兼容格式
将数组中的Value字段(若列是托管元数据类型则提取TermGuid)提取出来,用分号拼接成字符串:
- 若使用Power Automate:
- 用
选择动作,映射项选择Value字段,输出仅包含值的数组 - 用
连接动作,分隔符选择;,将数组转为字符串
- 用
- 若使用REST API:
构造请求体时直接传入分号分隔的字符串,示例:{ "__metadata": { "type": "SP.Data.DocLibNameListItem" }, "MultiChoiceColumnInternalName": "项目A;项目B" }
3. 关键注意事项
- 确保源、目标站点的多选列内部名称完全一致,且选项的
Value(或托管元数据的TermGuid)严格匹配(大小写、空格均不能出错) - 托管元数据多选列需传入术语GUID的分号拼接字符串,而非显示文本
- 不要直接将源多选列的数组绑定到更新属性字段,必须完成格式转换后再传入
内容的提问来源于stack exchange,提问作者SimonVP
相关产品推荐
相关产品推荐

