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

解决Power Automate中‘更新项目’操作的数组列异常问题

Power Automate中Choice列被误识别为数组的解决办法

问题详情

我的SharePoint列表关联了Power Automate流,列表里有多个Choice类型列。但在流的「更新项目」操作里,其中一个Choice列被识别成了数组,鼠标悬浮该列图标时会显示「切换到数组项的详细输入」提示。其他Choice列都正常,唯独这个列的异常导致后续新增的操作自动被塞进「Apply to Each」容器,完全不符合我的需求。我试过重新创建流、反复确认SharePoint列表里该列确实是Choice类型,但问题还是没解决。

(问题截图说明:截图1展示了流中自动生成的「Apply to Each」容器包裹后续操作的情况;截图2显示了异常Choice列的悬浮提示内容)

可行解决方案

1. 检查Choice列的「允许多选」设置

大概率是这个异常列开了允许多选,这会直接让Power Automate把它当成数组处理:

  • 打开SharePoint列表设置,找到该Choice列
  • 把「允许多选」改成「不允许」(如果业务逻辑允许的话)
  • 保存设置后,回到Power Automate重新添加「更新项目」操作,该列应该会恢复成普通Choice输入,不会再触发「Apply to Each」

2. 手动构造单个Choice值(保留多选时用)

如果必须保留「允许多选」但不需要批量操作,就手动指定单个选项的格式:

  • 在「更新项目」的异常列输入框里,切换到「表达式」模式
  • 输入{Value: "你的选项文本"},把引号里的内容换成实际的选项值
  • 这样能强制让输入变成单个对象,避免触发数组迭代的「Apply to Each」

3. 重新连接SharePoint数据源,清除缓存

有时候Power Automate会缓存旧的列配置,导致识别出错:

  • 在Power Automate编辑器里找到SharePoint连接器,点击右侧「...」选择「重新连接」
  • 重新授权后,删掉原来的「更新项目」操作,再重新添加一次
  • 检查该Choice列的识别状态是否恢复正常

4. 排查上游操作的输出格式

如果上游的操作(比如「获取项目」)返回的该列值是数组,就算列本身是单选,也会导致「更新项目」识别成数组:

  • 查看上游操作的输出内容,确认该列的返回格式
  • 如果是数组但实际只需要单个值,用表达式first(上游操作的列名)提取第一个元素,再填入「更新项目」的对应列

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 00:33:24