ドキュメント · 概念
ファイルモードとライブモード
Daxlate は既定でディスク上の .pbix / .pbit ファイルを開きます。Power BI Desktop への TOM 接続であるライブモードは、既定で無効の任意機能です。
最終更新:
Daxlate は Power BI ファイルをディスクから直接開きます。これが既定であり、 ほとんどの人の使い方です。加えて、実行中の Power BI Desktop インスタンスに 接続する任意のライブモードがあります。こちらは既定では隠れていて、設定で 有効にします。どちらも編集の画面(サイドバーのツリー、翻訳グリッド、インポート とエクスポート、元に戻す・やり直し)は共通で、編集内容がファイルに戻る経路 だけが異なります。
ファイルモード(ディスク上の .pbix / .pbit) #
ファイルモードは .pbix または .pbit を直接開きます。アプリは同梱の
pbi-tools でモデルを %LOCALAPPDATA%\Daxlate\extracts\ 配下のファイル単位
キャッシュに抽出し、オフラインの TOM でモデルを逆シリアル化して、Desktop を
起動しないまま編集できるようにします。セマンティックモデルだけでなくレポート
キャンバスも翻訳できる唯一のモードでもあります。
レポートビジュアルを翻訳するを参照して
ください。
保存すると、アプリはメモリ上の差分を適用し、再度シリアル化して、
pbi-tools compile-pbix を実行し、新しいモデルファイルを生成します。
ひとつ癖があります。pbi-tools はデータモデルを含む .pbix を .pbix へ
戻すコンパイルができず、.pbit にしか出力できません。そのため .pbix に
対する最初の保存は、隣に .pbit を書き出し(例: Finance.pbix →
Finance.pbit)、元の .pbix はそのまま残し、そのセッションの以降の保存は
.pbit に対して行います。ステータスバーには新しいパスが表示され、最初の保存
時にはトーストがこの切り替えを説明します。
トレードオフ:
- Power BI Desktop の起動が不要
- セマンティックモデルとレポートキャンバスの両方を翻訳できる
- データモデルを含む
.pbixを保存すると.pbitが伴走ファイルとしてできる ため、後続のパイプラインがそれを前提にしている必要がある - 保存ごとにやや時間がかかる(抽出と再コンパイル。一般的なモデルなら数秒、 非常に大きいモデルではもう少しかかります)
ライブモード(TOM)、任意 #
ライブモードは Tabular Object Model を介して実行中の Power BI Desktop インスタンスに接続し、Desktop のメモリ上のモデルを編集します。既定では 無効で、有効にするまで、ようこそ画面には最近使ったファイルと**ファイルを 開く…**だけが並び、「実行中のモデルに接続」の項目は現れません。
有効にするには、%LOCALAPPDATA%\Daxlate\settings.json に
"liveModeEnabled": true を設定して再起動します。すると、ようこそ画面に
実行中のモデルに接続の列が加わり、ローカルの Analysis Services ポートを
走査して見つけた、モデルを読み込み済みの Desktop インスタンスが一覧されます。
変更を保存をクリックすると、編集内容が Model.SaveChanges() で TOM に
送られます。この時点で変更は Desktop のメモリ上のモデルにあります。ディスク上
の .pbix に書き込むには、Power BI Desktop 内でファイル → 保存を実行します。
ライブモードでは Daxlate 自身が .pbix を書き込むことはありません。
トレードオフと制約:
- モデルを開いた状態の Power BI Desktop が必要
- 同じマシン上の Desktop インスタンスにしか届かず、公開済みワークスペースには 届かない
- モデルのみ。ライブモードには翻訳できるレポートキャンバスのレイヤーがない
- ファイル → 保存をせずに Desktop を閉じると未保存の翻訳は失われる。Desktop でのほかの編集と同じです
どちらをいつ使うか #
- ほぼすべての場面: ファイルモード。
.pbixまたは.pbitを開き、モデルと レポートキャンバスを翻訳して保存します。 - インポートとエクスポートの一括ラウンドトリップ: ファイルモード。 レポートが入ったフォルダーを、1 つずつ Desktop で開かずに処理するための 設計です。
- Desktop で作業中にその場で手を入れたいとき: 有効にしたうえでライブモード。 翻訳がすぐフィールドリストに現れます。届くのはモデルだけで、レポート キャンバスには届かない点にご注意ください。