CData Software Blog

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

eセールスマネージャー API と CData XML Driver を使って、PowerBIで顧客ごとの売上見込レポートを作成

本記事は、各種 Web APIODBC / JDBC / ADO.NET といった標準のDB接続規格でアクセスできるようにするCData XML Driverを用いて、Power BI からeセールマナージャー の API に接続し、顧客ごとの売上見込レポートを作る方法を紹介します。

対象 サービス

eセールスマネージャー Remix クラウドクラウドベースのCRM/SFA(営業支援システム)ですです。

https://www.e-sales.jp/

f:id:sugimomoto:20190619143018p:plain

eセールスマネージャー APISOAPプロトコルで現在以下のようなリソースへのアクセス(読み取り・作成・更新・削除)が提供されています。

  • 社員
    • 部署
    • 役職
  • 顧客
  • 名刺
    • 名刺受取人
  • 案件
    • 業務タイプ
    • 自社担当者
    • 客先担当者
    • 案件商品情報項目
    • 代理店
    • 案件タイプ
  • 活動
    • 活動内容/活動時間
    • 商品情報項目
    • 当日面談者
    • 活動内容マスタ
    • 進捗状況マスタ
  • スケジュール
    • スケジュール種別
    • 当日面談者
  • TODO
  • 商品
  • 拡張シート

実現イメージ

今回はMicrosoftが提供するBIツールのPower BI からeセールスマネージャーのAPIに接続しますが、APIは単純にツールと接続することはできません。 各ツールがどのようにWeb API側へリクエストを投げるべきかの判断材料やメタデータの情報が無いためです。

f:id:sugimomoto:20190619143029p:plain

そこで、CData XML ベースの各種 Driverを用いて、このボトルネックを解決します。

まず、各ツールからはODBCインタフェースでSQL(Select文)をCData XML ODBC Driverに向けて発行してもらいます。そのリクエストを受け取った、CData ODBC REST Driverは、eセールスマネージャー の WebAPI のエンドポイントに対して、SQL文を解釈し、HTTPリクエスト形式に変換して、Getメソッドを発行します。

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

f:id:sugimomoto:20190619143036p:plain

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

各種接続シナリオと必要なツール

CData XML Driverは様々なツールとの接続に利用できますが、今回は Power BI で接続する方法を検証します。

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

まず、eセールスマネージャー の SOAP API を CData 各種 XML Deiver が SQL として解釈できるように設定ファイルを作成します。

サンプルとしてEセールスマネージャーの顧客・案件テーブルを取得するための設定ファイルを作成していますので、以下のURLから保存してください。

https://cdatajbuilds.s3-ap-northeast-1.amazonaws.com/SoftBrain/e%E3%82%BB%E3%83%BC%E3%83%AB%E3%82%B9%E3%83%9E%E3%83%8D%E3%83%BC%E3%82%B8%E3%83%A3%E3%83%BCRSB%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB.zip

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

f:id:sugimomoto:20190619143046p:plain

CData REST Driverのインストール

各種ツールとEセールスマネージャー API を繋ぐために必要となるCData XML Driverをインストールします。

基本的なインストール・設定方法は各種Driver共通ですので、ここではODBC Driverを例に説明します。

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

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

f:id:sugimomoto:20190619143054p:plain

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

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

f:id:sugimomoto:20190619143106p:plain

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

以下の項目をセットし、保存します。

Otherにはそれぞれ事前に受け取ったOAtuhの設定とTenantIdなどを指定します。

また、今回の認証用URLはSandbox環境向けに設定していますので、本番環境へ接続する際は適宜変更してください。

  • User=ログインユーザーID;
  • Password=ログインユーザーパスワード;
  • Location=C:\CData_REST\eSalesManager;

f:id:sugimomoto:20190619143113p:plain

最後に接続テストをクリックして、成功メッセージが表示されればOKです。

f:id:sugimomoto:20190619143118p:plain

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

Power BI から eセールスマネージャー API に接続

それでは、Power BI を用いて、eセールスマネージャーの顧客と案件データを取得し、案件状況を分析できるレポートを作成します。

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

f:id:sugimomoto:20190619143123p:plain

データ取得の中からODBCを選択し、接続をクリックすると

f:id:sugimomoto:20190619143131p:plain

先程登録したODBC DSNの一覧を選択できる画面に移動します。

ここで先程接続情報を設定した「CData XML Source」を選択し「OK」をクリックします。

f:id:sugimomoto:20190619143145p:plain

接続が完了すると、以下のようにテーブルを選択できるナビゲーター画面に移動するので、案件(Business)と顧客(Customer)のテーブルを選択し、「読み込み」をクリックします。

f:id:sugimomoto:20190619143157p:plain

読み込みが完了すると以下のようにPower BIの中にSOAP経由で取得したeセールスマネージャーのデータが取り込まれます。

f:id:sugimomoto:20190619143203p:plain

このままでもレポートの作成は可能ですが、今回は顧客データと案件データをつなぎ合わせて分析するため、PowerBIの画面でRelation設定を行います。

以下の画面に移動し、CustomerCode同士をドラッグ・アンド・ドロップで繋ぎます。

f:id:sugimomoto:20190619143215p:plain

以上でデータの準備は完了です。あとはPowerBIの基本機能でレポートの作成を進められます。

例えば、顧客名(CustomerName)を軸に、受注(予定)金額(PurchaseScheduleAmount)を値として横棒グラフを作ることで、各顧客ごとの受注予定金額状況を可視化できます。

f:id:sugimomoto:20190619143220p:plain

また、受注予定日(OrderPlannedDate)と受注(予定)金額(PurchaseScheduleAmount)を組み合わせることで、これからの受注予定金額のスケジュールを可視化することも可能です。

f:id:sugimomoto:20190619143229p:plain

また、PowerBI のオンプレミスゲートウェイを使うことで、PowerBI Service上にレポートをパブリッシュ・メンバーで共有し、データを常に最新の情報に整えることも可能です。

終わりに

今回はVisual Studioからの接続を試しましたが、これ以外にもCData REST Driverは各種ETLツールや帳票ツールなどからも接続することが可能です。

例えば、ODBC Driverの場合は、AccessExcelといったMicorosftアプリケーションやTableauといったBIツール

f:id:sugimomoto:20190401145120p:plain

JDBCであれば、Javaアプリケーション作成時だけでなく、ASTERIA WarpやTalendといったETLツール

f:id:sugimomoto:20190401145126p:plain

C#開発時にはADO.NET

f:id:sugimomoto:20190401145133p:plain

Excelアドインとしてダイレクトにデータを操作することも可能です。

f:id:sugimomoto:20190401145142p:plain

是非様々なツールから試してもらえればと思います。

免責事項

本記事は2019年6月時点における、正式ドライバー化前の検証結果を元に作成したものです。

本記事で記載されているAPI、ドライバーの機能、設定ファイルの動作を保証するためのものではありません。

この記事に関する問い合わせ・ご不明な点は CData Software Japanセールスデスク(sales@cdata.co.jp)までお問い合わせください