测试动作输出长度

时间:2016-08-03 08:51:43

标签: azure-logic-apps

在我的Logic App工作流程中,我试图评估上一个动作输出数组的条件。

我的条件表达

@less(action('Get_items').outputs.length, 1)

导致错误

  

动作' Item_found'完成状态'失败'和代码' BadRequest'。

也是如此
@greater(action('Get_items').outputs.length, 1)

以及

@empty(action('Get_items').outputs)

我在这里做错了什么?

背景:action('Get_items')是使用过滤查询从SPO站点列表中检索项目的查询 操作成功,但App Run Trace不显示输出的任何详细信息,在本例中为预期的空数组。

2 个答案:

答案 0 :(得分:3)

我设法通过正确访问数组来实现所需的条件评估,方法与for-each操作相同:

@empty(body('Get_items')['value'])

documentation并未对此提示。

答案 1 :(得分:0)

对于CDS实体,可接受的解决方案不适用于我,因此我通过使用以下条件解决了该问题:

@length(body('Get_items')['value'])

如果我理解正确,它将数组转换为字符串,而将空数组转换为[],那么您只需要检查查询的输出是否大于2,就意味着Get_Items是不为空。