使用 Power Apps .msapp 檔案進行操作
[本文章是發行前版本文件,且隨時可能變更。]
這很重要
- and
packunpack命令已被取代。 - 若要原始檔控制畫布應用程式,請使用 Power Platform Git 整合。
- 該
create命令已正式發布。
Commands
| Command | Description |
|---|---|
| pac canvas 建立 | 從自訂連接器產生畫布應用程式 |
| PAC Canvas 下載 | 將畫布應用程式下載為 .msapp 檔案 |
| PAC 畫布清單 | 列出畫布應用程式 |
| PAC 帆布包 | (預覽)將來源封裝成 msapp 檔案 |
| PAC Canvas 開箱 | (預覽)將 msapp 檔案解壓縮至來源 |
| pac canvas 驗證 | (預覽)驗證解壓縮 msapp 檔案的 .pa.yaml 來源 |
pac canvas 建立
從自訂連接器產生畫布應用程式
此命令會 .msapp 根據現有 自訂連接器的 OpenAPI 定義產生畫布應用程式。 該應用程式將包含螢幕、控制項佈局和 Power Fx 程式碼,這些程式碼是根據自訂連接器動作的定義方式產生的,並具有預先定義的外觀和風格。 該應用程式可用於直接執行自訂連接器中定義的動作。
製作者可以將產生的 .msapp 專案匯入 Power Apps Studio 來播放應用程式,或進行編輯並進行進一步的自訂。 在Studio 中導覽至>>瀏覽,將產生的應用程式匯入 Power Apps Studio。
範例
下列範例顯示命令的 pac canvas create 使用方式。
根據顯示名稱的 Open API 定義建立畫布應用程式
此範例會使用連接器的顯示名稱,根據 Open API 定義建立畫布應用程式 (作為 *.msapp 檔案)。
pac canvas create --msapp HelloWorld.msapp --connector-display-name "My Custom Connector"
根據 ID 的 Open API 定義建立畫布應用程式
此範例會使用連接器的識別碼,根據 Open API 定義建立畫布應用程式 (作為 *.msapp 檔案)。
pac canvas create --msapp HelloWorld.msapp --connector-id 00000000-0000-0000-0000-000000000000
或 connector-display-nameconnector-id 是必需的。
畫布建立的必要參數
--msapp
要產生的 .msapp 檔案路徑
畫布建立的選用參數
--connector-display-name
要從中產生 Power App 的連接器顯示名稱。
--connector-id
要從中產生 Power App 的連接器識別碼。
--environment
目標環境 ID 或 URL。 預設值是您目前作用中的 Dataverse 驗證設定檔的環境。
備註
考量與限制:
- 使用 或
connector-display-nameconnector-id參數參考的自訂連接器必須是 解決方案的一部分。 - 將應用程式匯入 Studio 之後,將不會與自訂連接器建立關聯。 製作者必須手動新增對從中產生應用程式的自訂連接器的參考,才能播放應用程式。 如需步驟,請參閱將資料連線新增至畫布應用程式。 在完成此操作之前,您可能會在應用程式中看到公式錯誤,這些錯誤將在新增連接器參考後解決。 您新增至應用程式的自訂連接器名稱必須符合命令中
canvas create參考的自訂連接器的顯示名稱。 - 應用程式將包含每個
POSTGET畫面和連接器定義的動作。- 不支援自訂連接器中可用的其他動詞。
- 在每個動作的畫面上轉譯的控制項是根據每個動作的輸入和輸出類型的定義方式動態產生。 自訂連接器中定義的特定輸入和輸出類型不受 的支援
canvas create。 當遇到這些警告時,該命令將在控制台中生成警告。 具體案例:- 不支援物件陣列和陣列陣列作為輸入
- 不會針對深度超過 20 的物件或巢狀陣列產生控制項
- 輸入或輸出不支援「檔案」和「二進位格式」類型。
PAC Canvas 下載
將畫布應用程式下載為 .msapp 檔案
畫布下載的必要參數
--name
-n
畫布應用程式精確名稱、部分名稱或應用程式 ID
畫布下載的可選參數
--environment
-env
指定目標 Dataverse。 值可以是 Guid 或絕對 https URL。 如果未指定,則會使用為目前驗證設定檔選取的作用中組織。
--extract-to-directory
-d
要將畫布應用程式解壓縮到的目錄名稱
--file-name
-f
檔案名稱 (通常具有 .msapp 副檔名)。 如果未提供,則檔案會以「appname」.msapp 儲存在目前目錄中
--overwrite
-o
允許檔案覆寫
此參數不需要任何值。 這是一個開關。
PAC 畫布清單
列出畫布應用程式
畫布清單的選用參數
--environment
-env
指定目標 Dataverse。 值可以是 Guid 或絕對 https URL。 如果未指定,則會使用為目前驗證設定檔選取的作用中組織。
PAC 帆布包
(預覽)將來源封裝成 msapp 檔案
Example
pac canvas pack --sources MyHelloWorldFiles --msapp HelloWorld.msapp
畫布套件的必要參數
--msapp
.msapp 檔案的路徑
--sources
目錄到要打包的來源
備註
從先前解壓縮的來源檔案建立檔案 .msapp 。
您可以在 Power Apps Studio 中導覽至 檔案>開啟>瀏覽,以開啟結果。
解壓縮後,可以使用外部工具(例如 Visual Studio Code 和 GitHub)編輯和管理原始檔案。
PAC Canvas 開箱
(預覽)將 msapp 檔案解壓縮至來源
Example
pac canvas unpack --msapp HelloWorld.msapp --sources MyHelloWorldFiles
pac canvas unpack --msapp HelloWorld.msapp
解壓縮至預設 HelloWorld_src 目錄。
畫布解壓縮的必要參數
--msapp
.msapp 檔案的路徑
畫布解壓縮的選擇性參數
--sources
目錄到要解壓縮的來源
備註
解壓縮 .msapp 來源檔案。
從 Power Apps Studio 下載檔案 .msapp ,方法是導覽至 檔案>另存為>此電腦。
如果未指定 sources 參數,則會使用與檔案具有 .msapp 相同名稱和位置的目錄,並附 _src 有尾碼。
資料夾結構
解壓縮和封裝屬性使用下列資料夾結構:
-
\src - 控制和元件檔案。 這包含來源。
-
*.fx.yaml — 從檔案擷取
control.json的公式。備註
這是編輯公式的地方。
- CanvasManifest.json - 資訊清單檔案,其中包含通常存在於標頭、屬性和 publishInfo 中的資訊。
-
*.json - 原始
control.json檔案。 - \EditorState*.editorstate.json - Power Apps Studio 要使用的快取資訊。
-
*.fx.yaml — 從檔案擷取
- \DataSources - 應用程式使用的所有資料來源。
- \Connections - 與應用程式一起儲存並在重新載入 Power Apps Studio 時使用的連線執行個體。
- \Assets - 嵌入在應用程序中的媒體文件。
- \pkgs - 下載的外部參考副本,例如範本、API 定義檔案和元件庫。 這些類似於 NuGet/NPM 參考。
-
\other - 重新建立
.msapp.- entropy.json - 易失性元素(例如時間戳記)會擷取至此檔案。 這有助於減少其他檔案中的雜訊差異,同時確保我們仍然可以往返。
- 保存來自 msapp 的其他檔案,例如 \r參考中的內容。
檔案格式
這些 .fx.yaml 檔案使用 YAML 的子集。 與Excel類似,所有表達式都應以等號 =開頭。 其他資訊: Power Fx YAML 公式文法
將變更與 Power Apps Studio 合併
合併在兩個不同 Power Apps Studio 工作階段中所做的變更時:
- 請確定所有控制項名稱都是唯一的。 例如,在兩個不同的工作階段中插入按鈕可能會導致兩個
Button1控制項。 建議您在建立控制項後立即命名控制項。 此工具不接受兩個具有相同名稱的控制項。 - 對於這些檔案,請像往常一樣合併它們:
- \src*.fx.yaml
- 如果有衝突或錯誤,您可以刪除以下檔案:
- \src\editorstate*.json - 這些檔案包含 Power Apps Studio 中的選擇性資訊。
- \other\entropy.js
- 對於這些檔案中的任何衝突,可以接受最新版本:
- \checksum.js
- 如果這些路徑下有任何合併衝突,則合併並不安全。 如果這種情況經常發生,請告訴我們;我們將致力於重組檔案格式以避免衝突。
- \連接*
- \資料來源*
- \包*
- CanvasManifest.json
開源
Microsoft Power Platform CLI 中的畫布命令是開放原始碼。 討論改進、提出問題,以及從 Power Apps 語言工具存放庫存取程式碼。
pac canvas 驗證
(預覽)驗證解壓縮 msapp 檔案的 .pa.yaml 來源
畫布驗證的必要參數
--directory
-d
擷取的 msapp 目錄路徑,其中包含要驗證的 .pa.yaml 檔案
另請參閱
Microsoft Power Platform CLI 命令群組
Microsoft Power Platform CLI 概觀