Почтовый сервис с несколькими записями - PullRequest
1 голос
/ 11 марта 2020

Я хотел бы знать, как публиковать несколько записей в SAP, используя «BatchRequestBuilder» вместе с ChangeSet. Я использую пользовательский вызов службы odata (ODataCreateRequestBuilder), а не модель VDM. Я не получил ни одного блога или документации для начала.

Не могли бы вы помочь мне в этом вопросе.

Обновлено:
Ниже приведено то, что я пытаюсь опубликовать в SAP [ { "purchaseSchAgrmntNo": "", "customerMaterialNumber": "", "растение": "", "vendorNo": ""}, { "purchaseSchAgrmntNo": "", "customerMaterialNumber": "", "растение":» "," vendorNo ":" "}]

Версия SAP SDK: 3.9.0

Ниже добавлен код только с одним CreateRequest.

ChangeSet changeSet = new ChangeSetBuilder () .addCreateRequest (ODataCreateRequestBuilder.withEntity (sapConfig.getServiceUrlRepriceList (), sapConfig.getEntityRepriceList ()) .withBodyAsMap (responseBody) .build ()) * URL? "). AddChangeSet (changeSet) .build (). Execute (httpClient);

Можете ли вы сообщить мне, если это правильно. Также дайте мне знать, что я должен передать в сервисе. URL службы?

Спасибо, Арун Пай

1 Ответ

2 голосов
/ 11 марта 2020

BatchRequestBuilder на самом деле не является частью SAP Cloud SDK, а является зависимостью, которую SDK использует внутри для выполнения пакетных запросов. Вот почему на уровне SDK нет документации о том, как его использовать.

Грубо говоря, пакетный запрос состоит из нескольких наборов изменений, которые, в свою очередь, группируют несколько операций. ChangeSetBuilder позволяет создавать наборы изменений, которые затем можно передать BatchRequestBuilder.

Поэтому, если вы хотите запускать запросы на создание в пакетном режиме, вам нужно использовать public ChangeSetBuilder addCreateRequest(ODataCreateRequest oDataCreateRequest).

. Вы можете посмотреть, как SAP Cloud SDK использует эти классы для создания пакета. просит понять, как это работает в деталях. В качестве отправной точки посмотрите на BatchFluentHelperBasic. Однако, если вы не знаете сервис, который вы хотите запросить во время компиляции, я рекомендую вам использовать генератор для генерации этого кода, чтобы вы могли использовать VDM вместо этого, что упрощает это.

Если вы расширяете Ваш вопрос, чтобы получить более конкретную c информацию о том, чего вы на самом деле хотите достичь, я могу расширить свой ответ, чтобы привести более конкретный пример. Также, пожалуйста, укажите версию SDK, которую вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...