Poboljšajte performanse, stabilnost i pouzdanost komponenti pomoću alata za proveru rešenja

Da bi isporučili složene poslovne zahteve, proizvođači često mogu završiti sa visoko naprednim rešenjima koja prilagođavaju i proširuju platformu Microsoft Dataverse . Napredne primene donose povećani rizik tamo gde dolazi do problema u vezi sa performansama, stabilnošću i pouzdanošću, što može negativno da utiče na iskustvo korisnika. Identifikovati i razumeti kako da rešite ove probleme može postati komplikovano i oduzimati dosta vremena. Sa funkcijom kontrolora rešenja, možete da obavljate obogaćenu proveru statičke analize vaših rešenja prema skupu pravila najboljih praksi i da brzo identifikujte te problematične šablone. Nakon dovršetka provere, primićete detaljan izveštaj u kom se navode identifikovani problemi, komponente i kôd na koji se odnosi, kao i veze do dokumentacije koja opisuje kako da rešite svaki od problema.

Kontrolor rešenja analizira ove komponente rešenja:

  • Dataverse prilagođene aktivnosti toka posla
  • Dataverse veb-resursi (HTML i JavaScript)
  • Dataverse konfiguracije, kao što su koraci SDK poruke
  • Power Automate tokovi (preko provera protoka)
  • Power Fx Izrazi (preko App Checker)

Kontrolor rešenja radi sa nekompletnim rešenjima koja možete izvesti iz okruženja.

Napomena

  • Ova tema objašnjava kako da pokrenete kontrolor rešenja sa portala Power Apps kreatora. Dostupan je i PowerShell modul koji možete da koristite za ostvarivanje interakcije direktno sa uslugom. Modul Microsoft.PowerApps.Checker.PowerShell može da se koristi za analizu kompletnih i nekompletnih rešenja za Power Apps okruženja ili za automatizovanje i integraciju usluge u gradnje i kanale izdanja. Više informacija: Microsoft.PowerApps. Checker.PoverShell Pregled
  • Provera rešenja podržava globalne promenljive za ECMAScript 2015 (ES6), sve do sintakse ECMAScript 2018 (ES9). Kada se otkrije da JavaScript koristi globalne promenljive novije od ES6 ili sintaksu noviju od ES9, prijavljuje se greška sintakse nepodržane na vebu za veb-resurs.
  • Upotreba kontrolora rešenja ne garantuje da će uvoz rešenja biti uspešan. Provere statičke analize izvršene prema rešenju ne znaju kako je konfigurisano stanje odredišnog okruženja, a uspeh uvoza može zavisiti od drugih rešenja ili konfiguracija u okruženju.

Pokretanje kontrolora rešenja

  1. Prijavite se u Power Apps.

  2. U levom oknu izaberite Rešenja. Ako se stavka ne nalazi u oknu bočne table, izaberite …Više, a zatim izaberite stavku koju želite.

  3. Pored rešenja koje nije kompletno i koje želite da analizirate, izaberite ..., ukažite na stavku Kontrolor rešenja, a zatim izaberite Pokreni.

    Pokretanje komande za kontrolor rešenja.

  4. Komandno dugme za proveru rešenja ima indikator učitavanja, a vi ćete primetiti Running ... u koloni Kontrolor rešenja na listi Rešenje.

    Status kontrolora rešenja.

    Imajte u vidu sledeće:

    • Može biti potrebno nekoliko minuta da kontrolor rešenja dovrši analizu.

    • Primićete obaveštenje e-poštom i obaveštenje u oblasti Obaveštenja Power Apps lokacije kada provera bude dovršena.

  5. Pregledajte izveštaj kada provera bude dovršena.

Otkazivanje provere

Kada pošaljete proveru rešenja u svom okruženju, možete da otkažete proveru preko okna sa statusom u gornjoj desnoj oblasti stranice Rešenja.

Kada otkažete proveru, provera rešenja prestaje sa izvršavanjem i status provere rešenja se vraća u prethodni status.

Statusi kontrolora rešenja

Kada instalirate kontrolor rešenja u svom okruženju, kolona Provera rešenja postaje dostupne na listi Rešenja. Ova kolona prikazuje statuse analize rešenja za određeno rešenje.

Država Opis
Nije pokrenuto Rešenje nikada nije analizirano.
Pokrenuto Rešenje je analizirano.
Nije moguće dovršiti Analiza rešenja je bila zatražena, ali analiza nije uspešno dovršena.
Rezultati od datuma i vremena Analiza rešenja je dovršena i rezultati su dostupni za preuzimanje.
Nije moguće dovršiti. Rezultat od datuma i vremena Najnoviji zahtev za analizu nije uspešno dovršen. Poslednji uspešni rezultati mogu da se preuzmu.
Proverio Microsoft Ovo je kompletno rešenje korporacije Microsoft. Analiza rešenja nije dozvoljena na ovim rešenjima.
Proverio objavljivač Ovo je kompletno rešenje nezavisnog proizvođača. Trenutno, analiza rešenja nije dostupna za ova rešenja.

Pregledajte izveštaj kontrolora rešenja

Kada se provera rešenja završi, izveštaj o analizi možete videti na portalu ili ga možete preuzeti iz vašeg veb-pregledača. Na portalu imate opcije za sortiranje rezultata po problemu , lokaciji ili po težini i prikazu detaljnih informacija o problemima otkrivenim u vašem rešenju.

  1. U levom oknu izaberite Rešenja. Ako se stavka ne nalazi u oknu bočne table, izaberite …Više, a zatim izaberite stavku koju želite.

  2. Pored nekompletnog rešenja gde želite da prikažete izveštaj kontrolora rešenja, izaberite ..., ukažite na Kontrolor rešenja, a zatim izaberite Prikaži rezultate.

  3. Izaberite problem da biste videli detalje i uputstva o tome kako da rešite.

    Rezultati prikaza kontrolora rešenja.

Rezultati provere rešenja takođe su dostupni za preuzimanje. Datoteka rešenja u zip formatu se preuzima u fasciklu koju je odredio vaš veb-pregledač. Izveštaj o preuzimanju je u Excel formatu i sadrži nekoliko vizuelizacija i kolona koje vam pomažu da identifikujete uticaj, tip i lokaciju svakog problema otkrivenog u rešenju. Obezbeđena je i veza ka detaljnom navođenju o tome kako da rešite problem.

  1. U levom oknu izaberite Rešenja. Ako se stavka ne nalazi u oknu bočne table, izaberite …Više, a zatim izaberite stavku koju želite.
  2. Pored neupravljanog rešenja gde želite da preuzmete izveštaj kontrolora rešenja, izaberite ..., postavite pokazivač miša na Kontrolor rešenja, a zatim izaberite Preuzmi rezultate.
  3. Datoteka rešenja u zip formatu se preuzima u fasciklu koju je odredio vaš veb-pregledač.

Evo rezimea svake kolone u izveštaju.

Kolona izveštaja Opis Komponenta „Odnosi se na“
Problem Naslov problema identifikovanog u rešenju. Sve
Kategorija Kategorizacija identifikovanog problema, kao što su performanse, održavanje, upotreba, podrška, dizajn, bezbednost, pristupačnost ili spremnost za nadogradnju. Svi
Ozbiljnost Predstavlja potencijalni uticaj identifikovanog problema. Dostupni tipovi uticaja su kritični, visoki, srednji, nizak i informativni. Svi
Smernice Veza ka članku sa detaljima o problemu, uticaju i preporučenoj radnji. Sve
Komponenta Komponenta rešenja gde je identifikovan problem. Sve
Location Lokacija i/ili izvorna datoteka komponente gde došlo do pojave identifikovanog problema, kao što je sklop ili JavaScript ime datoteke. Sve
Br. linije Referentni broj linije problema u komponenti veb-resursa na kog utiče. Veb-resursi
Modul Ime modula gde je otkriven problem identifikovan u sklopu. Prilagođena aktivnost toka posla
Tip Tip identifikovanog problema u sklopu. Prilagođena aktivnost toka posla
Član Član identifikovanog problema u sklopu. Prilagođena aktivnost toka posla
Izjava Kôd izjave ili konfiguracije koja je dovela do problema. Sve
Komentari Detalji o problemu koji obuhvataju korake rešenja visokog nivoa. Svi

Lokalno pokretanje pravila za proveru rešenja

Pravila za proveru rešenja možete da pokrenete u razvojnom okruženju da biste otkrili probleme mnogo ranije dok kreirate resurse rešenja. Ovo je trenutno podržano za veb-resurse (JavaScript i TypeScript). Za više detalja, idite na NPM paket @microsoft/eslint-plugin-power-apps.

Pravila najbolje prakse koje kontrolor rešenja koristi

Sledeća tabela navodi tip komponente, opis pravila, ozbiljnost i kategoriju. Kritični prekršaji su blokirani ili upozoreni kada su konfigurisani za proveru rešenja sa Nadgledana okruženja. Dodatne informacije: Koristite proveru rešenja u Nadgledana okruženja

Komponenta rešenja Naziv pravila Opis pravila Ozbiljnost Kategorija
Dodatna komponenta ili aktivnost toka posla meta-remove-dup-reg Izbegavajte duplirane registracije Dataverse dodatnih komponenti. Kritično Performanse
Dodatna komponenta ili aktivnost toka posla meta-avoid-reg-no-attribute Uključite atribute filtriranja sa registracijama Dataverse dodatnih komponenti. Srednje Performanse
Dodatna komponenta ili aktivnost toka posla meta-avoid-reg-retrieve Oprezno koristite Dataverse dodatne komponente registrovane za operacije Retrieve i RetrieveMultiple za poruke. Srednje Performanse
Dodatna komponenta ili aktivnost toka posla meta-remove-inactive Uklonite neaktivne konfiguracije u usluzi Dataverse. Nizak Mogućnost održavanja
Dodatna komponenta ili aktivnost toka posla meta-avoid-crm4-event Nemojte koristiti Microsoft Dynamics CRM 4.0 fazu registracije dodatne komponente. Srednje Spremnost za nadogradnju
Dodatna komponenta ili aktivnost toka posla meta-avoid-retrievemultiple-annotation Izbegavajte registraciju dodatne komponente na RetrieveMultiple za zabelešku. Visok Iskorišćenost
Aplikacija zasnovana na modelu meta-licenca-prodaja-entitet-operacije Rešenje sadrži entitete sa ograničenim SDK porukama i operacijama koje zahtevaju važeću licencu Dinamics KSNUMKS. Nizak Licenciranje
Aplikacija zasnovana na modelu meta-license-fieldservice-customcontrols Rešenje sadrži prilagođene kontrole koje zahtevaju važeću Dynamics 365 Field Service licencu. Nizak Licenciranje
Aplikacija zasnovana na modelu meta-license-fieldservice-entity-operations Rešenje sadrži entitete sa ograničenim SDK porukama i operacijama za koje je potrebna važeća Dynamics 365 Field Service licenca. Nizak Licenciranje
Veb-resursi use-async Asinhrono vršite interakciju sa HTTP i HTTPS resursima. Kritično Performanse
Veb-resursi avoid-modals Izbegavajte korišćenje modalnih dijaloga. Visok Mogućnost pružanja podrške
Veb-resursi avoid-dom-form Visok Mogućnost pružanja podrške
Veb-resursi avoid-dom-form-event Visok Mogućnost pružanja podrške
Veb-resursi avoid-crm2011-service-odata Nemojte ciljati Microsoft Dynamics CRM 2011 2.0 OData krajnju tačku. Kritično Spremnost za nadogradnju
Veb-resursi avoid-crm2011-service-soap Nemojte ciljati Microsoft Dynamics CRM 2011 SOAP usluge. Kritično Spremnost za nadogradnju
Veb-resursi avoid-loadtheme Nemojte koristiti loadTheme Fluent vKSNUMKS API. Nizak Mogućnost pružanja podrške
Veb-resursi avoid-browser-specific-api Nemojte koristiti zastarele API ili dodatne komponente pregledača za Internet Explorer. Kritično Spremnost za nadogradnju
Veb-resursi avoid-unpub-api Visok Mogućnost pružanja podrške
Veb-resursi avoid-window-top Visok Mogućnost pružanja podrške
Veb-resursi avoid-2011-api Nemojte koristiti neodobreni Microsoft Dynamics CRM 2011 model objekta. Umesto toga, sledite dokumentaciju za Dataverse Web API. Visok Spremnost za nadogradnju
Veb-resursi use-relative-uri Nemojte koristiti apsolutne URL adrese krajnje tačke za Dataverse. Srednje Mogućnost održavanja
Veb-resursi use-cached-webresource Srednje Performanse
Veb-resursi use-client-context Koristite kontekste klijenta. Srednje Spremnost za nadogradnju
Veb-resursi use-navigation-api Koristite API parametre za navigaciju. Srednje Spremnost za nadogradnju
Veb-resursi use-offline Srednje Spremnost za nadogradnju
Veb-resursi do-not-make-parent-assumption Visok Dizajn
Veb-resursi use-org-setting Koristite podešavanja organizacije. Srednje Spremnost za nadogradnju
Veb-resursi use-global-context Srednje Spremnost za nadogradnju
Veb-resursi use-grid-api Koristite API-je mreže. Srednje Spremnost za nadogradnju
Veb-resursi use-utility-dialogs Srednje Iskorišćenost
Veb-resursi avoid-isActivityType Zamenite Xrm.Utility.isActivityType metod novim Xrm.Utility.gettableMetadata i nemojte koristiti u pravilima trake. Srednje Spremnost za nadogradnju
Veb-resursi meta-avoid-silverlight Korišćenje Silverlight veb-resursa je neodobreno. Srednje Spremnost za nadogradnju
Veb-resursi remove-debug-script Izbegavajte uključivanje skripta za otklanjanje grešaka u okruženjima koja nisu razvojna. Srednje Iskorišćenost
Veb-resursi Upotreba-strogi-režim Koristite strogi režim kada je to moguće. Srednje Iskorišćenost
Veb-resursi upotreba-strogo-jednakosti-operatori Koristite operatore stroge jednakosti. Srednje Iskorišćenost
Veb-resursi avoid-eval Ne koristite funkciju „eval“ ili njene funkcionalne ekvivalente. Kritično Bezbednost
Veb-resursi izbegavati-sa Nemojte koristiti operator "sa". Visok Performanse
Veb-resursi Remove-upozorenje Nemojte da koristite funkciju „alert“ ili njene funkcionalne ekvivalente. Srednje Iskorišćenost
Veb-resursi Remove-konzola Izbegavajte upotrebu metoda na konzoli. Srednje Iskorišćenost
Veb-resursi avoid-ui-refreshribbon Izbegavajte da koristite refreshRibbon u onload i EnableRule obrasca. Kritično Performanse
Veb-resursi use-getsecurityroleprivilegesinfo Izbegavajte userSettings.securityRolePrivileges. Umesto toga koristite userSettings.getSecurityRolePrivilegesInfo. Visok Performanse
Veb-resursi Upotreba-appsidepane-API Koristite Ksrm.App.sidePanes.createPane umesto Ksrm.Panels.loadPanel. Srednje Spremnost za nadogradnju
Veb-resursi Srpskohrvatski / srpskohrvatski HTTP kolačići su stari mehanizam za skladištenje na strani klijenta sa inherentnim rizicima i ograničenjima. Umesto toga koristite Veb Storage, InkodedDB ili druge moderne metode. Srednje Bezbednost
Veb-resursi web-sdl-ne-dokument-domen Piše u document.domain imovinu mora biti pregledana kako bi se izbeglo zaobilaženje provjera istog porijekla. Upotreba domena najvišeg nivoa kao što je azurewebsites.net je strogo zabranjena. Srednje Bezbednost
Veb-resursi veb-sdl-ne-dokument-pisanje Pozivi na document.vrite ili document.vriteln manipulišu DOM-om direktno bez ikakve sanitacije i treba ih izbegavati. Umesto toga koristite document.createElement() ili slične metode. Srednje Bezbednost
Veb-resursi veb-sdl-ne-html-metod Direktni pozivi metodi html() često (npr. u jKueri okviru) manipulišu DOM-om bez ikakvog saniranja i treba ga izbegavati. Umesto toga koristite document.createElement() ili slične metode. Srednje Bezbednost
Veb-resursi web-sdl-no-inner-html Zadaci za innerHTML ili outerHTML osobine manipulišu DOM-om direktno bez ikakve sanitacije i treba ih izbegavati. Umesto toga koristite document.createElement() ili slične metode. Srednje Bezbednost
Veb-resursi web-sdl-no-insecure-url Nebezbedne protokole kao što su HTTP ili FTP treba zameniti šifrovanim parnjacima (HTTPS, FTPS) da bi se izbeglo slanje potencijalno osetljivih podataka preko nepouzdanih mreža u PlainText formatu. Srednje Bezbednost
Veb-resursi web-sdl-no-msapp-exec-unsafe Pozivanje MSApp.execUnsafeLocalFunction() zaobilazi proveru valjanosti injektovanja skripti i treba ga izbegavati. Srednje Bezbednost
Veb-resursi web-sdl-ne-postmessage-zvezda-poreklo Uvek navedite poreklo određenog odredišta, a ne * prilikom slanja podataka u druge prozore pomoću funkcije postMessage da biste izbegli curenje podataka izvan granice pouzdanosti. Srednje Bezbednost
Veb-resursi web-sdl-no-winjs-html-unsafe Pozivi na VinJS.Utilities.setInnerHTMLUnsafe() i slične metode ne obavljaju nikakvu validaciju ulaza i treba ih izbegavati. Umesto toga koristite VinJS.Utilities.setInnerHTML (). Srednje Bezbednost
Aplikacija sa podlogom app-formula-issues-high Pogledajte Power Apps reference formula za dodatne detalje. Kritično Dizajn
Aplikacija sa podlogom app-formula-issues-medium Pogledajte Power Apps reference formula za dodatne detalje. Srednje Dizajn
Aplikacija sa podlogom app-formula-issues-low Pogledajte Power Apps reference formula za dodatne detalje. Nizak Dizajn
Aplikacija sa podlogom app-use-delayoutput-text-input Koristite odloženo opterećenje u nekim scenarijima da biste poboljšali performanse. Srednje Performanse
Aplikacija sa podlogom app-reduce-screen-controls Ograničite broj kontrola aplikacije za poboljšane performanse. Srednje Performanse
Aplikacija sa podlogom app-include-accessible-label Koristite eksplicitne oznake za poboljšanje pristupačnosti aplikacije. Srednje Pristupačnost
Aplikacija sa podlogom app-include-alternative-input Uverite se da su svi interaktivni elementi dostupni alternativnim ulazima. Srednje Pristupačnost
Aplikacija sa podlogom Srpskohrvatski / srpskohrvatski Izbegavajte upotrebu automatskog pokretanja na igračima u aplikaciji. Srednje Pristupačnost

Pogledajte i ovo

Najbolje prakse i smernice za Dataverse
Najbolje prakse i smernice za aplikacije koje pokreće model
Uobičajeni problemi i rešenja za kontrolora rešenja

Napomena

Možete li nam reći o svojim željenim postavkama jezika u dokumentaciji? Ispunite kratku anketu. (imajte na umu da je ova anketa na engleskom jeziku)

Anketa će trajati oko sedam minuta. Ne prikupljaju se lični podaci (izjava o privatnosti).