我以什么格式为骆驼树液提供 BCD 字段?
In what format do I supply a BCD field for camel-sap?
我想开发一个接口,通过 camel-sap 将数据记录传输到 SAP 功能模块。数据 table 包含一个 BCD 字段。 camel-sap-format (xml) 中 BCD 字段的表示形式是什么?
不是您问题的完整答案,因为我还没有使用过 camel-sap,但就 JCo 而言,如果可行,它会自动将任何给定值转换为 BCD 类型,即从 String、float、 double、BigDecimal 或任何类型。
ABAP BCD 类型到 Java 类型的默认数据类型映射是 java.math.BigDecimal
.
希望对您有所帮助。
正如@Trixx 所说,BCD(二进制编码的十进制)ABAP 数据类型映射到 Java 中的 BigDecimal。这可以在 SAP documentation. In the default XML-to-Java bindings used by JAXB, BigDecimal is mapped to the XML Schema Type xsd:decimal. This can be Found in the Java Documentation.
中找到
因此,您为 camle-sap 格式 (xml) 提供了一个 BCD 字段作为 xsd:decimal
。
示例:
您的 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>
我想开发一个接口,通过 camel-sap 将数据记录传输到 SAP 功能模块。数据 table 包含一个 BCD 字段。 camel-sap-format (xml) 中 BCD 字段的表示形式是什么?
不是您问题的完整答案,因为我还没有使用过 camel-sap,但就 JCo 而言,如果可行,它会自动将任何给定值转换为 BCD 类型,即从 String、float、 double、BigDecimal 或任何类型。
ABAP BCD 类型到 Java 类型的默认数据类型映射是 java.math.BigDecimal
.
希望对您有所帮助。
正如@Trixx 所说,BCD(二进制编码的十进制)ABAP 数据类型映射到 Java 中的 BigDecimal。这可以在 SAP documentation. In the default XML-to-Java bindings used by JAXB, BigDecimal is mapped to the XML Schema Type xsd:decimal. This can be Found in the Java Documentation.
中找到因此,您为 camle-sap 格式 (xml) 提供了一个 BCD 字段作为 xsd:decimal
。
示例:
您的 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>