Isolieren von Problemen in modellgesteuerten Apps
Modellgesteuerte Apps werden durch die Konfiguration gesteuert. Sie können allgemeine Anweisungen zum Generieren einer App geben. Sie können auch benutzerdefinierte Komponenten einführen, die sich auf mehrere Teile der App auswirken. Wenn eine App nicht wie erwartet verhält, ist es möglicherweise nicht offensichtlich, wenn es sich um einen Anpassungsfehler oder einen Fehler im Power Apps-System handelt.
Hier sind einige Techniken zum Isolieren von Problemen in einer modellgesteuerten App.
Entfernen von Anpassungen
Die folgenden Features können sich auf den normalen Betrieb auswirken. Versuchen Sie, sie zu deaktivieren oder zu entfernen, und überprüfen Sie, ob das Problem weiterhin auftritt. Erfahren Sie mehr über das Suchen und Deaktivieren von Anpassungen in Formularen.
Geschäftsregeln
Auswirkungen: Formularseiten
Geschäftsregeln ändern das Verhalten eines Formulars basierend auf dem Status eines Datensatzes. Versuchen Sie, die Regel zu deaktivieren oder zu vereinfachen, und überprüfen Sie, ob das Formular weiterhin wie erwartet funktioniert.
Clientskripts
Auswirkungen: Formularseiten
Clientskripts enthalten JavaScript-Code, der mit dem Power Apps-System in Konflikt geraten oder auf unerwartete Weise ändern kann. Wenn das Problem durch das Deaktivieren des Skripts behoben wird, sollten Sie isolieren, welcher Teil des benutzerdefinierten Skripts das Problem verursacht.
Sie können alle benutzerdefinierten Skripts vorübergehend deaktivieren, indem Sie diese an die URL der Seite anfügen:
&flags=DisableFormLibraries=true,DisableWebResourceControls=true
Benutzerdefinierte Befehle
Betrifft: Formularseiten, Tabellenbasierte Ansichtsseiten
Wenn nach dem Auswählen eines Befehls in der Befehlsleiste ein Problem auftritt, überprüfen Sie, ob es sich um einen benutzerdefinierten Befehl handelt. Benutzerdefinierte Befehle können JavaScript-Code enthalten, der zu unerwartetem Verhalten führt. Moderne Befehle können benutzerdefinierte Aktionen mit Power Fx definieren. Versuchen Sie in beiden Fällen, den Befehl zu vereinfachen, um herauszufinden, ob ein Fehler in der Definition des benutzerdefinierten Befehls vorliegt.
Benutzerdefinierte Steuerelemente
Betrifft: Formularseiten, Tabellenbasierte Ansichtsseiten, benutzerdefinierte Seiten
Sie können Steuerelemente auf Formularseiten ersetzen oder das Rastersteuerelement ersetzen, das auf tabellenbasierten Ansichtsseiten verwendet wird, durch Power Apps-Komponenten. Diese Steuerelemente sind benutzerdefinierte Steuerelemente mit JavaScript- und CSS-Code, die sich auf andere Teile der Seite auswirken können. Versuchen Sie, zu einem vordefinierten Steuerelement zu wechseln, um festzustellen, ob das benutzerdefinierte Steuerelement das Problem darstellt.
Server-Plug-Ins und -Prozesse
Betrifft: Alle Seiten
Administratoren können Plug-Ins installieren und Prozesse erstellen, die die Geschäftslogik einer App ändern. Wenden Sie sich an Ihren Administrator, ob es relevante serverseitige Anpassungen gibt.
Vergleich mit sofort einsatzbereiten Konfigurationen
Um festzustellen, ob etwas ein Konfigurationsfehler ist, kann es hilfreich sein, andere Teile der App zu überprüfen.
Tritt beispielsweise das Problem mit einem anderen auf:
- Tabelle (Entität)
- Ansicht
- App mit derselben Tabelle
- Formular für dieselbe Tabelle
- Steuerelement, das auf dieselbe Spalte (Attribut) verweist
Vergleichen Sie im Idealfall mit einer vordefinierten, die nicht angepasst wurde. Wenn das Problem beispielsweise mit einer von Ihnen erstellten Tabelle (Entität) besteht, sehen Sie sich eine out-of-the-box-Tabelle an.
Wenn das Problem an anderer Stelle nicht auftritt, vergleichen Sie die Unterschiede mit der Konfiguration. Vielleicht sind Tabellenbeziehungen und Berechtigungen unterschiedlich eingerichtet. Oder eine Tabelle ist für Unified Interface nicht aktiviert.
Elemente erneut erstellen
Das Erstellen eines Elements von Grund auf ermöglicht nicht nur das Untersuchen und Vergleichen von Standardkonfigurationen, es kann auch beschädigte Konfigurationen behoben werden.
Wenn einer der folgenden Elemente nicht funktioniert, versuchen Sie, sie erneut zu erstellen. Es kann eine vereinfachte Version sein, um einzuschränken, welche Komponente nicht funktioniert.
- Benutzerdefinierte Tabelle (Entität)
- Ansicht
- Formular
- Benutzerdefiniertes Skript
Stellen Sie sicher, dass alle erforderlichen Komponenten einer App hinzugefügt werden.
Modellgesteuerte App-Komponenten umfassen Tabellen und ihre zugehörigen Tabellen, Formulare, Spalten, Ansichten, Diagramme, Dashboards und Geschäftsprozessflüsse. Aus Leistungsgründen werden nur Komponenten heruntergeladen, die einer App hinzugefügt wurden.
Wenn eine Komponente nicht inkonsistent angezeigt wird oder sich inkonsistent verhält, überprüfen Sie, ob sie der App hinzugefügt wird. Wenn die Teams-Tabelle beispielsweise nicht im Nachschlagesteuerelement eines Formulars angezeigt wird, andere Tabellen jedoch tun, wurde die Teams-Tabelle der App möglicherweise nicht hinzugefügt.
Mit dem modernen App-Designer können Sie einer App die folgenden Komponenten hinzufügen.
- Tabellen und verwandte Tabellen: Erstellen einer Dataverse-Tabellenseite
- Formulare: Hinzufügen von Formularen zu einer App
- Spalten (Formularfelder): Hinzufügen von Spalten zu einem Formular
- Ansichten und Diagramme: Verwalten von Ansichten und Diagrammen auf einer Dataverse-Tabellenseite
- Dashboards: Erstellen einer Dashboardseite
- Geschäftsprozessabläufe: Hinzufügen eines Geschäftsprozessflusses im Automatisierungsbereich
Sie können diese Komponenten auch mit dem klassischen App-Designer hinzufügen.
Damit Tabellen offline verwendet werden können, müssen sie einem Offlineprofil hinzugefügt werden. Weitere Informationen finden Sie in den Richtlinien für den mobilen Offlinemodus.
Ermitteln, ob das Problem beim Abrufen von Daten oder Anzeigen von Daten auftritt
Wenn Daten in einer App nicht ordnungsgemäß angezeigt werden, kann es sich entweder um ein Serverproblem bei der Bereitstellung der Daten oder um ein App-Problem bei der Verarbeitung und Anzeige handeln. Um die Ursache einzugrenzen, können Sie allgemeine Methoden zum Isolieren der problematischen Schicht ausprobieren.
Modellgesteuerte Apps verfügen über einen komplexen Datenfluss. Hier sind komplexere Dinge, die Sie ausprobieren können.
- Überprüfen Sie das FetchXML von Netzwerkanforderungen, und überprüfen Sie, ob die App die richtigen Netzwerkanforderungen vornimmt und Daten vom Server richtig empfängt. Sie können Monitor verwenden, um Netzwerkanforderungen anzuzeigen.
- Wenn die App über ein Offlineprofil verfügt, versuchen Sie, den Benutzer vollständig aus dem Profil oder dem Profil zu entfernen. Auch wenn eine Internetverbindung besteht, unterscheidet sich der Datenfluss für Apps, die offline arbeiten können.
- Überprüfen Sie auf Berechtigungsprobleme, indem Sie einen anderen Benutzer oder eine andere Tabelle ausprobieren.
Vereinfachen von benutzerdefinierten Skripts
Benutzerdefinierte Skripts sind ein erweitertes Feature für Entwickler. Sie können in Formularen, benutzerdefinierten Befehlen, Power Apps-Komponenten und HTML-Webressourcen (Webseiten) verwendet werden. Es gibt enorme Flexibilität bei der Ausführung von Skripts, aber es besteht auch eine hohe Chance, dass sie versehentlich das System unterbrechen können.
Wenn Sie vermuten, dass ein Skript ein Problem verursacht, führen Sie die folgenden Schritte aus:
Deaktivieren Sie alle benutzerdefinierten Skripts, und überprüfen Sie, ob das Problem weiterhin auftritt.
Wenn dies nicht der Der Einzige ist, aktivieren Sie skripts einzeln, um zu sehen, welche das Problem verursacht.
Sobald die Skripts gefunden wurden, die das Problem verursachen, entfernen Sie irrelevanten Code daraus. Wenn beispielsweise nur ein Feld ein Problem hat, entfernen Sie Code, der mit anderen Formularfeldern interagiert.
Durch die schrittweise Vereinfachung des Skripts sollten Sie feststellen können, ob das Problem durch benutzerdefinierten Code oder ein falsches Verhalten von Client-API-Features verursacht wird.
Wenn der Fehler aus benutzerdefiniertem Code stammt, wenden Sie sich an den Entwickler, der das Skript zur Unterstützung geschrieben hat.
Wenn ein Client-API-Feature nicht wie dokumentiert funktioniert, können Sie es an Microsoft melden. Fügen Sie eine Kopie des vereinfachten Skripts an, und erwähnen Sie, welches API-Feature nicht funktioniert.
Erstellen einer Vanille-Repro-App
Der Prozess zum Erstellen einer Vanille-Repro-App kann Konfigurationsfehler aufdecken, die in einer Umgebung mit vielen Anpassungen nicht offensichtlich sind. Selbst wenn das Problem nicht behoben ist, hätten Sie die Ursache eingeschränkt und es leichter gemacht, das Problem anderen zu erklären.
Nächste Schritte
- Behandeln von Problemen mit Befehlen
- Behandeln von Problemen mit Formularen
- Problembehandlungs-Plug-Ins
- Behandeln von Berechtigungsproblemen mit Microsoft Dataverse
- Debuggen von modellbasierten Apps mit Monitor
- Debuggen modellgesteuerter Apps-Formulare mit Monitor