Power BI Desktop プロジェクト (プレビュー)

重要

Power BI Desktop プロジェクトは現在、プレビュー段階です。

ヒント

Power BI 開発を計画する方法のガイダンスについては、「Power BI の実装の計画」を参照してください。

Power BI Desktop では、プロジェクトの作成、共同作業、保存の新しい方法が導入されています。 Power BI プロジェクト (PBIP) として作業内容を保存すると、レポートとセマンティック モデルの "項目" の定義が、シンプルで直感的なフォルダー構造に個々のプレーン テキスト ファイルとして保存されます。

作業内容をプロジェクトとして保存すると、次のようなベネフィットがあります。

  • テキスト エディターのサポート - アイテム定義ファイルは、セマンティック モデルとレポートのメタデータを含む JSON 形式のテキスト ファイルです。 これらのファイルは公式に文書化されたものであり、人間が判読できます。 プロジェクト ファイルはメモ帳のようなシンプルなテキスト編集ツールをサポートしていますが、Visual Studio Code (VS Code) のようなコード エディターを使うことをお勧めします。IntelliSense、検証、Git 統合などの高機能な編集エクスペリエンスを備えています。

  • プログラムによる項目定義の生成と編集 - 一般的で使いやすい表形式モデル スクリプト言語 (TMSL) を使ってスクリプトを作成できます。または、独自のカスタム アプリケーションを作成して、項目定義を変更することもできます。 項目定義スキーマやクライアント ライブラリの公開されているドキュメントを基にして、アプリケーションを作成できます。

  • ソース管理 - Power BI のセマンティック モデルとレポートの項目定義は、Git などのソース管理システムに格納できます。 Git では、バージョン履歴の追跡、リビジョンの比較 (差分)、以前のバージョンに戻す機能を使用できます。 競合の解決 (マージ) や変更の確認 (pull request) などのなじみのあるコラボレーション メカニズムを使うと、Power BI Desktop の使用時にソース管理がコラボレーションの妨げになることはありません。 詳細については、Git でのバージョン管理に関するページを参照してください。

  • 継続的インテグレーションと継続的デリバリー (CI/CD) - 組織内の開発者が CI/CD システムに変更案を送信するシステムを使用できます。 この場合、システムにより、運用環境システムに変更が適用される前に、一連の "品質ゲート" を使って変更の妥当性が確認されます。 このような品質ゲートには、他の開発者によるコード レビュー、自動テスト、変更の整合性を検証する自動ビルドが含まれます。 通常、CI/CD システムは既存のソース管理システムの上に構築されます。 詳細については、DevOps - 継続的インテグレーションDevOps - 継続的デリバリーのページを参照してください。

プレビュー機能を有効にする

Power BI Desktop での Power BI プロジェクトとしての保存は現在、プレビュー段階であり、[プレビュー機能] で有効にする必要があります。

[ファイル] > [オプションと設定] > [オプション] > [プレビュー機能] に移動し、[Power BI プロジェクト (.pbip) 保存オプション] の横にあるボックスをオンにします。

プロジェクトとして保存する

新しいプロジェクトで作業している場合、または既存の Power BI Desktop ファイル (pbix) を開いた場合は、Power BI プロジェクト ファイル (pbip) として保存できます。

Power BI プロジェクトとしてファイルを保存しているスクリーンショット

プロジェクトとして保存すると、Power BI Desktop により、レポートとセマンティック モデルの項目はフォルダーとして保存され、それぞれに項目を定義するテキスト ファイルが含まれます。

Power BI Project ファイルを示すスクリーンショット

プロジェクトとして保存した後は、タイトル バーを見ることで、プロジェクトが作業中であることがわかります。

プロジェクトに保存するときの Power BI Desktop タイトルを示すスクリーンショット。

タイトル バーを選択すると、Power BI プロジェクト専用のポップアップが表示されます。 このポップアップで、プロジェクト ファイルの場所と、レポートおよびセマンティック モデルの表示名設定を確認できます。 パスをクリックして、エクスプローラーでフォルダーを開くこともできます。

Power BI Desktop タイトルのポップアップを示すスクリーンショット。

プロジェクトのルート フォルダーに表示される内容を詳しく見てみましょう。

<プロジェクト名>.SemanticModel

Power BI セマンティック モデルを表すファイルとフォルダーのコレクション。 これらのファイル、サブフォルダーとその中のファイルの詳細については、プロジェクト セマンティック モデル フォルダーのページを参照してください。

<プロジェクト名>.Report

Power BI レポートを表すファイルとフォルダーのコレクション。 これらのファイル、サブフォルダーとその中のファイルの詳細については、プロジェクト レポート フォルダーのページを参照してください。

.gitIgnore

cache.abf や localSettings.json などの Power BI プロジェクト ファイルについて、Git が無視する必要がある、意図的に追跡されないファイルを指定します。

Power BI Desktop では、選択した保存フォルダーまたは親 Git リポジトリにまだ存在しない場合にのみ、.gitignore ファイルが作成されます。

PBIP として保存する場合の .gitignore の既定の内容:

**/.pbi/localSettings.json
**/.pbi/cache.abf
<プロジェクト名>.pbip

PBIP ファイルにはレポート フォルダーへのポインターが含まれており、PBIP を開くと、作成対象のレポートとモデルが開きます。

詳しくは、pbip スキーマのドキュメントを参照してください。

Power BI プロジェクトを開く

Power BI プロジェクト フォルダーから Power BI Desktop を開くには、pbip ファイルを開くか、レポート フォルダー内の pbir ファイルを開きます。 どちらのオプションでも、編集対象のレポートと、セマンティック モデル (セマンティック モデルへの相対参照がある場合) が開きます。

複数のレポートとセマンティック モデルを同じフォルダーに保存できます。 レポート フォルダー内の .pbir から各レポートを直接開くことができるため、各レポートに個別の pbip ファイルを用意する必要はありません。

├── project
│   ├── AdventureWorks-Sales.Report
│   │   └── definition.pbir
│   ├── AdventureWorks-Stocks.Report
│   │   └── definition.pbir
│   ├── AdventureWorks.SemanticModel
|   |   └── *.*
│   .gitignore
└──  AdventureWorks.pbip

Power BI Desktop の外部での変更

プロジェクトとして保存する場合、セマンティック モデルやレポートの定義の変更を Power BI Desktop 上でのみ行う必要はありません。 VS Code や Tabular Editor などのオープンソース コミュニティ ツール、さらにはメモ帳など、他のツールを使用できます。 ただし、すべてのファイルまたは変更が外部のオープンソース ツールによる編集をサポートしているわけではありません。

Power BI Desktop の外部でファイルやプロパティを変更すると、予期しないエラーが発生したり、Power BI Desktop が開かなくなったりする可能性があります。 そのような場合は、Power BI Desktop でプロジェクトを再度開く前に、ファイルの問題を解決する必要があります。

可能であれば、Power BI Desktop でエラーのファイルと場所を確認できます。

ファイルを開くことができないエラーのスクリーンショット。

次のファイルに関するスキーマの詳細は文書化されていません。 プレビュー段階では、Power BI Desktop の外部でこれらのファイルを変更することはサポートされていません。

モデルの作成

外部ツールを使ってセマンティック モデル定義に変更を加えるには、2 つの方法があります。

  • 外部ツールを使って Power BI Desktop の分析サービス (AS) インスタンスに接続する。
  • VS Code または別の外部ツールを使って model.bim ファイル内の JSON メタデータを編集する。

すべてのモデル オブジェクトが書き込み操作をサポートしているわけではありません。 サポートされている以外の方法で変更を適用すると、予期しない結果を引き起こす可能性があります。

書き込み操作をサポートするオブジェクト:

Object AS インスタンスに接続する ファイルの変更
テーブル いいえ はい
[列] 12 はい
計算テーブル はい はい
計算列 はい はい
階層 はい はい
リレーションシップ はい はい
メジャー はい はい
KPI のモデル化 はい はい
計算グループ はい はい
パースペクティブ はい はい
翻訳 はい はい
行レベル セキュリティ (RLS) はい はい
オブジェクト レベルのセキュリティ (OLS) はい はい
注釈 はい はい
M 式 いいえ 34

次の点に留意してください。

  • 開いているファイルに対して Power BI Desktop の外部で変更を加えた場合、それらの変更を Power BI Desktop に表示するには、再起動する必要があります。 Power BI Desktop は、他のツールによって行われたプロジェクト ファイルへの変更を認識していません。

  • Power BI Desktop では、複数のパーティションがあるテーブルはサポートされません。 各テーブルに対して 1 つのパーティションのみがサポートされます。 空のパーティションまたは複数のパーティションがあるテーブルを作成すると、レポートを開くときにエラーが発生します。

  • Power BI Desktop で作成された自動日付テーブルは、外部ツールを使って変更しないでください。

  • Direct Query を使用して Power BI セマンティック モデルまたは Analysis Services モデルに接続するモデルを変更する場合、変更したオブジェクトの ChangedProperties および PBI_RemovedChildren コレクションを更新して、変更または削除したプロパティを含める必要があります。 ChangedProperties や PBI_RemovedChildren を更新しない場合、Power BI Desktop でクエリが編集されたりモデルが更新されたりした際に、変更内容が上書きされることがあります。

  • 1 - 列のデータ型を変更することはサポートされています。 ただし、AS インスタンスに接続する場合、列の名前を変更することはサポートされていません。

  • 2 - セマンティック モデルで自動日付/時刻機能が有効な場合、Power BI Desktop の外部で新しい datetime 列を作成すると、ローカルの日付テーブルは自動生成されません。

  • 3 - パーティション SourceType は Calculated、M、Entity、または CalculationGroup である必要があります。 パーティション Mode は Import、DirectQuery、または Dual である必要があります。

  • 4 - unappliedChanges.json を含むプロジェクトの場合、Power BI Desktop の外部で加えた式の編集は、変更の適用時に失われます。

  • Power BI Desktop の外部でテーブル クエリ式を変更すると、Power BI Desktop の再起動時にテーブル データは削除されます。

JSON ファイルのスキーマ

ほとんどのプロジェクト ファイルには、JSON 形式のメタデータが含まれています。 対応する JSON スキーマは、検証や文書化に使用できます。

JSON スキーマを使うと、次のことができます。

  • 構成可能なプロパティを確認する。
  • コード エディターが提供するインライン JSON 検証を使う。
  • 作成時に構文の強調表示、ヒント、オートコンプリートを活用する。
  • プロジェクト メタデータ内でサポートされるプロパティの知識を使って、外部ツールを使う。

VS Code を使って、JSON スキーマを作成するファイルにマップする。 プロジェクト ファイルの JSON スキーマは、Power BI Desktop サンプルの Git リポジトリで提供されています。

考慮事項と制限事項

  • Power BI Desktop は、他のツールやアプリケーションで行われた変更を認識しません。 外部ツールを使って行われた変更がある場合、それらの変更を表示するには、Power BI Desktop を再起動する必要があります。
  • 秘密度ラベルは Power BI プロジェクトではサポートされていません。
  • このサービス内でモデルを編集する場合、ダイアグラム ビューは無視されます。
  • Power BI プロジェクトとして保存する場合、プロジェクト ファイル パスの最大長は 260 文字です。
  • Power BI Desktop では、OneDrive および SharePoint に直接 PBIP として保存することはできません。
  • Power BI Desktop の外部で PBIP ファイルを編集する場合は、UTF-8 BOM なしのエンコードを使用して保存する必要があります。
  • レポート言語スキーマは Power BI プロジェクトではサポートされていません。
  • Power BI Desktop では CRLF が行末として使用されます。 差分の問題を回避するには、Git の構成で autocrlf を有効にして行末を処理します。
  • Power BI プロジェクトは現在、Power BI Report Server 用に最適化された Microsoft Power BI Desktop バージョンではサポートされていません。
  • PBIP として保存されたライブ接続レポートでは、XMLA エンドポイントを有効にする必要があります。

よく寄せられる質問

質問: セマンティック モデルとレポート項目のフォルダーの定義を見ると、少数のファイルのみが必須としてマークされていますが、それらを削除するとどうなりますか?

回答: プロジェクト (PBIP) として保存すると、Power BI Desktop によって自動的に作成されます。

質問: Power BI Desktop は、外部ツールやアプリケーションから Power BI プロジェクト ファイルに加えた変更を認識しますか?

回答: いいえ。 ファイルに変更を加えた場合、その変更を反映するには、Power BI Desktop を再起動する必要があります。

質問: PBIX を PBIP に変換した場合、PBIX に戻すことはできますか?

回答: はい。 PBIX を PBIP 形式で保存することも、PBIP を PBIX 形式で保存することもできます。

質問: プログラムで PBIX を PBIP に、またはその逆に変換することはできますか?

回答: いいえ。 PBIX を PBIP に、またはその逆に変換するには、Power BI Desktop の [ファイル]>[名前を付けて保存] を使う必要があります。

質問: Power BI Desktop プロジェクトを Azure Analysis Services (AAS) または SQL Server Analysis Services (SSAS) にデプロイすることはできますか?

回答: いいえ。 Power BI Desktop プロジェクトのレポート定義は、AAS と SSAS ではサポートされていません。 また、モデル定義は Power BI に固有の拡張メタデータを使います。 AAS および SSAS プロジェクトの場合は、モデルの作成、Git、Azure DevOps 統合に Microsoft Visual Studio を使ってください。

質問: Fabric ワークスペースを Git に接続するときに *.pbip ファイルがないのはなぜですか? Power BI Desktop でレポートとセマンティック モデルを編集するにはどうすればよいですか?

回答: PBIP ファイルは省略可能であり、単にレポート フォルダーへのショートカットとして機能します。 レポート フォルダーにある definition.pbir ファイルを開くことで、Power BI Desktop でレポートとセマンティック モデルの両方を編集用として開くことができます。