2023 Jul 24 10:07 AM
Cloud IntegrationでIntegration Flowを作成中にエラーが発生し困っております。
下記内容をご相談させていただけると幸いです。
背景:Integration Suiteの勉強をしており、その一環としてCloud Integrationで購買発注伝票の標準APIを呼び出すIntegration Flowを作成したいと考えております。
不具合現象:Request ReplyからReceiverに矢印(OData V2)を伸ばし、Connectionタブの設定を行いました。その後、ProcessingタブでResource Path > Addressを設定しようとしたところ「Failed to Connect to system」というエラーメッセージが表示されます。
試したこと:AddressのURLの末尾に"?sap-client=xxx"を付与するとエラーが消えることが下記ブログで分かり試しました。
システムへの接続に失敗しました:SAPのOdataレシーバアダプタ|SAP コミュニティ
ただし、この方法だとDeploy後にエラーが発生してしまいます。
エラーメッセージ:com.sap.it.rt.adapter.http.api.exception.HttpResponseException: An internal server error occured: Not Acceptable : 406 : HTTP/1.1 . The MPL ID for the failed message is : AGS-PNcTLIbdl7rJMroaijd49nru
エラーメッセージからNoteを調べると、URLの末尾にsap-clientを入れないようにと記載されていました。
このような場合の解決方法をご存じの方がいらっしゃいましたらご教示いただけませんでしょうか?
以上、よろしくお願いいたします。
2023 Jul 25 4:21 AM - edited 2023 Jul 25 4:29 AM
S/4HANA 側の SICFトランザクションで、該当の OData を編集モードにして Client を指定するのはどうでしょうか?デフォルトはブランクになっていると思います。
2023 Jul 25 4:37 AM
該当のNoteはSAP Cloud Integration for data serviceのものなので、Integration SuiteのCloud Integrationとは別の機能になります。また、for data serviceのほうも、1.0.11.5148のバージョンはすでにリリースされています。
よくある間違いとしては、Query Stringをつけるときに二回以上?をつけてしまうというものがあります。
Query Stringの初回は?で始まるのですが、2個目以降を繋ぐときは&でつなぎます。
今回?$select=purchaseorderのように初回の?が指定されているので、最後にクライアントを指定したい場合は&sap-client=XXXのようにしてつないでみてください。
2023 Jul 25 7:59 AM
@masa_139 さん @MakotoS さん
ご回答ありがとうございます。
おかげさまで解決しましたので、原因と解決方法を共有させていただきます。
原因:ODataのLogon Dataが指定されていた(Tr-cd:SICF)。
デフォルトはLogon Dataがブランクになっているはずだが、使用している環境ではなぜかClientが設定されたいた。
解決方法:編集モードでLogon Dataをブランクに修正したところエラーが表示されずS/4HANA Onpremiseと正常に疎通することができた。
(Client718が指定されていたためBTPとS/4HANA Onpremiseを繋ぐCloud ConnectorのDestinationあたりで疎通がうまくいかなかった...?)
勉強を始めたばかりでQuery Stringの設定などもあまり分かっていなかったので、今後はそちらも気を付けながら設定してきたいと思います。
本件これにてクローズさせていただきます。
以上、よろしくお願いいたします。