SAP Ariba/Business Network の注文データ(Buyer・Supplier)をPower BI で分析・可視化する方法:CData SAP Ariba Driver

こんにちは。CData Software Japan リードエンジニアの杉本です。

今回はCData から新しくリリースされるSAP Ariba 連携用コネクターについて紹介したいと思います。

※本コネクターは2023/10/27日時点でベータ製品としてクローズドに提供しています。正式リリース前に先行して試してみたい方はお気軽にお問い合わせください。

https://www.cdata.com/jp/contact/

SAP Ariba とは?

ERP 製品で有名なSAP社が提供する直接材/間接材支出管理のトータルソリューションサービスです。

https://www.sap.com/japan/products/spend-management.html

CData Ariba コネクターとは?

SAP Ariba はシナリオ毎の様々なプロダクトが包括的に含まれたサービスですので、機能もそれぞれのプロダクト毎に大きくことなります。

調達系として利用する「Supplier Risk」「SLP」「Sourcing」「Contracts」、調達・購買向けの「Buying & Invoicing」バイヤー・サプライヤがやり取りするために、「Business Network for Buyer」「Business Network for Supplier」があります。

それぞれで利用するAPIが異なるため、現在CData では「SAP Ariba Procurement」「SAP Ariba Source」という2種類のドライバーでそれぞれの製品のAPIに対応しています。

詳しくは以下の表をご覧ください。

カテゴリ

製品名

CData Driver

CData Data Model

API

調達系

Supplier Risk

サプライヤーリスク管理

 

 

API Reference

調達系

SLP

サプライヤーライフサイクル&パフォーマンス

SAP Ariba Source

Supplier Data API With Pagination V4 Data Model

API Reference

調達系

Sourcing

ソーシング

SAP Ariba Source

Sourcing Project Management API V2 Data Model

API Reference

調達系

Contracts

契約管理

SAP Ariba Source

Contract API V1 Data Model

API Reference

購買系

Buying & Invoicing

調達・購買

 

 

API Reference

Business Network

Business Network for Buyer

SAP Ariba Procurement

Purchase Orders Buyer API V1 Data Model

API Reference

Business Network

Business Network for Supplier

SAP Ariba Procurement

Purchase Orders Supplier API V1 Data Model

API Reference


今回はこの中の「Business Network for Buyer」「Business Network for Supplier」のAPIに接続が可能な「CData SAP Ariba Procurement Driver」の使い方・Microsoft のPower BI から本APIにアクセスし、データ分析をする方法を紹介します。

本記事のシナリオ:SAP Ariba 上でのレポートの課題

今回は前述の通り Microsoft のBIツール Power BI からSAP Ariba API に接続しますが、SAP Ariba API は単純にツールと接続することはできません。

認証方式やデータモデルなど標準機能では賄うことが難しい、API仕様の多様性への対応が必要になるためです。

そこで、CData が提供する各種コネクタを利用してこの課題を解決します。

まず、各ツールからはODBCインタフェースでSQL(Select文)をCData Driverに向けて発行してもらいます。そのリクエストを受け取った、CData Driverは、SAP Ariba API のエンドポイントに対して、SQL文を解釈し、HTTPリクエスト形式に変換します。

リクエスト後、JSON フォーマットで返ってきたデータセットはCData DriverがODBCインタフェースのResultsetに変換してツールに返します。

これにより、各種ツールからはAPIの仕様を意識せずにデータアクセスを達成することができるようになります。

ちなみにSAP Ariba ではデータ分析用のレポート機能が提供されていますが、データロードの頻度などに制限があり、「現時点のデータを見て業務を処理したい!」と思っても、うまく対応できない部分があります。

https://help.sap.com/docs/buying-invoicing/reporting-fact-reference/purchase-order-procurement-invoicing-reporting-fact?locale=ja-JP&version=2305

そういったシチュエーションの場合、リアルタイムにデータアクセスが可能なAPI は有効な手段となり、今回のようなBIツール連携は効力を発揮することでしょう。

手順

それでは実際にCData のコネクタを使ったPower BI とSAP Ariba/Business Network API の連携方法について解説していきます。

Ariba API の利用準備

まずSAP Ariba/Business Network API を使うにあたっての準備を行います。

API を利用するためにはOAuth のアプリケーション作成およびAPIクライアントの接続設定が必要となりますので、この設定を進めていきます。

本記事ではサプライヤー側としての利用方法の手順で進めていきますが、基本的な設定はバイヤー側も一緒です。

まずは以下のURLにアクセスし、ログインします。

https://developer.ariba.com/api/home

「Create Application」をクリックし、新しくAPI アクセスのためのアプリ作成を進めます。

最初にアプリケーションの名前と説明を入力します。

作成が完了したら、アクセスしたいAPI のリクエストを発行します。「Actions」→「Request API Access」をクリックし

「Select an API」から「Ariba network Purchase Orders Supplier API」を選択します。

次に、接続対象として利用しているSAP Business Network のSupplier Realm を選択します。

これで「Submit」をクリックすることでリクエストが行われます。リクエストはAriba側の承認を待つ必要があるようです。タイミングにもよるかもしれませんが、私が試した時は1日で完了しました。

承認されたらSecret Keyをジェネレートし、OAuth Client Id、Application Keyを一緒に控えておきましょう。

最後にSAP Business Network に管理者アカウントでログインし、「アカウント設定」→「API管理」の画面で先程作成したアプリケーションのClient Idを指定し、保存します。

これでAPI 側の準備は完了です。

CData SAP Ariba Procurement ODBC Driver のインストール

続いてCData SAP Ariba Procurement ODBC Driver を対象のマシンにインストールします。

なお、本記事公開時点ではまだベータバージョンであるため、CData Web Siteでは公開していません。「ベータバージョンで良いので使ってみたい!」という方は以下のお問い合わせフォームまでお気軽にお問い合わせください。

https://www.cdata.com/jp/contact/

インストーラーを入手後、対象のマシンでセットアップを進めていきます。

セットアップが完了すると、以下のようにODBC DSNの接続設定画面が表示されるので、SAP Business Network への認証に必要な情報を入力します。

プロパティ

設定値

備考

ANID

例)AN000000000

接続先のAriba Network realm IDを指定します。

API Key

例)LhvlBq61efewf13r13r13f13r3f5g43

作成したアプリケーションのApplication Key を指定します。

API

 

PurchaseOrdersSupplierAPI-V1

BuyerもしくはSupplierどちらかを指定します。

Auth Scheme

OAuthClient

 

OAuth Client Id

例)XXXXXXX-XXXX-XXXX-XXXX-XXXXXXXX

作成したアプリケーションのClient Idを指定します。

OAuth Client Secret

例)PMd723r23nifn3283iehw923190fdjAS

作成したアプリケーションのClient Secret を指定します。

Environment

PRODUCTION

 

入力完了後「Test Connection」をクリックして、以下のようにメッセージが表示されればOKです。

接続完了後、「Data Model」のページに移動することで、利用できるデータのテーブル・項目一覧が確認できます。

また、プレビューをクリックすることで、実際に取得できるデータも確認可能です。

Power BI からSAP Ariba/Business Network API に接続

それでは、実際にPower BI Desktop を使ってSAP Ariba/Business Network のデータにアクセスしてみましょう。


まずPower BI Desktop を立ち上げて「データを取得」をクリックします。

データソースの一覧から「ODBC」を選択し

事前に作成しておいたCData SAP Ariba Procurement ODBC Driver のDSN を選択します。

接続を進めると、以下のようにOrdersのデータを取得するためのテーブルが表示されるので、これらを選択して「読み込み」をクリックしましょう。

ちなみに、SAP Ariba/Business Network API は仕様上、30日間のデータのみが取得可能となっています。もし取得したい範囲を調整したい場合、以下のように「ODBCからインポート」画面の「SQLステートメント」を利用して、取得範囲をSQLで調整できます。

SELECT * FROM Orders WHERE StartDate = '2023/06/01' AND EndDate = '2023/06/30';

これで以下のようにSAP Ariba/Business Network のデータをPowre BI にロードできます。

あとはPower BI の機能を駆使して、Orders データを分析・可視化することが可能です。

おわりに

このようにAPI の専門的な知識がなくても、CData Driver を利用することで様々なAPI に対して自分の好きなBIツールから接続することが可能です。

今回紹介したSAP Ariba/Business Network API以外にも様々なAPI コネクターを公開していますので、ぜひ自社で使っているサービスに合わせて活用してみてください。

https://www.cdata.com/jp/drivers/

実際に試していく中で、「このAPI にもつなぎたい」「こういう時はどうすればいいの?」といった気になる部分があれば、お気軽にテクニカルサポートフォームまでお問い合わせください。

https://www.cdata.com/jp/support/submit.asp

トライアル・お問い合わせ

関連コンテンツ