例によって自分向け備忘録です。
PowerBIのレポート埋め込みっていうとPowerBI Embeddedなんかが有りますが、いくつか種類があります。
- PBI.com からWeb埋め込みする
- PBI.com の埋め込み機能
- PBI Embedded の埋め込み機能
PBI.com = PowerBIのWebサービスです。
Web埋め込み
iframe で埋め込むやつです。PBI Desktopで作成してPBI.comに発行したものでもよし、PBI.com上で作成したものでもよし、任意のレポートを埋め込めます。
PBI.comからWebに公開すると、ダイアログが出て、
埋め込み可能なiframeが生成されます。これらは別途、「埋め込みコードの管理」で消せたり、再度URLを見たりできます。
PBI.com で埋め込む
PBI.comの開発者機能的なものを利用して、埋め込むことができますが、埋め込むにあたって
- AADのテナント必要
- AADにWeb/アプリ登録して、PBIへのアクセスを許可する
- AADで認証してTokenを得て埋め込む
見たいな感じになります。PBI Embeddedよりちょいと煩雑で手間がかかりそうです。今となってはメリットが良く分からない感じなのですが。
情報としては以下の辺りから探っていくと色々得られます。
Power BI REST API リファレンス | Microsoft Power BI
最終的にはpowerbi.js で色々操作する必要があるでしょう。JavascriptなSDKはGitHubに上がっております。 powerbi.microsoft.com
PBI Embedded で埋め込む
埋め込込みとかEmbeddedで探すとだいたいこちらの機能のことを指してる感です。埋め込みには、
- Azure 上に PBI Embeddedのワークスペースコレクションを作成
- PBIXを↑にImportする
- 埋め込むには↑の情報はAppKeyを使う
以下からざっくり情報がたどれます。
docs.microsoft.com Azure Portalから色々操作できなくて、PowerShellを使うか、NET SDKにサンプルプログラムでPBIXをImportしたりする必要があります。こちらはこちらで面倒です。
PBI.comと同じく、同じクライアント側では同じJavascript SDKを使います。
というわけで、ざっくり3つの方法でした。