如何解决在Yaml文件中添加查找参考值
输入JSON是
%dw 2.0
output application/json
---
[
{
"Master_Job__r": {
"Description_of_Loss__c": "This is Raja","Date_of_Loss__c": "2020-06-08","Id": null,"type": "Master_Job__c"
},"Amount__c": null,"Job_Number__c": "C##-#7-00041","Property_ID__r": {
"Country__c": "United States","City__c": "Chennai","Zip__c": "77777","Address_Line_1__c": "null Testa St","type": "Home","State__c": "CA","phone__C": "948-125-6666","Job_Number__C": "GSD-45613","Phone_Ext__C": "257452","TOL_Code__c": "EARTHQUAKE","TOL_desc__c": "","PolicyNum__c": "GSD-123654","COvapplyTo__c": "0","PolicyLim__c": "156","PolDeduc__c": "1562","Covname__c": "Rup","CovType__c": "4","id__c": "4586","Date_Taken__c": "2020-08-16","Email__c": "sfadmin@demandblue.com",},"Email__C": "rupesh@gmail.com","Account_Roles__r": [
{
"Multiple_Roles__c": "Primary/Bill-to;Caller","type": "Account_Roles__c","Contact_ID__r": {
"Name": "Test QA"
}
},{
"Multiple_Roles__c": "Project Site Contact","Contact_ID__r": {
"Name": "Test DB Con002"
}
}
],"Project_Manager_Email__c": null
}
]
XML中的Dataweave代码是
%dw 2.0
output application/xml
---
XACTDOC: {(payload map(object,index)->{
ADM:{
dateofloss @("Dateofloss":payload.Master_Job__r[0].Date_of_Loss__c as String,"dateReceived":payload.Property_ID__r[0].Date_Taken__c as String):""default""
},TOLcode: {
"test": payload.Property_ID__r[0].TOL_Code__c as String,"Desc": p('Typeofloss.EARTHQUAKE')
}
})}
输出XML格式为
<?xml version='1.0' encoding='UTF-8'?>
<XACTDOC>
</ADM><Coverage_Loss><PolicyNumber PolNum="GSD-123654" claimNumber="GSD-45613"/>
<TOLcode><test>EARTHQUAKE</test><Desc>Earthquake</Desc></TOLcode></XACTDOC>
我已经在.YAML文件中创建并存储了一个Name值查找,例如
Typeofloss:
EARTHQUAKE: "Earthquake"
FIRE: "Fire"
Flood: "Flood"
FREEZE: "Freeze"
VANDALISM: "Vandalism"
ENVIRONMENT: "Environmental Remediation"
STORM: "Hurrican/Tornado/Blizzard/Noreaster"
现在我的要求是,如果TOL_CODE“测试”字段为“暴风雨”,那么我需要将“ DESC”字段作为“飓风/龙卷风/暴雪/无灾难”作为输出。 我将动态获取输入TOL_CODE值。 我们如何在不手动输入的情况下获取Dataweave表达式中的查找值。 我尝试了这种逻辑,但无法正常工作。
“测试”:payload.Property_ID__r [0] .TOL_Code__c作为字符串, “ Desc”:p('Typeofloss。'+ payload.Property_ID__r [0] .TOL_Code__c)
解决方法
使用++
来连接Desc字段的字符串,即
"Desc": p('Typeofloss.' ++ payload.Property_ID__r[0].TOL_Code__c)
参考:https://docs.mulesoft.com/mule-runtime/4.3/dw-core-functions-plusplus#plusplus2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。