CData Software Blog

クラウド連携のCData Software の技術ブログです。

ロジレス API から取得したデータを Power BI で分析する:CData ODBC Driver

f:id:sugimomoto:20200727092448p:plain

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

今日は CData ODBC REST Driver を使って、「ロジレス」 のAPIで取得できるデータを元に Power BI で分析を行う方法を紹介したいと思います。

ロジレス とは?

LOGILESSは受注業務・出荷業務・在庫管理を自動化するクラウドサービスです。

https://www.logiless.com/

f:id:sugimomoto:20200727092424p:plain

標準で多くのモール・カートサービスに連携しており、在庫情報を自動で更新できるようになっているのが特徴です。

f:id:sugimomoto:20200727092900p:plain

またロジレス では開発者向けAPIが提供されており、API経由で商品や仕入先などの各種マスタデータや受注伝票・出荷伝票などのトランザクションデータを取得・更新できるようになっています。

https://app2.logiless.com/developer/

f:id:sugimomoto:20200727092431p:plain

実現イメージ

今回は Microsoft PowerBI から ロジレス API に接続する方法を紹介します。

PowerBI は汎用のWebコネクタやPowerQueryを用いることで各種APIに接続が可能です。しかしながら、APIに関する知識の習得はもちろんのこと、ページネーション・認証・取得したデータのスキーマ対応をどのように対応するかといった課題が存在し、分析担当者が簡単に接続できるとまでは言えません。

f:id:sugimomoto:20200727092438p:plain

そこで、CData REST Driverを用いて、このボトルネックを解決します。

各ツールが標準で持っているODBCJDBCのインターフェースを持っています。CData REST Driverはその標準インターフェースを利用し、各ツールから受け取ったSQLを変換してロジレス API へリクエストを行うようにします。

リクエスト後、Jsonフォーマットで返ってきたデータセットはCData REST ODBC Driverが各インタフェースのテーブル形式に変換してBIツールに返すようにします。

f:id:sugimomoto:20200727092448p:plain

これにより、各種ツールからアドホックSQLによるリクエストがあったタイミングで最新のデータを API から取得することが可能です。

なお、今回はPowerBIから接続としましたが、TableauやQlikなどからも同じように接続が可能である点が特徴です。各BIツールでそれぞれコネクターを作る必要がありません。

手順

それでは実際に PowerBI と ロジレス API の接続方法を説明します。

PowerBI は以下URLから予めデスクトップ版をダウンロードしておいてください。

powerbi.microsoft.com

ロジレス API 用のアプリの作成

まず以下のページに移動して、ロジレスのAPIを使うためのOAuthアプリの登録を行います。(登録にはログインが必要です)

https://app2.logiless.com/developer/console/clients

f:id:sugimomoto:20200727092458p:plain

任意のアプリケーション名を入力し、リダイレクトURLに「htto://localhost:33333」を指定します。

f:id:sugimomoto:20200727092503p:plain

作成後、対象のアプリケーションをクリックすると

f:id:sugimomoto:20200727092510p:plain

クライアントIDとクライアントシークレットが入手できます。この情報を後ほど使用します。

f:id:sugimomoto:20200727092515p:plain

REST データ処理用 RSDファイルの作成

次に、ロジレス API を CData 各種 REST DeiverがSQLとして解釈できるように設定ファイルを作成します。

以下のGitHubから保存してください。

https://github.com/sugimomoto/CData.REST.Logiless

保存先フォルダは後ほど使用するので「C:\CData_REST\Logiless」といった書き込み可能な任意のフォルダに配置してください。

CData REST ODBC Driverのインストール

PowerBI と ロジレス API を繋ぐために必要となるCData REST Driverをインストールします。

まず、以下のURLからCData REST ODBC Driverの30日間の評価版をダウンロードします。ダウンロードの際には、Emailの登録が必要となります。

https://www.cdata.com/jp/drivers/rest/download/odbc/

f:id:sugimomoto:20200115120319p:plain

f:id:sugimomoto:20200115120325p:plain

ダウンロードしたsetup.exeファイルをBIツールがインストールされているマシンにインストールします。インストールウィザードに従い、EULAを確認した上でインストールを完了します。

※途中、ライセンスサーバーへのオンラインアクティベーションが行われるためネットワーク環境に接続されている必要があります。

インストールが完了すると、ODBCのDSN設定のウィンドウが立ち上がります。

以下の項目をセットし、保存します。OAuthClientIdとOAuthClientSecretには事前に取得したロジレスOAuthアプリの各値を設定してください。また、Otherには接続先となるマーチャントIDを指定します。

f:id:sugimomoto:20200727092523p:plain

入力後「接続テスト」をクリックするとブラウザが立ち上がり、以下のようにログインを求められます。

f:id:sugimomoto:20200727092529p:plain

ログイン後、アプリケーションのアクセス許可確認画面が表示されるので「承認」をクリックします。

f:id:sugimomoto:20200727092535p:plain

ODBC DSNの画面に戻り、以下のようにメッセージが表示されればOKです。

f:id:sugimomoto:20200727092541p:plain

以上で、CData REST Driverの準備は完了です。

PowerBI からの接続

それでは、PowerBIから CData REST ODBC Driverに接続します。

PowerBI デスクトップを立ち上げて「データを取得」をクリックし

f:id:sugimomoto:20200115120336p:plain

ODBC 接続を選択します。

f:id:sugimomoto:20200115120341p:plain

データソース名から先程ODBCで登録したDSNを選択し、Windows認証で接続します。

f:id:sugimomoto:20200115120346p:plain

f:id:sugimomoto:20200115120350p:plain

すると、以下のようにテーブル化された ロジレス API のリソースが選択できるようになります。

f:id:sugimomoto:20200727092545p:plain

以上で、Power BIにフラットな形で ロジレスの商品や受注のが取り込まれます。

あとは Power BI の機能を活用して、ロジレスの受注データや在庫状況を分析できます。

f:id:sugimomoto:20200727092551p:plain

おわりに

本記事では PowerBI をもとに解説しましたが、CData REST DriverではPowerBI以外のBIツールやアナリティクスツールの接続もサポートしています。

以下のURLで各ツールの接続リファレンスを公開していますので、普段使っているツールから是非試してみてください。

http://www.cdata.com/jp/drivers/rest/

f:id:sugimomoto:20200115120402p:plain