API Business Hubで SAPのAPIをフル活用しよう!


アプリケーションの提供・利用形態としてSaaS(Software as a Service)と呼ばれるクラウドの利用が一般的になりつつある中で、アプリケ―ションに自社のビジネスプロセスや独自の仕様を実装するには、多くの場合制限があります。
これは、従来の自社所有型のアプリケーションが、自己責任の範囲においてコードの改変(モディフィケーション)や、未承認APIの使用などを可能にしている場合があるのに対して、SaaSにおいてはアプリケーション提供者側によりコード修正の適用やアップグレードなどが行われるために、独自仕様の実装などは不可であるか、可能な場合においても内部への影響の少ない(というか影響のない)方法を使用する必要があるためです。

アプリケーションによっては、パーソナライズを可能にする機能をもっているものも存在していますが、多くの場合はユーザインターフェースを変更するなどの機能が主体であるため、より高度な独自機能実装を行うためには、アプリケーションが提供する公開済みAPIを使用して、独自プロセスや処理を補完する他システムとの連携を行う必要があります。しかし、肝心のソリューションにおいて、どのようなAPIが準備されているのか、そのAPIはどのように使用するのか、がわからなければ、ビジネス処理の補完を行うことは困難であり、適切な処理が行えない場合、手作業などで処理の補完を行う必要が出てきます。

SAP API Business Hub概要

SAP API Business HubはSAPソリューションが提供する一連のAPIの総合カタログであり、クラウドやオンプレミスを含む各種ソリューションのAPIを一元的に検索、確認することが可能です。

図1 SAP API Business Hub の特徴

また、提供される環境を通じてAPI呼び出しテストを行うことも可能です。SAP API Business Hubでは、そのための仕組みとしてAPI Managementを使用したSANDBOXシステムを提供しています。実際のデータの準備や認証などを省略することにより、目的のAPIに関する確認を容易にしています。 API Managementに関してはこちらの投稿も合わせてご覧ください。

さらに、SAP API Business Hubには該当のAPIを 各種言語で呼び出す際のコードを生成する機能が備わっており、Javascript, Java, Curl, ABAPなどの各プログラミング言語やスクリプト、ツールに対応したサンプルコードを生成できます。ここで生成したコードを基に該当のAPIを使用したアプリケーションを構築することが可能になっています。生成コードを使用したアプリケーション作成の例は SAP Developer CommunityのTutorialでも紹介されていますので、是非お試しください。

図2 コード生成イメージ

また、SAPのWeb ベースのアプリケーション統合開発環境である、SAP Web IDE からは SAP API Business Hubが提供するAPIの項目をマッピングしたSAPUI5のアプリケーションを容易に構築することが可能です。

SAP API Business Hubは 2016年にOrlandで開催されたSAPの年次イベントであるSAPPHIRE NOWで最初の発表が行われました。 発表当初は掲載しているAPI数も限られておりましたが、現在は、まさに総合カタログと呼ぶにふさわしい相当数のAPIが掲載されております。
また、こちらでは 今年2017年のSAPPHIREで発表された SAP Leonard Machine LearningのAPIも確認できます。執筆時点でAlpha Versionのものも多数ありますが、今後にご期待いただければと思います。

図3 SAP API Business Hub – API例

SAP Web IDEによるアプリケーション構築

では、ここからは,実際にSAP Web IDEからSAP API Business Hubと連携したWebのアプリケーションの構築について簡単に説明します。 SAP Web IDEの使用方法の詳細に関しては、こちらでは多くを説明しませんのでこちらのBlogなどをご参考ください。
最初にSAP Cloud PlatformからSAP Web IDEを起動して、テンプレートベースのアプリケーション開発を選択します。 今回の例では FioriのMaster/Detailテンプレートを選択します。
テンプレート選択後、サービスカタログからSAP API Business Hubのサービスを選択します。 (環境によって事前に宛先であるDestinationの設定が必要です。helpを参照願います。)

図4 SAP API Business Hubのサービスを選択

表示されたSAP API Business Hubのサービス一覧から、アプリケーションで使用するサービスを選択します。
Fiori Master/Detailテンプレートの表示項目とAPI呼び出しで取得できるデータ項目とをバインドします。

図5 表示項目のバインド

必要項目の設定終了後、アプリケーション構築を終了し、実行を行います。
下記のようなアプリケーションが実行されます。

図6 アプリケーション実行イメージ

今回の例はSAP Hybris Cloud for Customerの顧客項目(Account Entity)を確認するAPIの例ですが、その他のAPIでも同様に構築が可能です。

まとめ

今回はSAP API Business Hubの特徴とSAP Web IDEを使用したアプリケーション構築の例を紹介しました。 SAPが提供するソリューションのAPIの総合カタログとして、今後もより多くのAPIが掲載される予定です。 現行ソリューションへの補完的機能の構築や新規アプリケーション構築のためのAPI活用への大きな支援になると思います。
ご興味のある方は是非 api.sap.comへアクセスしてみてください。