我想开发一个接口,通过 camel-sap 将数据记录传输到 SAP 功能模块。数据表包含一个 BCD 字段。Camel-sap-format (xml) 中 BCD 字段的表示形式是什么?
问问题
515 次
2 回答
1
不是您问题的完整答案,因为我还没有使用骆驼树液,但就 JCo 而言,如果可行,它会自动将任何给定值转换为 BCD 类型,即从 String、float、double、BigDecimal 或其他任何类型. ABAP BCD 类型到 Java 类型的默认数据类型映射是java.math.BigDecimal
.
我希望这有帮助。
于 2017-12-21T16:40:41.200 回答
0
正如@Trixx 所说,BCD(二进制编码十进制)ABAP 数据类型映射到Java 中的 BigDecimal。这可以在SAP 文档中找到。在 JAXB 使用的默认 XML 到 Java 绑定中,BigDecimal 映射到 XML Schema Type xsd:decimal。这可以在Java 文档中找到。
因此,您提供一个 BCD 字段作为xsd:decimal
camle-sap-format (xml) 的格式。
例子:
您的 SAP BAPI 中有一个名为 VALUE 的字段。该字段的类型为 CURR (BCD),长度为 17,小数点后两位。那么camel-sap-format(xml)中该字段的属性可以定义如下:
<xsd:attribute name="VALUE">
<xsd:simpleType>
<xsd:restriction base="**xsd:decimal**">
<totalDigits value="17"/>
<xsd:fractionDigits value="2"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:attribute>
于 2019-10-11T11:11:32.353 回答