Проблема с десятичными знаками в свойстве OData из SAP-Gateway в мое приложение UI5
В приложении я использую службу OData с объектом, созданным с помощью SEGW в SAP-Gateway. Сущность содержит свойство, определенное как десятичное. В словаре ABAP это тип
PACKED
.
Результирующее свойство OData из импорта структуры:
Насколько мне известно, OData должна возвращать значение в виде String моему приложению. Но в моем случае результат, полученный моим приложением UI5 для этого свойства, - Числовой. Кроме того, это не соответствует определению, потому что кажется, что существует проблема округления, так что у него есть по крайней мере 12 десятичных знаков с большим количеством нулей, а затем, наконец, число.
Для большей реалистичности вот реальные данные:
В SAP таблица базы данных содержит следующее:
Когда мой GET-запрос OData теперь возвращает данные в мое приложение UI5, и я использую отладчик Chrome, я получаю следующее:
Поскольку приложение позволяет пользователю изменять данные, а затем отправляет всю запись обратно в OData-update-request, это приводит к исключению с сообщениями об ошибках, что преобразование десятичных знаков приведет к потере десятичных знаков.
Дополнительно я проверил необработанный возврат odata-service. он эффективно возвращает ожидаемое правильное значение правильным технически ожидаемым способом. Возвращает "457,53". Служба OData была вызвана моим приложением UI5 с использованием OData V2 и метода "чтения". Вывод отладчика Chrome - это консольный вывод данных, переданных обработчику успеха метода чтения Odata.
Есть ли у кого-нибудь идеи, как с этим бороться и в чем может быть проблема?