Share via


隔離模型驅動應用程式中的問題

模型驅動應用程式是由設定所驅動。 您可以提供高階指示來產生應用程式。 您也可以引進會影響應用程式多個部分的自定義元件。 當應用程式的行為不如預期時,如果是自定義錯誤或 Power Apps 系統中的 Bug,可能就不明顯。

以下是一些用來隔離模型驅動應用程式中問題的技術。

拿掉自定義專案

下列功能可能會影響正常作業。 請嘗試停用或移除它們,並檢查問題是否仍發生。 深入了解尋找和停用窗體上的自定義

商務規則

影響:表單頁面

商務規則 會根據記錄的狀態來變更表單的行為。 請嘗試停用或簡化規則,並檢查表單是否仍如預期般運作。

用戶端文本

影響:表單頁面

用戶端文本 包含的 JavaScript 程式代碼可能會與 Power Apps 系統衝突,或以非預期的方式變更它。 如果停用腳本可解決問題,您應該 隔離造成問題的自定義腳本的哪個部分

您可以將此專案附加至頁面的網址,以暫時停用所有自訂文稿:

&flags=DisableFormLibraries=true,DisableWebResourceControls=true

自訂命令

影響:表單頁面、數據表型檢視頁面

如果 在命令行中選取命令之後發生問題,請檢查它是否為 自定義命令。 自定義命令可以包含會造成非預期行為的 JavaScript 程式代碼。 新式命令可以使用 Power Fx定義自訂動作。 在任一情況下,請嘗試簡化 命令,以找出自定義命令的定義方式是否發生錯誤。

自定義控制件

影響:表單頁面、數據表型檢視頁面、自定義頁面

您可以 取代表單頁面上的控 件,或 將數據表型檢視頁面上使用的方格控件取代Power Apps 元件。 這些控制項是具有 JavaScript 和 CSS 程式代碼的自定義控制項,可能會影響頁面的其他部分。 請嘗試切換至現成可用的控件,以查看自定義控件是否為問題所在。

伺服器外掛程式和進程

影響:所有頁面

系統管理員可以 安裝外掛程式,並建立可修改應用程式商業規則的程式。 請向系統管理員確認是否有任何相關的伺服器端自定義。

與現成的組態比較

為了協助判斷某個專案是否為組態錯誤,檢查應用程式的其他部分可能很有用。

例如, 問題是否發生於不同的 :

  • 數據表 (實體)
  • 檢視
  • 具有相同數據表的應用程式
  • 相同數據表的表單
  • 參考相同數據行的控件 (屬性)

在理想情況下,請與尚未自定義的現成現成版本進行比較。 例如,如果問題出在您建立的數據表 (實體) ,請查看現成可用的數據表。

如果問題未在其他地方發生,請比較其設定方式的差異。 數據表關聯性和許可權的設定方式可能不同。 或者未針對整合介面啟用數據表。

重新建立專案

從頭開始建立項目不僅可讓您檢查和比較預設組態,還可以修正損毀的組態。

如果下列任一項無法運作,請嘗試重新建立它們。 它可以是簡化的版本,以縮小哪些部分無法運作。

  • 自訂數據表 (實體)
  • 檢視
  • Form
  • 自訂腳本

確定所有必要的元件都已新增至應用程式

模型驅動應用程式元件 包括數據表及其相關數據表、表單、資料行、檢視、圖表、儀錶板和商務程式流程。 基於效能考慮,只會下載新增至應用程式的元件。

如果元件未出現或行為不一致,請檢查元件是否已新增至應用程式。 例如,如果 Teams 資料表未出現在表單的查閱控件中,但其他數據表顯示,則 Teams 資料表可能尚未新增至應用程式。

您可以使用 新式應用程式設計工具,將下列元件新增至應用程式。

您也可以 使用傳統應用程式設計工具新增這些元件

若要讓數據表脫機使用,必須將其 新增至離線配置檔。 如需詳細資訊,請參閱 行動裝置離線指導方針

瞭解取得數據或顯示數據時是否發生問題

當應用程式中的數據未正確顯示時,可能是提供資料時發生伺服器問題,或是處理和顯示資料時發生應用程式問題。 若要縮小原因範圍,您可以嘗試一 般方法來隔離有問題的圖層

模型驅動應用程式具有複雜的數據流。 以下是更進階的試用專案。

  • 檢查網路要求的 FetchXML ,並檢查應用程式是否提出正確的網路要求,並正確地從伺服器接收數據。 您可以使用 監視器 來檢視網路要求。
  • 如果 應用程式有離線設定檔,請嘗試從設定檔或設定檔中完全移除使用者。 即使有因特網連線,可離線工作的應用程式數據流也不同。
  • 嘗試不同的用戶或數據表來檢查許可權問題。

簡化自定義腳本

自定義腳本是開發人員的進階功能。 它們可用於 表單自定義命令Power Apps 元件,以及 網頁 (HTML) Web 資源。 腳本可以執行的動作具有極大的彈性,但也極有可能不小心中斷系統。

如果您懷疑腳本造成問題,請遵循下列步驟:

  1. 停用所有自定義腳本,並查看問題是否仍發生。

  2. 如果沒有,請逐一啟用腳本,以查看哪一個會造成問題。

  3. 一旦找到造成問題的腳本 () ,請從中移除不相關的程序代碼。 例如,如果只有一個字段發生問題,請移除與其他表單域互動的程序代碼。

  4. 透過逐步簡化文本,您應該能夠判斷問題是由自定義程式代碼還是 用戶端 API 功能的不正確行為所造成。

    • 如果錯誤來自自定義程式碼,請連絡撰寫腳本的開發人員以取得協助。

    • 如果用戶端 API 功能未如所述運作,您可以向 Microsoft 回報。 附加簡化腳本的複本,並提及哪些 API 功能無法運作。

建立 Vanilla 重現應用程式

建立 Vanilla repro 應用程式 的程式可能會發現組態錯誤,在具有許多自定義的環境中並不明顯。 即使問題未修正,您還是可以縮小原因範圍,並讓其他人更輕鬆地解釋問題。

後續步驟

另請參閱