CData Software Blog

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

BI ツール DataNature を使って kintone 案件管理のクロス集計レポートを作成してみる:CData ODBC Driver for kintone

こんにちは! 検証どっぷり、CData Software Japan リードエンジニアの杉本です。

CData Driver は様々なツールからODBCJDBCといった共通規格で各種 Web API に接続できるので、日々新しいツールとの連携・APIエコシステムの拡大を求めて、アンテナを張っています!

本日は最近新しく検証した BI ツール、株式会社 エヌジェーケーが提供する「DataNature」と「kintone」の接続方法を紹介したいと思います。

DataNature とは?

f:id:sugimomoto:20190212172947p:plain

Datanature は 株式会社 エヌジェーケーが提供する BI ツールです。

datanature.njk.co.jp

低価格、短期間導入、簡単操作が特長のBIツールです。(BI : Business Intelligence、ビジネス・インテリジェンス) 基幹システムのRDB連携から、臨機応変なデータ集計・活用・分析、定型帳票のWebレポート/PDF/Excel出力まで、現場ユーザーの目線で、中堅・中小企業データの見える化を高い費用対効果でご支援します。

この記事では DataNature と CData ODBC Driver for kintone を使って、案件管理データを元に製品と月ごとの見込み時期をかけ合わせたクロス集計レポートを作成します。

f:id:sugimomoto:20190212173009p:plain

実現イメージ

今回は DataNature から kintone API に接続しますが、DataNature は単純に kintone と接続することができません。

それは DataNature がどのように kintone API 側へリクエストを投げるべきかの判断材料やメタデータの情報が無いためです。

f:id:sugimomoto:20190212173750p:plain

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

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

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

f:id:sugimomoto:20190212173807p:plain

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

それでは実際に、DataNature を使って kintone データを元にした簡単な帳票を作成してみたいと思います。

必要なもの

  1. DataNature
  2. kintone アカウント
  3. CData ODBC kintone Dirver

DataNature のインストール

DataNature は以下のサイトからトライアル版を取得できます。

https://datanature.njk.co.jp/experience/

「DataNature Smart ver.4 トライアル版 (size:405MB )」をダウンロードし、クライアントツールと管理ツールをセットアップしてください。

f:id:sugimomoto:20190212173031p:plain

CData kintone ODBC Driverのインストール

以下のサイトから評価版ビルドをダウンロードします。

ダウンロードされたインストーラ形式(.exe)のファイルを起動します。 (注)ODBCデータアドミニストレーターを閉じてから実行してください。 (注)途中オンラインでのアクティベーションが実行されるためインターネットアクセス出来る環境で行ってください。

下記のようなインストーラが起動するので、ライセンス契約書を確認した上で、デフォルト設定のままインストールを進めて完了させます。

image.png

インストールが完了するとデフォルトブラウザが起動して製品ヘルプファイルが起動します。 image.png

また、ODBCのDSN構成ダイアログが表示されます。 image.png

(注)ODBCデータソースアドミニストレーターはマシンのビット数(32bit, 64bit)にあった方をご利用ください。

CData kintone ODBC Driverの接続設定

ODBCのDSN設定

起動した「ODBCのDSN構成」ダイアログ内の下記の項目に、kintone評価版アカウント取得、および、サンプルアプリケーションの作成方法で事前に取得した接続情報を設定します。

kintoneの接続情報 設定項目
ユーザID User
パスワード Password
kintoneのサブドメイン含むサイトURL(例:https://****.cybozu.com) ※https://****.cybozu.com/k/の「/k」は不要 Url

「接続テスト」ボタンをクリックします。下記のようなダイアログが表示されれば成功です。「ODBCのDSN構成」の「OK」ボタンをクリックして保存します。

image.png

DataNature からの接続

まず、DataNature の管理ツールを起動します。

f:id:sugimomoto:20190212173047p:plain

あらかじめ設定したアカウントでログインし

f:id:sugimomoto:20190212173055p:plain

管理画面を表示します。今回はシンプルに 案件管理 データを取得するのでジョブ設定から「データ抽出設定」を行います。

f:id:sugimomoto:20190212173101p:plain

データ抽出設定から新しいジョブを作成し「抽出条件設定」をクリックします。

f:id:sugimomoto:20190212173107p:plain

抽出条件の設定画面では、対象の ODBC DSN を選択する画面が表示されるので、ここから先程設定した CData Kintone Source を選択します。

ユーザー名とパスワードには Kintone のユーザー名・パスワードを再度入力してください。入力後「接続」をクリックします。

f:id:sugimomoto:20190212173114p:plain

次にデータ抽出設定の画面へ移動します。この画面でどのテーブルをどのように結合し、どのカラムをどんな条件で取得するのか? といった設定をGUIで定義していきます。

まず、最初に対象とするテーブルを選択します。

※「SQLモードに変更」ボタンをクリックすることで、SQL をダイレクトに記述してデータを取得することも可能です。

f:id:sugimomoto:20190212173120p:plain

Step2 ではテーブルの結合を実施します。今回のレポートではテーブルは結合しないので、割愛します。

なお、kintone ODBC Driver ではサブテーブルを結合して表示することも可能です。

f:id:sugimomoto:20190212173127p:plain

Step3 では抽出したいカラムを選択します。ここで不要なカラムを省いておくと、後々レポートを作成する際に使うべきカラムがわかりやすくなります。

f:id:sugimomoto:20190212173133p:plain

Step4 ではデータを取得する際の各種条件を設定します。今回は特に指定しないため割愛します。

f:id:sugimomoto:20190212173140p:plain

最後に Step5 で抽出結果を確認します。今まで定義した設定を元にSQL文が自動で生成されていることがわかるかと思います。

f:id:sugimomoto:20190212173147p:plain

また、「プレビュー」ボタンをクリックすることで、実際に取得するデータの結果を確認することが可能です。

f:id:sugimomoto:20190212173153p:plain

ジョブの作成が完了したら、実行をクリックしクライアントツールで使うためのCSVを出力しておきます。

レポートの作成(クライアントツール)

それではデータ抽出結果を元に、クライアントツールを使ってクロス集計レポートの作成を進めます。

まず、クライアントツールを立ち上げます。

f:id:sugimomoto:20190212173159p:plain

任意のユーザーでログインし

f:id:sugimomoto:20190212173206p:plain

「データファイル」から先程出力したデータを選択し「実行」をクリックします。

f:id:sugimomoto:20190212173212p:plain

読み込みが完了すると「データ定義」画面が表示されます。この画面で各カラムの定義や単位調整などを実施します。

f:id:sugimomoto:20190212173219p:plain

今回はデフォルトの定義で問題が無いので、「クロス集計」画面へ切り替えます。

f:id:sugimomoto:20190212173225p:plain

クロス集計画面で、行、列、集計する値を設定し、「集計を実行」をクリックします。

f:id:sugimomoto:20190212173232p:plain

これだけで、クロス集計表を表示することができました。

f:id:sugimomoto:20190212173239p:plain

あとはグラフを配置することで、そのままレポートが作成できます。

f:id:sugimomoto:20190212173257p:plain

おわりに

いかがでしたでしょうか? 今回はkintone のデータを取得してみましたが、CDataではkintone以外にもおよそ100種類ほどのODBC Driverを提供しています。

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

ERPCRM・NoSQLやSNS等、様々なツールからODBC 経由でデータが取得できるので、是非 DataNature と組み合わせて様々なレポート作成に役立ててみてもらえればと思います。