Dela via


Isolera problem i modelldrivna appar

Modelldrivna appar drivs av konfiguration. Du kan ge instruktioner på hög nivå för att generera en app. Du kan också introducera anpassade komponenter som påverkar flera delar av appen. När en app inte fungerar som förväntat kanske det inte är uppenbart om det är ett anpassningsfel eller en bugg i Power Apps-systemet.

Här följer några tekniker för att isolera problem i en modelldriven app.

Ta bort anpassningar

Följande funktioner kan påverka normal drift. Försök att inaktivera eller ta bort dem och kontrollera om problemet kvarstår. Läs mer om att hitta och inaktivera anpassningar i formulär.

Affärsregler

Påverkar: Formulärsidor

Affärsregler ändrar beteendet för ett formulär baserat på status för en post. Prova att inaktivera eller förenkla regeln och kontrollera om formuläret fortfarande fungerar som förväntat.

Klientskript

Påverkar: Formulärsidor

Klientskript innehåller JavaScript-kod som kan vara i konflikt med Power Apps-systemet eller ändra det på oväntade sätt. Om du inaktiverar skriptet löser problemet bör du isolera vilken del av det anpassade skriptet som orsakar problemet.

Du kan tillfälligt inaktivera alla anpassade skript genom att lägga till detta på sidans URL:

&flags=DisableFormLibraries=true,DisableWebResourceControls=true

Anpassade kommandon

Påverkar: Formulärsidor, Tabellbaserade vysidor

Om ett problem uppstår när du har valt ett kommando i kommandofältet kontrollerar du om det är ett anpassat kommando. Anpassade kommandon kan innehålla JavaScript-kod som orsakar oväntat beteende. Moderna kommandon kan ha anpassade åtgärder definierade med Power Fx. I båda fallen kan du försöka förenkla kommandot för att ta reda på om det finns ett fel i hur det anpassade kommandot definieras.

Anpassade kontroller

Påverkar: Formulärsidor, Tabellbaserade vysidor, Anpassade sidor

Du kan ersätta kontroller på formulärsidor eller ersätta rutnätskontrollen som används på tabellbaserade vysidor med Power Apps-komponenter. Dessa kontroller är anpassade kontroller med JavaScript- och CSS-kod som kan påverka andra delar av sidan. Prova att växla till en out-of-the-box-kontroll för att se om den anpassade kontrollen är problemet.

Plugin-program och processer för server

Påverkar: Alla sidor

Administratörer kan installera plugin-program och skapa processer som ändrar affärslogik för en app. Kontakta administratören om det finns några relevanta anpassningar på serversidan.

Jämför med färdiga konfigurationer

För att avgöra om något är ett konfigurationsfel kan det vara användbart att kontrollera andra delar av appen.

Uppstår till exempel problemet med en annan:

  • Tabell (entitet)
  • Visa
  • App med samma tabell
  • Formulär för samma tabell
  • Kontroll som refererar till samma kolumn (attribut)

Vi rekommenderar att du jämför med en out-of-the-box som inte har anpassats. Om problemet till exempel gäller en tabell (entitet) som du har skapat markerar du en inaktuell tabell.

Om problemet inte inträffar någon annanstans kan du jämföra skillnaderna med hur de konfigureras. Tabellrelationer och behörigheter kanske har konfigurerats på olika sätt. Eller så är en tabell inte aktiverad för enhetligt gränssnitt.

Återskapa objekt

När du skapar ett objekt från grunden kan du inte bara undersöka och jämföra standardkonfigurationer. Det kan också åtgärda skadade konfigurationer.

Om något av följande inte fungerar kan du försöka återskapa dem. Det kan vara en förenklad version för att begränsa vilken del som inte fungerar.

  • Anpassad tabell (entitet)
  • Visa
  • Formuläret
  • Anpassat skript

Se till att alla nödvändiga komponenter läggs till i en app

Modelldrivna appkomponenter omfattar tabeller och deras relaterade tabeller, formulär, kolumner, vyer, diagram, instrumentpaneler och affärsprocessflöden. Av prestandaskäl laddas endast komponenter som läggs till i en app ned.

Om en komponent inte visas eller fungerar inkonsekvent kontrollerar du om den har lagts till i appen. Om teams-tabellen till exempel inte visas i ett formulärs uppslagskontroll, men andra tabeller gör det, kanske Teams-tabellen inte har lagts till i appen.

Du kan lägga till följande komponenter i en app med hjälp av den moderna appdesignern.

Du kan också lägga till dessa komponenter med hjälp av den klassiska appdesignern.

För att tabeller ska kunna användas offline måste de läggas till i en offlineprofil. Mer information finns i riktlinjer för mobil offline.

Ta reda på om problemet uppstår när du hämtar data eller visar data

När data inte visas korrekt i en app kan det antingen vara ett serverproblem med att tillhandahålla data eller ett appproblem vid bearbetning och visning av dem. För att begränsa orsaken kan du prova allmänna metoder för att isolera det problematiska lagret.

Modelldrivna appar har ett komplext dataflöde. Här är mer avancerade saker att prova.

  • Granska FetchXML för nätverksbegäranden och kontrollera om appen gör rätt nätverksbegäranden och tar emot data korrekt från servern. Du kan använda Övervaka för att visa nätverksbegäranden.
  • Om appen har en offlineprofil kan du prova att ta bort användaren från profilen eller profilen helt. Även när det finns en Internetanslutning skiljer sig dataflödet för appar som kan arbeta offline.
  • Sök efter behörighetsproblem genom att prova en annan användare eller tabell.

Förenkla anpassade skript

Anpassade skript är en avancerad funktion för utvecklare. De kan användas i formulär, anpassade kommandon, Power Apps-komponenter och webbresurser på webbsidor (HTML). Det finns en enorm flexibilitet i vad skript kan göra, men det finns också en stor chans att de av misstag kan bryta systemet.

Om du misstänker att ett skript orsakar ett problem följer du dessa steg:

  1. Inaktivera alla anpassade skript och se om problemet kvarstår.

  2. Om den inte gör det aktiverar du skript en i taget för att se vilken som orsakar problemet.

  3. När skripten har hittats som orsakar problemet tar du bort irrelevant kod från dem. Om till exempel bara ett fält har ett problem tar du bort kod som interagerar med andra formulärfält.

  4. Genom att gradvis förenkla skriptet bör du kunna avgöra om problemet orsakas av anpassad kod eller felaktigt beteende för klient-API-funktioner .

    • Om felet kommer från anpassad kod kontaktar du utvecklaren som skrev skriptet för att få hjälp.

    • Om en klient-API-funktion inte fungerar som dokumenterad kan du rapportera den till Microsoft. Bifoga en kopia av det förenklade skriptet och ange vilken API-funktion som inte fungerar.

Skapa en vaniljåtergivningsapp

Processen med att skapa en vaniljåtergivningsapp kan avslöja konfigurationsfel som inte är uppenbara i en miljö med många anpassningar. Även om problemet inte är åtgärdat skulle du ha minskat orsaken och gjort det lättare att förklara problemet för andra.

Nästa steg

Se även