【PowerBI】DirectQueryで作ったレポートがPowerBIサービスに見れない時の解決方法
こんにちは!MJです。今回はDirectQueryでデータを読み込んで作ったレポートをPowerBIサービスにアップロードした際に、レポートが見えない状況を解決する方法についてご説明いたします。
DirectQueryについてご存知ではない方は下のリンクを参考にしてください。
【PowerBITips】Snowflakeの接続方法「Import、DirectQuery」とは?
問題のエラーメッセージ
DirectQueryで作ったレポートをPowerBIサービスで開いた時、このようなメッセージが出ることがあります。
「データソースの資格情報がないため、アクセスできません。」というメッセージが出る理由はDirectQueryがどういう方法でデータを持ってくるのか理解する必要があります。
DirectQueryはデータソースに直接接続してリアルタイムにデータを参照する方法です。
そのためにPower BI Desktopでデータソースに対する認証を受けてレポートを作成しても、Power BI サービス上でも同じ認証が必要です。
それでは、Power BI サービスでデータソースの認証はどこで設定するのかについてご紹介します。
データソース資格設定
ここからはPower BI サービスでの操作になります。
データソースの資格設定はセマンティックモデル(旧 データセット)の設定ページで行います。
セマンティックモデルの設定ボタンを押して設定ページに移動します。
そうすると、下の「データソースの資格情報」で背景が黄色い注意事項の部分が見えます。
ここの資格情報を編集するために、緑色の「資格情報を編集」リンクをクリックします。
そうすると、使っているデータソースと、データソースのPath情報が入力されている設定画面が出ます。
認証方法については「基本」、「Oauth2」プロトコルを選択することができます。
次にユーザー名、パスワード欄にユーザーの情報を入力します。
最後にデータソースのプライバシーレベルの設定を行う部分があります。
ドロップダウンを開くと4つの項目から選択が可能です。
設定に関する説明はMicrosoftのドキュメントから引用してみます。
設定 | 説明 | データソースの例 |
プライベート(Private) | プライベートに設定されたデータ ソースには、機密性の高い情報が含まれます。 承認されたユーザーに可視性を制限できます。 プライベート データ ソースからのデータは、他のプライベート データ ソースも含め、他のデータ ソースには格納されません。 | Facebook データ、株式報奨が入ったテキスト ファイル、従業員の査定情報が入ったブックなどがあります。 |
組織(Organizational) | 組織に設定されたデータ ソースは、プライベートおよび他の組織のデータ ソースに格納できます。 パブリック データ ソースに格納することはできません。 可視性は信頼されたグループに設定されます。 | たとえば、イントラネットの SharePoint サイトにある Microsoft Word 文書に信頼できるグループに対してアクセス許可を与えます。 |
Public | ファイル、インターネット データ ソース、ブック データはパブリックに設定できます。 データは他のデータ ソースに格納できます。 すべてのユーザーが利用できます。 | Azure Marketplace からの無料のデータ、Wikipedia ページからのデータ、パブリックの Web ページからコピーしたデータの入ったローカル ファイルなどがあります。 |
このように組織内で使うデータならば、データソースのプライバシーレベルをOrganizationalで設定し、サインインをクリックします。
そうすると、該当するデータソースの設定が更新されたという通知をPower BI サービスの右上で確認することができました。
その後、またレポートページに入ったらデータを読み込み、作成したレポートが見えるようになります。
まとめ
DirectQuery方法で作成したレポートは、Power BI サービスにアップロードすると、データソースに対する認証情報がないため、データを読み込めずにエラーメッセージが表示されます。
その時、慌てずにセマンティックモデル(旧データセット)に入って資格情報を編集すれば問題ありません。
一回設定したデータソースは再設定しなくても、引き続き使うことができます。