Dataweave 如何在函数mapobject datawave 2.0中增加变量值?
如何在mule4 datawave2.0中增加mapobject内部的变量值(我不想使用索引)? 我的代码:Dataweave 如何在函数mapobject datawave 2.0中增加变量值?,dataweave,mulesoft,mule4,Dataweave,Mulesoft,Mule4,如何在mule4 datawave2.0中增加mapobject内部的变量值(我不想使用索引)? 我的代码: 与函数式语言一样,如DataWeave。您可以从表达式返回递增的值。例如,您可以执行一个递归函数,该函数返回增量为1的输入。假设变量在DataWeave中是不可变的 您应该首先尝试思考您要解决的问题是什么,为什么您真的需要增加该变量,以及为什么mapObject()的索引不适合该需要。您可以增加reduce操作累加器中的值,然后您可以将这些值添加到输出的结构化数据计划中。MuleSoft
与函数式语言一样,如DataWeave。您可以从表达式返回递增的值。例如,您可以执行一个递归函数,该函数返回增量为1的输入。假设变量在DataWeave中是不可变的
您应该首先尝试思考您要解决的问题是什么,为什么您真的需要增加该变量,以及为什么mapObject()的索引不适合该需要。您可以增加reduce操作累加器中的值,然后您可以将这些值添加到输出的结构化数据计划中。MuleSoft DataWeave培训课程中有一些示例
飞行输入减少(
(飞行,
行政协调会={
美国人:{价格:0,计数:0},
增量:{price:0,count:0},
联合:{价格:0,计数:0}
}
) ->
航班号
匹配{
案例美式如果(较低(美式)包含“amer”)->
acc-“美国”++美国:{
价格:根据美国价格+航班价格,
计数:根据“美国”。计数+1
}
案例增量如果(下部(增量)包含“del”)->
acc-“增量”++增量:{
价格:根据三角洲价格+航班价格,
计数:根据“增量”。计数+1
}
如果(下部(联合)包含“uni”,则案例联合->
acc-“联合”++联合:{
价格:根据联合价格+航班价格,
计数:根据“联合”。计数+1
}
else->acc
}
)
这将创建一个包含三个不同关键性能指标的数据结构:
也许您需要用一个输入示例解释您的用例,以及您期望作为输出的内容。那么我们应该能够为您提供解决方案
"Employees":{(inputData.*Employees.*Employee map{
"Employee": ($) mapObject(v,k) -> {
---Increment variable value here
(k):updateReferenceId(v,($$)+1,v)
}
})}