SAP-шлюз дата-время JSON-сериализация - PullRequest
0 голосов
/ 18 декабря 2018

Я разработал сервис с использованием системы шлюза SAP посредством транзакции SEGW.Требование моего клиента - использовать данные этой службы, вызывая ее URL с помощью curl в дистрибутиве Ubuntu, где тип возвращаемых данных из шлюза SAP - JSON (с помощью? $ Format = json).

Проблема в том, что в SEGW есть поле даты (то есть Edm.DateTime), и когда необходимые данные форматируются в JSON, даты приходят в стандарт эпохи UNIX (возвращая дату как «/ Date ()/ »= Количество миллисекунд с полуночи 1 января 1970 года, например,« / Дата (1467981296000) / »).Эта служба должна использоваться с использованием JSON в качестве формата данных, в которые будет поступать дата, так как она отформатирована в стандарте ATOM (стандарт UTC, гггг-мм-ддчч: мм: сс, пример: 1970-01-01T00: 00: 01).Потребитель службы хотел бы, чтобы данные возвращались в JSON-запросе так же, как они возвращаются в XML, возвращаемом, как указано в стандарте ATOM (стандарт UTC).

Интересно, есть ли способ(параметр, например, в теле запроса), в котором можно требовать, чтобы шлюз SAP возвращал дату в формате JSON таким же образом, как она возвращается при использовании ATOM, вместо даты возврата, как указано в стандарте эпохи UNIX. У меня естьнашел несколько замечаний по этому вопросу, но безуспешно решил этот вопрос, как показано в следующих ссылках:

Дата и время в SAP Gateway Foundation -> https://blogs.sap.com/2017/01/05/date-and-time-in-sap-gateway-foundation/.

ABAPПреобразование формата TIMESTAMP в JSON -> https://answers.sap.com/questions/315043/abap-timestamp-to-json-format-conversion.html

Я думаю, что использование «строки» в качестве типа даты - это обходной путь, но я хотел бы знать, есть ли более элегантный способ решения этой проблемы.

Заранее спасибо,

Эрик.

...