Power Automate条件过滤文件失效,Copy Files报ActionBranchingConditionNotSatisfied错误
解决Power Automate中Copy Files的ActionBranchingConditionNotSatisfied错误
这个错误本质是Copy Files操作没有拿到有效的待处理文件对象,或者分支条件触发后没有符合要求的数据进入执行环节。结合你试过的方法,给你几个针对性的调整方案:
1. 用Filter Array先筛选再循环(最可靠的方案)
不要在原文件循环里插条件分支,改为先筛选出目标文件再执行复制:
- 保留获取原始文件列表的操作(比如
Get files in folder) - 添加
Filter Array操作,把你的过滤条件在这里配置(比如文件名包含特定关键词、创建时间大于某日期),输入选择原始文件列表的输出 - 对
Filter Array的输出(表达式@body('Filter_Array'))添加Apply to Each循环 - 在循环里添加
Copy Files,源文件选择当前项的Identifier(表达式@items('Apply_to_Each')?['Identifier'])
这种方式能确保只有符合条件的文件才会进入复制流程,从根源避免无数据触发Copy Files的情况。
2. 校验条件分支的有效性
如果坚持用Condition分支,要做这两个检查:
- 在Condition的True分支开头加
Compose操作,输出当前待处理文件的所有属性(表达式@items('Apply_to_Each')),确认进入分支的文件确实有有效的Identifier属性 - 确保Condition的判断逻辑没有误判:比如不要用
null值做比较,或者用contains时要确认属性存在(比如@contains(items('Apply_to_Each')?['Name'], '目标关键词'))
3. 给Copy Files加容错判断
如果担心偶尔出现空文件对象,可以在Copy Files的源文件字段里加空值判断:
@if(empty(items('Apply_to_Each')?['Identifier']), '', items('Apply_to_Each')?['Identifier'])
同时在Copy Files操作的「运行后设置」里,把「跳过此操作出错时」设为开启,避免单个无效文件导致整个流失败。
内容的提问来源于stack exchange,提问作者cdfj
相关产品推荐
相关产品推荐

