В каком формате я могу предоставить поле BCD для Camel-Sap?

Я хотел бы разработать интерфейс, который передает запись данных через Camel-Sap в функциональный модуль SAP. Таблица данных содержит поле BCD. Каково представление поля BCD в формате camel-sap (xml)?

1 ответ

Не полный ответ на ваш вопрос, потому что я еще не использовал верблюжий сок, но что касается JCo, он автоматически преобразует любое заданное значение в тип BCD, если это возможно, то есть из String, float, double, BigDecimal или чего-либо еще, Отображение типа данных по умолчанию для типа BCD ABAP с типом Java: java.math.BigDecimal,

Надеюсь, это поможет.

Как сказал @Trixx, тип данных ABAP BCD (Binary Coded Decimal) отображается в BigDecimal в Java. Это можно найти в документации SAP. В привязках XML к Java по умолчанию, используемых JAXB, BigDecimal сопоставляется с типом схемы XML xsd: decimal. Это можно найти в документации Java.

Таким образом, вы предоставляете поле BCD как xsd:decimal для формата camle-sap (xml).


Пример:

В вашем SAP BAPI есть поле VALUE. Поле имеет тип CURR (BCD) и имеет длину 17 с двумя десятичными знаками. Тогда атрибут для этого поля в формате camel-sap (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>
Другие вопросы по тегам