Невозможно запросить BAPI через OData на S / 4Hana с помощью Cloud SDK - PullRequest
0 голосов
/ 23 мая 2018

Я пытаюсь следовать https://blogs.sap.com/2017/09/15/step-11-with-sap-s4hana-cloud-sdk-virtual-data-model-for-bapi/ для вызова BAPI через OData в системе S / 4 Hana on-prem.

Я успешно вызвал другие службы OData, которые я включил через/IWFND/MAINT_SERVICE.

Однако при попытке выполнить пример вызова

final ErpConfigContext erpConfigContext = ...
return new DefaultFinancialTransactionService().getList().execute(erpConfigContext).getListOfSelectedTransactions();

я получаю:

17:34:20.998 [http-nio-8080-exec-4] ERROR 
Query execution failed with status code 404. Response body: <html><head><meta http-equiv="content-type" content="text/html; charset=windows-1252"><title>Service cannot be reached</title>...
...
    at com.sap.cloud.sdk.s4hana.connectivity.ErpEndpoint.handleHttpError(ErpEndpoint.java:600)
    at com.sap.cloud.sdk.s4hana.connectivity.ErpEndpoint.handleHttpStatus(ErpEndpoint.java:560)
    at com.sap.cloud.sdk.s4hana.connectivity.ErpEndpoint.sendPayload(ErpEndpoint.java:925)
    at com.sap.cloud.sdk.s4hana.connectivity.ErpEndpoint.executeQuery(ErpEndpoint.java:372)
    at com.sap.cloud.sdk.s4hana.connectivity.ErpEndpoint.executeQuery(ErpEndpoint.java:253)
    at com.sap.cloud.sdk.s4hana.connectivity.rfc.SoapRemoteFunctionQueryExecutor.execute(SoapRemoteFunctionQueryExecutor.java:121)
    at com.sap.cloud.sdk.s4hana.connectivity.rfc.SoapRemoteFunctionQueryExecutor.execute(SoapRemoteFunctionQueryExecutor.java:30)
    at com.sap.cloud.sdk.s4hana.connectivity.rfc.BapiQuery.execute(BapiQuery.java:91)
    at com.sap.cloud.sdk.s4hana.datamodel.bapi.functions.DefaultFinancialTransactionGetListFunction.execute(DefaultFinancialTransactionGetListFunction.java:469)

По сути, служба не может бытьнайденный.Есть ли какая-то конкретная услуга, которую я должен включить, чтобы иметь возможность вызвать эту службу?Я на самом деле хочу использовать другие BAPI, поэтому в идеале я бы хотел включить один сервис, который дает мне доступ к нескольким RFC.Обратите внимание, что я не использую Cloud Connector.Я пытаюсь подключиться напрямую к конечной точке ERP.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Для справки:

Проблема заключалась в том, что я использовал назначение HTTP для службы, которая выполняет запросы BAPI с использованием RFC.Необходима была также настройка RFC-адреса.

Ответ на мой дополнительный вопрос объясняет, как можно настроить RFC-адресат, чтобы эта служба, а такжедругие BapiQuerys работают.

0 голосов
/ 24 мая 2018

Не могли бы вы уточнить, чего именно вы хотите достичь: позвонив в BAPI или службу OData?Из вашего кода я вижу, что вы хотите вызвать BAPI для получения финансовых транзакций.С другой стороны, вы упомянули также OData.Поэтому, пожалуйста, поясните это.

Во-вторых, как вы упомянули, вы не используете SAP Cloud Connector.Вы выполняете данный код локально?

Также, пожалуйста, поделитесь с нами конфигурацией назначения.

...