Mule 4:批处理:批处理步骤中的接受表达式出错
我使用的批处理有多个批处理步骤 一个批次步骤的输出为:Mule 4:批处理:批处理步骤中的接受表达式出错,mule,mule4,Mule,Mule4,我使用的批处理有多个批处理步骤 一个批次步骤的输出为: [ { "CustomerId": "00", "TotalPurchase": 0 }, { "CustomerId": "11", "TotalPurchase": 1 }, { "CustomerId": "22",
[
{
"CustomerId": "00",
"TotalPurchase": 0
},
{
"CustomerId": "11",
"TotalPurchase": 1
},
{
"CustomerId": "22",
"TotalPurchase": 8
},
{
"CustomerId": "33",
"TotalPurchase": 27
},
{
"CustomerId": "44",
"TotalPurchase": 64
},
{
"CustomerId": "55",
"TotalPurchase": 125
},
{
"CustomerId": "66",
"TotalPurchase": 216
},
{
"CustomerId": "77",
"TotalPurchase": 343
},
{
"CustomerId": "88",
"TotalPurchase": 512
},
{
"CustomerId": "99",
"TotalPurchase": 729
},
{
"CustomerId": "1010",
"TotalPurchase": 1000
}
]
在下一个批处理步骤中,我将使用值为的ACCEPT EXPRESSION字段:
#[payload.TotalPurchase > 100]
但我得到了一个错误:
Types `Array` and `Number` can not be compared.
payload.TotalPurchase > 100
^^^^^^^^^^^^^^^^^^^^^
知道为什么会发生这种情况吗?也许您希望将数组的每个元素作为记录处理,但对于该输入有效负载,
#[payload.TotalPurchase]
的值为:
[
0,
1,
8,
27,
64,
125,
216,
343,
512,
729,
1000
]
这是因为DataWeave返回数组中所有TotalPurchase成员的数组。因此,不可能将计算出的数组与数字进行比较