Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mule 在Dataweave中添加条件检查时出错_Mule_Anypoint Studio_Dataweave - Fatal编程技术网

Mule 在Dataweave中添加条件检查时出错

Mule 在Dataweave中添加条件检查时出错,mule,anypoint-studio,dataweave,Mule,Anypoint Studio,Dataweave,我正在使用Anypoint Studio 6.1和Mule 3.8.1 我有一个来自CSV文件的布尔字段,我想添加代码来清理数据,例如,将“Y”、“Yes”转换为true或将其设置为false 我只希望在字段有值的情况下代码才能工作。如果它是“”,则我希望忽略它。如果它已填充,则清除数据。我原以为添加when语句就是答案,但它在预览中出错了。我如何使这成为一个有条件的检查 数据编织代码: (payload filter $$ > 2) map ((payload01 , indexOfPa

我正在使用Anypoint Studio 6.1和Mule 3.8.1

我有一个来自CSV文件的布尔字段,我想添加代码来清理数据,例如,将“Y”、“Yes”转换为true或将其设置为false

我只希望在字段有值的情况下代码才能工作。如果它是“”,则我希望忽略它。如果它已填充,则清除数据。我原以为添加when语句就是答案,但它在预览中出错了。我如何使这成为一个有条件的检查

数据编织代码:

(payload filter $$ > 2) map ((payload01 , indexOfPayload01) -> {
    ({
        isPaid: true
    }
        when payload01.balanced != ''
        and ((lower payload01.balanced == 'yes'
        or (lower payload01.balanced) == 'y'
        or (lower payload01.balanced ) == 'true')
        otherwise {
        isPaid: false
    })
})
})


试试上面的方法。

请添加一些英文文本来解释您的答案。不要只发布代码答案。
Please use below code snipped of Data Weave:
(payload filter $$ > 2) map ((payload01 , indexOfPayload01) -> {
({
    isPaid: true    when ((payload01.balanced != '')
                    and ((lower payload01.balanced) == 'yes')
                    or ((lower payload01.balanced) == 'y')
                    or ((lower payload01.balanced ) == 'true')) otherwise false
})
   (payload filter $$ > 2) map ((payload01 , indexOfPayload01) -> {
({
    isPaid: true
}
    when payload01.balanced?
    and ((lower payload01.balanced == 'yes'
    or (lower payload01.balanced) == 'y'
    or (lower payload01.balanced ) == 'true')
    otherwise {
    isPaid: false
})