我正在尝试将数据从xml(输入文件)映射到开发人员salesforce版本。
输入文件:
<Z0DEBMAS>
<E1KNA1M SEGMENT="1">
<KUNNR>0030003926</KUNNR>
<NAME1>SAMS CLUB #6493</NAME1>
<VKORG>4571</VKORG>
</E1KNA1M>
</Z0DEBMAS>
Mule中的Dataweave代码:
<dw:transform-message doc:name="Transform XML to sfdc">
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
payload.Z0DEBMAS.*E1KNA1M map {
AccountNumber: $.KUNNR,
Name: $.NAME1,
Sales_Organization__c: $.VKORG
}]]></dw:set-payload>
</dw:transform-message>
我只获取条目KUNNR和NAME1但不输入VKORG ,我得到的VKORG为空值,如下所示。
Mule控制台中的输出:
INFO 2016-08-25 12:30:06,169 [[xmltosfdc_realtime].xmltosfdc_realtimeFlow.stage1.02] org.mule.api.processor.LoggerMessageProcessor: **[{AccountNumber=0030003926, Name=SAMS CLUB #6493, *Sales_Organization__c=null*}]**
INFO 2016-08-25 12:30:09,467 [[xmltosfdc_realtime].xmltosfdc_realtimeFlow.stage1.02] org.mule.api.processor.LoggerMessageProcessor: [[SaveResult errors='{[0]}'
id='0012800000poeQRAAY'
success='true'
以下是要在salesforce中映射的字段的数据类型:
如果有人可以帮助我,请告诉我。
答案 0 :(得分:0)
由于数据类型不同,显然未映射销售组织。如果引用预期的datatype,它应该是数字/数字。
错误地,从DataWeave转换的结果是String。因此,我建议您将其转换为数字,例如:Sales_Organization__c: $.VKORG as :number
为整数,或Sales_Organization__c: $.VKORG as :number {class: "java.math.BigDecimal"}
为BigDecimal