テクテク日記

テクテク=テクノロジー&一歩ずつ(テクテク)

(図説)Power BI外部ツールの登録

Power BIで非常によく使用されている機能の1つが外部ツール(External Tools)となります。この登録について、日本語資料が少なかったので、作り方についてまとめました。公式ドキュメントは下記から参考できますが、コードが出てきたりやや分かりにくいので、実例を交えて解説していきたいと思います。

docs.microsoft.com

DAX Formatterを登録

DAX Studio、Tabular Editor、Analyze in Excel等の外部ツールはインストールすれば自動的にPower BIの外部ツールに登録されます(下図)。

これらはアプリケーションであるため、インストールされた実行ファイルへのアクセスとなりますが、外部サイト(例:DAX Formatter、DAX.do、DAX Guide等)へ飛ぶためのやり方を紹介します。

ステップとして、以下の通りに行います。

  1. イコン画像を保存(画像ファイルの作成)
  2. 画像をBase64エンコード(テキストファイル)
  3. エンコードされたコードを含むJSONファイルを作る
  4. JSONファイルをExternal Toolsフォルダに保存(※管理者権限必要)
  5. Power BI Desktopを立ち上げて、外部ツールが実装されていることを確認
1. アイコン画像を保存

DAX Formatterへ飛び、アイコンをpngで保存。

https://www.daxformatter.com/

pngで保存できれば、Snagit等のツールで背景等を消せるので、その状態で保存。

キャプチャツールを持っていない場合、下記背景除去サイトからこれを行うことができます。
https://www.remove.bg/ja

2. 画像をBase64エンコード

下記リンクより、保存された画像(DAX_Formatter.png)をBase64へ変換。

Base64 Image Encoder

これでコードがコピーされますが、いったんテキストエディタに待避させても良いし、クリップボードの履歴(Windows + V)を有効にしている人は、後ほどそこから呼び出して貼り付けてもOKです(下図)。

3. JSONファイルを作る

外部ツール(External Tools)フォルダに入れるためのJSONファイルを作ります。書式は下記公式サイトへ行き、コードをコピー。

Power BI Desktop で外部ツールを登録する - Power BI | Microsoft Docs

コピーされたコードをテキストエディタに張り付け、以下と同じようにコードを変更し、最終的に〇.pbitool.jsonという拡張子で保存します(※ 今回の例では、DAX_Formatter.pbitool.jsonという名前で保存)。

① 分かりやすい名前でOK

② 分かりやすい解説でOK

③ この通りに記入してください

④ 外部サイトのURLを記入(なお、外部サイトではなく、インストール済のアプリの.exeパスであれば、③のpathと同じように、\\を使用してください)

⑤ 上記、クリップボードの履歴(Windows + V)を使用し、Base64エンコードされたコードを入れる。必ず"data:image/png;base64,..."からスタートしていることを確認しておくこと

上記①~⑤まで終われば、DAX_Formatter.pbitool.jsonで保存。

4. External Toolsフォルダに保存

保存先ですが、Power BIがインストールされている場所の下にあるExternal Toolsというフォルダになります。私の環境では以下がこれに当たります。

C:\Program Files (x86)\Common Files\Microsoft Shared\Power BI Desktop\External Tools

フォルダを開くと、既にインストール済みの外部ツールのJSONファイルが入っていることが分かりますが、そのままファイルを保存 or 移動します。

なお、ここで下記のようなメッセージが出現しますが、管理者権限であればそのまま「続行」をクリックします。

5. 「外部ツール」タブから実装を確認

Power BI Desktopが立ち上がっている場合、全て一度閉じて、再度アプリを立ち上げます。

アイコンが出ていれば成功です。そのままクリックすると、下記の通り、DAX Formatterのサイトへ飛ぶことができます。

まとめ

このように、「外部ツール」タブに外部サイトへ飛ぶ新しいアイコンを追加することができました。外部サイトではなく、アプリケーションの場合、記述が少し違いますので、公式ドキュメントを良く読んで頂くか、下記Bravoの外部ツール用JSONファイルを開いて確認してみてください。

おそらく殆どの場合、必要なサードパーティツールをインストールすれば「外部ツール」タブに勝手に追加されると思います。