請求書作成サービスMisocaのデータをPower BI ☓ CData REST ODBCドライバーを利用して分析できるようにしてみる
以前の記事で、REST Driverを利用したExcel Add-inでの連係方法を紹介しましたが、
今回はもう少し実践的な内容で、ビジネスアプリケーションのAPIをCData REST ODBCドライバー経由で、Power BIに繋げてみようと思います!
対象とするサービスは、SaaSの請求書作成サービスであるMisocaです。
請求書作成サービス「Misoca」
詳しくは以下のページからどうぞ!
Misocaを使えばたった1分で請求書・見積書・納品書の作成が可能です。 メール送付・PDF発行・リンク共有・郵送もワンクリックで完結。 経理業務の手間を大幅に効率化します。 また、見積書から注文書・請求書への変換や、請求書から領収書・検収書の作成もカンタンに行えます。転記ミスや記入漏れなどの心配はもうありません。 エクセルでは実現できなかった経理業務の苦労を、Misocaでは解決します。
MisocaではREST APIを提供しており、OAuth 2.0の認証経由でアクセスすることができます。
以下で詳しいドキュメントを公開しているので、どうぞ。
Misoca API について · Misoca(ミソカ) API
具体的なAPI仕様はSwaggerで公開しているのがありがたいです。
アクセスできるデータの種類は、Contact(取引先)とEstimate(見積書)の2種類で
最終的には、以下のようなイメージで、Misocaに格納されているEstimateデータをPower BIで表現できるようにしたいと思います。
なお、この記事はCData Software User Group Advent Calendar 2017の12日目です。
事前準備
・Misocaアカウント
・Power BI Desktop
・CData REST ODBC Driver
CData REST ODBC Driverは以下からダウンロードすることが可能です。
アプリケーション登録・API Access Token の取得方法
最初に、OAuth 2.0経由でAccess Tokenを取得するために、アプリケーション登録を行います。
詳しい手順は以下にも書かれています。
まずMisoca にログインした状態で、 https://app.misoca.jp/oauth2/applications にアクセスし、[新しいアプリケーションの登録]をクリックします。
新しいアプリケーションの登録画面が表示されるので、アプリケーションの名称とRedirect URIを指定します。
今回は、PostManを使って、Access Tokenを取得したいと思うので、RedirectURIにPostmanのURI「https://www.getpostman.com/oauth2/callback」を指定します。
なお、PostManを用いた、Access Tokenの取得方法は下のBlogでも紹介しているので、参考にしてみてください。
登録後、以下のような形でApplication IDとSecretが表示されるので、控えておきましょう。
それでは、Access Tokenの取得です。
Postmanを起動して、[Authorization]タブの[Type]から[OAuth 2.0]を選択し、[Get New Access Token]をクリックします。
Accessトークンを取得するためのプロパティは以下のように入力します。
[Token Name] ← 名前を自由に。
[Auth URL] ← https://app.misoca.jp/oauth2/authorize
[Access Token URL] ← https://app.misoca.jp/oauth2/token
[Client ID] ← Misocaに登録したアプリケーションのApplication ID
[Client Secret] ← Misocaに登録したアプリケーションのSeacret
[Scope] ← Write
[Grant Type] ← Authorization Code
入力後、Request Tokenをクリックすると、MISOCSのログイン画面が表示されるので、[弥生IDでログイン]をクリックし
ID・パスワード入力後、承認画面が表示されるので、承認をクリックします。
では、このAccessトークンを用いて、ODBC接続を構成してみましょう。
ODBCドライバー・Power BIの設定
RESTドライバーは事前にどのようにJSONをテーブル形式で扱うか、定義する必要があります。
自力で作成することもできますが、以下のGithubに私が作成した定義ファイル(.rsd)があるので、こちらを利用してみてください。
その上で、CData ODBC REST Driverをインストール後、ODBC データソースアドミニストレータを立ち上げて、CData REST Sourceの接続情報を構成します。
必要なのは、上記Githubからダウンロードしたrsbファイルが配置されているフォルダのLocationとAccess Tokenの入力です。
Access Tokenは以下のような形でOther部分に[OAuth Access Token = XXXXXXXXXX]に入力します。
これでODBC側は設定完了です。
あとは、Power BIを使って、ODBCデータソースを読み込むだけです。
Power BIを立ち上げて、[Get Data]をクリックし
データソース一覧から[ODBC]を選択
先程ODBCデータソースアドミニストレータで設定した CData REST Sourceを選択し、[OK]をクリック
すると、rsdファイルで定義されたテーブル一覧が表示されるので、[Estimates]を選択します。
Loadをクリックすると、Power BIにデータがロードされるので、これで分析のための準備は完了です。
あとは、Power BIのお作法に従い、グラフや一覧を配置することで、以下のようなレポートを作成することができます。
以上のような形で、Power BIにデータソースとして直接指定できないWeb APIでも、ODBC Driver経由でデータアクセスが可能なことがイメージいただけたのではないでしょうか。
おわりに
いかがでしたでしょうか。
MisocaのWeb APIは金額情報を含めた見積書のデータなので、かなり分析しがいのあるデータソースかと思います。
今回はPower BIとODBC REST Driverとの組み合わせでしたが、同じrsdファイルを利用してもらえれば、TableuとJDBC REST DriverでもBIレポートを構成することが可能です。
是非、試してみてください。