CData API Server を介してPower BI でリアルタイムSharePoint Excel Services のデータの可視化を作成
Power BI を使えば、データを美しいビジュアルに可視化したり、重要な情報を整理してダッシュボード化できます。CData API Server と組み合わせることで、可視化やダッシュボードなどのためにSharePoint Excel Services のデータを使用できます。この記事では、CData API Server を使用してSharePoint Excel Services の仮想データベースを作成し、SharePoint Excel Services のデータを使ったレポートをPower BI で作成する方法を説明します。
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなSharePoint Excel Services OData サービスを作成していきましょう。
SharePoint Excel Services への接続
Power BI からSharePoint Excel Services のデータを操作するには、まずSharePoint Excel Services への接続を作成・設定します。
- API Server にログインして、「Connections」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「SharePoint Excel Services」を選択します。
- 事前にインストールされていない場合は、「インストール済み」のチェックマークを外します。その後、一覧から「SharePoint Excel Services」を検索して「コネクタをインストール」をクリックしてください。
- インストールできたら、接続設定を行っていきましょう!
-
ワークブックへの接続
どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。
- Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
- Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。
テーブルとしてのスプレッドシートデータへの接続
CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。
API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。
- OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
- REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。
DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。
SharePoint オンプレミスへの接続
URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。
SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUser と Password を設定してください。
Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。
Windows(NTLM)
最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUser と Password を設定して接続してください。
その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
ワークブックへの接続
どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。
- Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
- Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。
テーブルとしてのスプレッドシートデータへの接続
CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。
API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。
- OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
- REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。
DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。
SharePoint オンプレミスへの接続
URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。
SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUser と Password を設定してください。
Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
-
「Power BI Desktop」を開いて「データを取得」画面を表示します。検索ボックスに「odata」と入力すると「OData フィード」が表示されるので、これを選択して「接続」をクリックします。
「OData フィード」の接続画面で、先ほど作成したテーブルのエンドポイントに認証トークンを付加したURLを指定します。以下の形式です。
https:///api.rsc//@/接続できるテーブルは、API Server のhttps://<ホスティング先>/api.rstホスティング先>で確認できます。
Windows(NTLM)
最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUser と Password を設定して接続してください。
その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。
API Server のユーザー設定
次に、API Server 経由でSharePoint Excel Services にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
SharePoint Excel Services 用のAPI エンドポイントの作成
ユーザーを作成したら、SharePoint Excel Services のデータ用のAPI エンドポイントを作成していきます。
OData のエンドポイントを取得
以上でSharePoint Excel Services への接続を設定してユーザーを作成し、API Server でSharePoint Excel Services データのAPI を追加しました。これで、OData 形式のSharePoint Excel Services データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
Power BI からSharePoint Excel Services のデータを取得
以下のステップを実行して、Power BI から作成したOData エンドポイントに接続します。
SharePoint Excel Services のデータの可視化を作成
Power BI にデータを接続したら、「フィールド」ペインのフィールドをキャンバスにドラッグすることで、レポートビューにデータを可視化できます。図表の種類と、ビジュアライズするディメンションおよびメジャーを選択します。
「更新」をクリックしてデータの変更をレポートに同期します。
データアプリケーションからSharePoint Excel Services のデータへのSQL アクセス
以上で、CData API Server を使用してPower BI からSharePoint Excel Services のデータに接続できるようになりました。これで、SharePoint Excel Services のデータを複製することなく多くのデータをインポートしたり、新しい可視化やレポートを作成することができます。
オンプレミスのBI やレポート、ETL、その他のデータアプリケーションから、250を超えるSaaS、ビッグデータ、NoSQL データソース(SharePoint Excel Services を含む)への直接のSQL データにアクセスするには、CData API Server のページにアクセスして無料トライアルをダウンロードしてください。