SAP Build Process Automationはワークフロー作成ツールであり、その性質上、外部のシステムのもつAPIを呼び出す必要性に駆られることが多々あります。そういったAPIの呼出しを行う機能を持つのが「アクション」プロジェクトです。

今回は購買伝票の読み取りを例にとって、SAP S/4HANA Cloudとの連携をする際に必要となるアクションプロジェクトの設定についてご紹介します。

SAP API Business HubからAPI設計ファイルを取得する

アクションプロジェクトで呼び出すAPIの設定ファイルは、SAP API Business Hubからダウンロードすることが可能です。このサイトではSAP S/4HANA Cloudに限らず、どういったシステムと、どういったデータをやり取りしたいのかに応じて用意されたAPIが数多く公開されています。

SAP API Business Hub

使用したいAPIを検索し、詳細ページ中のOverviewタブの下部に移動すると、下図のようなセクションが現れます。ここからOpenAPIの規格で記述された、API設計ファイルをダウンロードできます。

API%u306E%u8A2D%u5B9A%u30D5%u30A1%u30A4%u30EB%u306E%u30C0%u30A6%u30F3%u30ED%u30FC%u30C9

API設計ファイルのダウンロード

この例ではJSON / YAML / EDMX の3通りの形式で提供されていますが、SAP Build Process Automationのアクションプロジェクトで利用できるのはJSONのみであることに注意してください。

SAP S/4HANA Cloudへの宛先変数を作成する

今回はSAP S/4HANA Cloudに用意されたAPIを叩くので、まずはSAP S/4HANA Cloudに向けた宛先を作成します。

%u5B9B%u5148%u3092%u4F5C%u6210%u3059%u308B

宛先を作成する

URLのフィールドには利用したいAPIのOData サービスのURLを記入する必要があります。先ほどダウンロードしたAPI設計ファイルを開き、「servers」というキー内に記述された「url」の値を取得します。

OData%u30B5%u30FC%u30D3%u30B9%u306EURL%u7279%u5B9A

ODataサービスのURL特定

hostやportは各自の環境に合わせて書き換えてください。

また、Userの欄には、こちらのブログ内で作成した通信ユーザのIDとパスワードを入力します。【SAP備忘録】SAP Build Process AutomationとSAP S/4HANA Cloudの通信設定を行う
<<ブログURL – 公開され次第貼る>>

プロパティには次の表のように入力を行います。<SID>にはお使いのSAP S/4HANA CloudテナントのSIDを記入してください。

プロパティ名
HTML5.DynamicDestination true
sap.applicationdevelopment.actions.enabled true
sap.processautomation.enabled true
WebIDEEnabled true
WebIDESystem <SID>
WebIDEUsage odata_abap,dev_abap,ui5_execute_abap,odata_gen

 

正しく設定ができていれば、Check the Connectionボタン押した際に、下図のような200: OK が返ってくるはずです。401: Unauthorizedが出てきたときはユーザの設定が間違っている可能性がありますので、通信ユーザのパスワードリセット→再設定を行ってください。

%u63A5%u7D9A%u78BA%u8A8D

接続確認

 

アクションプロジェクトを生成する

SAP Build Process Automation上で、アクションプロジェクトを生成します。

%u30A2%u30AF%u30B7%u30E7%u30F3%u30D7%u30ED%u30B8%u30A7%u30AF%u30C8%u306E%u4F5C%u6210

アクションプロジェクトの作成

アクションプロジェクトを生成すると、APIの設計ファイルのアップロードを求められますので、SAP API Business Hubからダウンロードしたファイルを指定します。

API%u8A2D%u8A08%u30D5%u30A1%u30A4%u30EB%u306E%u30A2%u30C3%u30D7%u30ED%u30FC%u30C9

API設計ファイルのアップロード

今回はOData APIを利用しているため次の画面で、APIの設計ファイル上に記述されたODataサービスの内、どのサービスを利用できるようにインポートするのかという部分について設定を求められます。ここでは必要なものだけを選択するようにしましょう。今回は以下のサービスのみを取り込みます。

GET /PurchaseOrder

OData%u30B5%u30FC%u30D3%u30B9%u306E%u9078%u629E

ODataサービスの選択

 

それではさっそく、アクションプロジェクトの中からAPIをテストとして叩いてみます。宛先のフィールドには先ほど作成したSAP S/4HANA Cloud宛の宛先を設定し、適宜クエリパラメータを設定し、テストボタンからテストリクエストを送信します。

API%u306E%u30C6%u30B9%u30C8%u5B9F%u884C

APIのテスト実行

無事、SAP S/4HANA Cloud内に保持されている購買伝票に関するオブジェクトの読み取りが行われていることが確認できます。

次に、このアクションプロジェクトを他のプロジェクト内で利用できるよう、ライブラリに公開します。右上のリリースボタンからリリースを行い、その後に現れるライブラリに公開ボタンから公開します。

アクションをプロセス内で利用する

ここまでの設定を行うと、SAP Build Process Automationの「プロセス」内にて、アクションを選択することでAPI呼び出し機能を利用できるようになります。

%u30D7%u30ED%u30BB%u30B9%u5185%u3067%u30A2%u30AF%u30B7%u30E7%u30F3%u3092%u4F7F%u3046
プロセス内でアクションを使う

ライブラリ内から、先ほど作成した購買伝票読み取りのアクションを選択します。

%u30A2%u30AF%u30B7%u30E7%u30F3%u306E%u9078%u629E

アクションの選択

プロセス内に読み込んだアクションプロジェクトは宛先を入力パラメータとして取ります。これはSAP Build Process Automationの単一プロジェクト内で設定される環境変数として定義することができます。

%u5B9B%u5148%u5909%u6570%u306E%u8A2D%u5B9A

宛先変数の設定

適当な名前を付けて詳細を記述し、作成します。

%u5B9B%u5148%u5909%u6570%u306E%u4F5C%u6210

宛先変数の作成

ここで作成した宛先変数には、デプロイ時に実際の宛先を代入していきます。

1: 概要 → 2: 実行時変数 を表示する際に環境変数の表示にすこし時間がかかるので、飛ばしてしまわないように気を付けましょう。

%u5B9B%u5148%u306E%u5272%u308A%u5F53%u3066

宛先の割り当て

以上で、SAP Build Process Automation内でSAP S/4HANA Cloudに用意されているAPIを利用するための設定は完了です。

おわりに

SAP Build Process AutomationにおけるAPIの利用にはアクションプロジェクトを作成して、それを介してプロセス内で利用する形をとっていますが、このアクションプロジェクトの作成をIT管理者が行うことにより、市民開発者に対するガバナンスを強化することが可能です。宛先サービスもアクションプロジェクトも、業務をまたいだプロセス連携の中枢となる機能です。ぜひ試してみてはいかがでしょうか。

Sara Sampaio

Sara Sampaio

Author Since: March 10, 2022

0 0 votes
Article Rating
Subscribe
Notify of
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x