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

SetProperty()未按预期更新对象,Compose动作变量更新及多逻辑实现求助

Power Automate 变量更新问题解答

变量未更新的原因

setProperty函数的本质是创建并返回一个修改后的新对象,它不会直接修改原变量的内容。你当前只是在Compose动作里输出了这个新对象,但没有把新对象重新赋值给HasAtLeast1AttachmentsWith变量,所以原变量会一直保持初始的{"CapitalCall":"False"}。

要让变量真正更新,你需要:

  • 保留Compose里的表达式(或者直接把表达式写在“设置变量”动作中)
  • 添加一个设置变量动作,将Compose的输出结果赋值给HasAtLeast1AttachmentsWith变量

单个Compose实现多次字段更新

可以实现。你只需要嵌套使用setProperty函数,在一个表达式里完成多字段的条件更新。比如同时处理两个字段的逻辑:

setProperty(
    setProperty(
        variables('HasAtLeast1AttachmentsWith'),
        'CapitalCall',
        if(你的条件1, 'True', 'False')
    ),
    'AnotherField',
    if(你的条件2, 'True', 'False')
)

这个表达式会先基于原对象修改CapitalCall字段,再基于修改后的对象修改AnotherField字段,最终生成包含所有更新的新对象。之后同样需要通过“设置变量”动作把结果赋值回原变量。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 11:14:59