導入

完了

Microsoft Power Apps Studio でキャンバス アプリを編集すると、アプリのビジュアル表現が表示されます。

Power Apps Studio のキャンバス アプリのスクリーンショット。

画面でコントロールをドラッグ アンド ドロップしたり、数式バーを使用して式を編集したり、プロパティ パネルを使用してコントロール プロパティの値を編集することができます。 多くの開発者は、これらのツールを使用してアプリケーションを作成および変更します。

.msapp 拡張子を付けて単一のファイルとして、お使いのコンピューターにキャンバス アプリのコピーを保存できます。 キャンバス アプリが Microsoft Dataverse ソリューションの一部である場合は、Microsoft Power Platform CLI (コマンド ライン インターフェイス) を使用してソリューションをダウンロードし、アプリを抽出できます。 アプリ ファイルは自己完結型で、画面、コントロール、コンポーネント、接続、式など、アプリ全体を表します。 ただし、内部では、アプリは、アプリの一部を説明する多数の独立したファイルを含みます。 これらのファイルを展開するには、Power Platform CLI の展開コマンドを使用します。 ファイルが展開されると、任意のテキスト エディターを使用して、ファイルの大部分を編集できます。 次のスクリーンショットは、プログラムが変更された後にMicrosoft Visual Studio Code で開いた同じアプリの例を示しています。

キャンバス アプリの個々のファイルを含むフォルダーが開かれた、Visual Studio Code エディターのスクリーンショット。

キャンバス アプリを個別のテキスト ファイルに展開すると、次のようなシナリオが可能になります。

  • ソース コードは、ビジュアル デザイナーではなくテキスト エディターで直接編集します。 たとえば、グローバル検索および置換を行う場合は、テキスト エディターの方が効率的です。

  • 個々のテキスト ファイルをソース管理に格納し、アプリ内の変更を細かく追跡することができます。 たとえば、アプリのラベルがXからYに変更されたタイミングと変更を行ったユーザーを再評価できます。

  • 静的コード分析、コード ジェネレーター、テンプレートなどのソース コードに依存する自動開発ツールを使用します。

アプリのソースは、ユーザーが利用できるデータのシリアル化言語である YAML のサブセットで表されます。 YAML の使用方法についてはこのモジュールの後半で説明します。

Power Platform CLI

Power Platform CLI (または CLI) は、Microsoft Power Platform で多数の開発タスクや管理タスクに使用できるコマンドライン ツールです。これらのタスクには、Power Apps component framework のコンポーネントの作成、環境の管理、ソリューションやポータルの操作などが含まれます。 単純なコマンド プロンプトから、自動ビルドの一部として、または Visual Studio Code のターミナルから CLI を使用できます。

このモジュールは、キャンバス アプリと Power Platform CLI ソリューションの機能に焦点を当てています。 製品ドキュメント でその他の機能およびそれらの機能方法をレビューできます。 Power Platform CLI をダウンロードしてインストールできます。 すでに CLI をインストールしている場合は、次のコマンドを使用して最新バージョンであることを確認してください。

pac install latest

canvas unpack コマンド

クラウドからキャンバス アプリをダウンロードすると、.msapp 拡張子を持つ単一のファイルになります。 canvas unpack コマンドはこのファイルを入力として受け取り、アプリの複数の部分を表す複数のファイルに展開します。 たとえば、アプリの各画面には、コマンドからの出力に独自のファイルが用意されます。

キャンバス アプリの .msapp ファイルを展開するには、次のコマンドを使用します。

pac canvas unpack --msapp "Account Manager.msapp" --sources src

ターゲット出力フォルダーは、次のフォルダー構造 を使用してソースの切り替えによって特定されます。

キャンバス アプリの個々のファイルのファイル階層の図。

canvas pack コマンド

canvas pack コマンドは、canvas unpack コマンドとは反対に、個々のファイルを含むフォルダーを 1 つの .msapp ファイルにパッケージ化します。 アプリをパッケージ化することでクラウドにアップロードする準備をする、またはこのコマンドを使用してソリューションに含めることができます。

pac canvas pack --msapp "Account Manager.msapp" --sources src

solution コマンド

キャンバス アプリ用の .msapp ファイルは、個々のアプリをダウンロードすることで、開発者ポータルから入手できます。 アプリとフローを保持するためにソリューションを使用する場合、エクスポートされたソリューションには、ソリューションの各キャンバス アプリ用の .msapp ファイルが含まれます。 CLI および solution unpack コマンドを使用することで、ソリューションから個々の .msapp ファイルを展開できます。 次の例は、solution unpack コマンドを示しています。

pac solution unpack --solution-zip C:\SampleSolution.zip --folder .\SampleSolutionUnpacked\.

SampleSolutionUnpacked フォルダーには、CanvasApps サブフォルダーが含まれます。これには、ソリューションに含まれる各アプリ用の .msapp ファイルが含まれています。

canvas pack と同様に、solution pack コマンドは、クラウド環境にインポートできるソリューションへとファイルを再アセンブルします。 次の例は、solution pack コマンドを示しています。

pac solution pack --solution-zip C:\SampleSolution.zip --folder .\SampleSolutionUnpacked\.

Power Platform とコード拡張子の比較

Microsoft Power Platform 拡張機能は、Visual Studio Code 内で、Power Platform CLI を使用するのに役立ちます。 拡張機能をインストールすると、Visual Studio Code ターミナル ウィンドウ内に使用できる最新の Power Platform CLI がインストールされます。

ターミナル ウィンドウが開かれ、そのウィンドウに pac コマンドの使用が表示された Visual Studio Code のスクリーンショット。

拡張を使用することで、Visual Studio Code から離れることなく、キャンバス アプリを展開およびパッケージ化できます。 スタンドアロンの CLI について以前に説明したものと同じコマンドを使用します。

ソース管理

キャンバス アプリを展開することで、多数のファイルを作成します。また、個々のファイルを各変更に対してソール管理にコミットすることができます。 これらのステップは、Microsoft Power Platform を使用したアプリケーション ライフサイクル管理 (ALM) に対する全体的な戦略の一部になります。 個々のファイルをソース管理にコミットすると、行った変更をより高い粒度で追跡できます。 具体的には、.msapp ファイルのみをコミットした場合、特筆すべきバージョン間の唯一の違いは、「何か」が変更されているということです。 個々のファイルを展開してコミットすることで、行ごとの違いを把握し、各コミットの変更を強調表示することができます。 作業項目の追跡と組み合わせて、作業項目をサポートするために行われた変更への要件の追跡も取得できます。

このモジュールの残りの部分では、キャンバス アプリからのソース管理の使用方法について説明します。