Zlepšite výkon, stabilitu a spoľahlivosť komponentov pomocou nástroja na kontrolu riešení
Na splnenie komplexných obchodných požiadaviek môžu tvorcovia často skončiť s vysoko pokročilými riešeniami, ktoré prispôsobujú a rozširujú platformu Microsoft Dataverse . Pri pokročilých implementáciách sa zvyšuje riziko problémov s výkonom, stabilitou a spoľahlivosťou, čo môže negatívne ovplyvniť skúsenosti používateľa. Identifikácia a pochopenie, ako riešiť tieto problémy, môžu byť zložité a časovo náročné. Vďaka funkcii kontroly riešenia môžete vykonať rozsiahle statické analýzy vašich riešení voči skupine najlepších postupov a rýchle identifikovať tieto problematické vzory. Po dokončení kontroly sa zobrazí podrobná správa, ktorá obsahuje zoznam problémov, postihnuté komponenty a kód a prepojenia na dokumentáciu, ktorá popisuje, ako vyriešiť každý problém.
Nástroj na kontrolu riešenia analyzuje tieto súčasti riešenia:
- Vlastné aktivity pracovného postupu Dataverse
- Webové zdroje Dataverse (HTML a JavaScript)
- Konfigurácie Dataverse, ako napr.íklad kroky správy SDK
- Power Automate tokov (cez kontrolu toku)
- Power Fx výrazy (cez kontrolu aplikácií)
Nástroj na kontrolu riešenia pracuje s nespravovanými riešeniami, ktoré je možné exportovať z prostredia.
Poznámka
- Táto téma vysvetľuje, ako spustiť kontrolu riešenia z portálu výrobcu Power Apps. K dispozícii je aj modul PowerShell, pomocou ktorého môžete priamo komunikovať so službou. Modul Microsoft.PowerApps.Checker.PowerShell možno použiť na analýzu nespravovaných riešení pre prostredia Power Apps alebo na automatizáciu a integráciu služby do kanálov vybudovania a vydania. Ďalšie informácie: Microsoft.PowerApps.Checker.PowerShell Overview
- Kontrola riešení podporuje globálne premenné pre syntax ECMAScript 2015 (ES6) a do ECMAScript 2018 (ES9). Keď sa JavaScript zistí pomocou globálnych premenných neskoršej verzie ako ES6 alebo syntaxe neskoršej ako ES9, nahlási sa problém webovej nepodporovanej syntaxe pre webový prostriedok.
- Použitie kontroly riešenia nezaručuje, že import riešenia bude úspešný. Kontroly statickej analýzy vykonané voči riešeniu nepoznajú nakonfigurovaný stav cieľového prostredia a úspešnosť importu môže závisieť od iných riešení alebo konfigurácií v prostredí.
Spustite nástroj na kontrolu riešenia
Prihláste sa do služby Power Apps.
Na ľavej table vyberte možnosť Riešenia. Ak sa položka nenachádza na table bočného panela, vyberte položku … Viac a potom vyberte požadovanú položku.
Vedľa nespravovaného riešenia, ktoré chcete analyzovať, vyberte ..., ukážte na Nástroj na kontrolu riešenia a potom vyberte Spustiť.
Príkazové tlačidlo Kontrola riešení má indikátor načítania a všimnete si, že Beží... v stĺpci Riešenie kontroly zoznamu Riešenie.
Poznámka:
Dokončenie analýzy môže nástroju na kontrolu riešenia trvať niekoľko minút.
Dostanete e-mailové oznámenie a oznámenie v oblasti Oznámenia lokality Power Apps po dokončení kontroly.
Zobrazenie zostavy po dokončení kontroly.
Zrušenie kontroly
Po vykonaní kontroly riešenia vo vašom prostredí je možné kontrolu zrušiť prostredníctvom tably status v pravej hornej oblasti stránky Riešenia.
Ak zrušíte kontrolu, nástroj na kontrolu riešenia sa zastaví a kontrola riešenia sa vráti do predchádzajúceho stavu.
Stavy nástroja na kontrolu riešenia
Pri inštalácii nástroja na kontrolu riešenia vo vašom prostredí sa sprístupní stĺpec Kontrola riešenia v zozname Riešenia. Tento stĺpec zobrazuje stavy analýzy riešenie pre dané riešenie.
Stav | Opis |
---|---|
Nebol spustený | Riešenie nebolo nikdy analyzované. |
Spustené | Riešenie sa analyzuje. |
Nepodarilo sa dokončiť | Bolo požiadané o analýzu riešenia, ale analýza nebola úspešne dokončená. |
Výsledky k dátumu a času | Analýzy riešenia bola dokončená a výsledky sú k dispozícii na stiahnutie. |
Nepodarilo sa dokončiť. Výsledok k dátumu a času | Najnovšia žiadosť o analýzu nebola úspešne dokončená. Môžete si stiahnuť posledné úspešné výsledky. |
Kontrolované spoločnosťou Microsoft | Toto je riešenie spravované spoločnosťou Microsoft. Pri týchto riešeniach nie je povolená analýza riešení. |
Skontrolované vydavateľom | Toto riešenie spravované treťou stranou. V súčasnej dobe nie je pre tieto riešenia k dispozícii analýza riešenia. |
Kontrola správy nástroja na kontrolu riešenia
Po dokončení kontroly riešenia si môžete prezrieť správu o analýze na portáli alebo si ju môžete stiahnuť z webového prehliadača. Na portáli máte možnosti zoradiť výsledky podľa Problém, Lokalita alebo podľa Závažnosť a zobrazte podrobné informácie o problémoch zistených vo vašom riešení.
Na ľavej table vyberte možnosť Riešenia. Ak sa položka nenachádza na table bočného panela, vyberte položku … Viac a potom vyberte požadovanú položku.
Vedľa nespravovaného riešenia, kde si chcete zobraziť zostavu nástroja na kontrolu riešenia, vyberte ..., ukážte na Nástroj na kontrolu riešenia a potom vyberte Zobraziť výsledky.
Výberom problému zobrazíte podrobnosti a pokyny, ako ho vyriešiť.
Výsledky kontroly riešenia sú tiež k dispozícii na stiahnutie. Prevezme sa zip súbor nástroja na kontrolu riešenia do priečinka určeného podľa webového prehľadávača. Zostava na stiahnutie je vo formáte Excel a obsahuje niekoľko vizualizácií a stĺpcov, ktoré vám pomôžu identifikovať vplyv, typ a polohu každého problému zisteného vo vašom riešení. K dispozícii je aj prepojenie na podrobný postup na vyriešenie problému.
- Na ľavej table vyberte možnosť Riešenia. Ak sa položka nenachádza na table bočného panela, vyberte položku … Viac a potom vyberte požadovanú položku.
- Vedľa nespravovaného riešenia, kde si chcete prevziať zostavu nástroja na kontrolu riešenia, vyberte ..., ukážte na Nástroj na kontrolu riešenia a potom vyberte Stiahnuť výsledky.
- Prevezme sa zip súbor nástroja na kontrolu riešenia do priečinka určeného podľa webového prehľadávača.
Tu je súhrn jednotlivých stĺpcov v zostave.
Stĺpec zostavy | Popis | Vzťahuje sa na súčasť |
---|---|---|
Problém | Názov problému identifikovanému v riešení. | Všetko |
Kategória | Kategorizácia identifikovaného problému, ako napríklad Výkon, Udržovateľnosť, Použitie, Podpora, Dizajn, Bezpečnosť, Dostupnosť alebo Pripravenosť na inováciu. | Všetko |
Závažnosť | Predstavuje potenciálny vplyv identifikovaného problému. Dostupné typy vplyvu sú Kritický, Vysoký, Stredný, Nízka a Informačné. | Všetko |
Pomoc | Prepojenie na článok s podrobnými informáciami o probléme, vplyve a odporúčanej akcii. | Všetko |
Súčasť | Súčasť riešenia, v ktorom bol identifikovaný problém. | Všetko |
Location | Umiestnenie a/alebo zdrojový súbor súčasti, v ktorom sa vyskytol identifikovaný problém, ako napríklad zostava alebo názov súboru JavaScript. | Všetko |
Riadok č. | Odkaz na číslo riadku s problémom vo ovplyvnenej súčasti webového zdroja. | Webové prostriedky |
Modul | Názov modulu, kde bol zistený problém identifikovaný v zostave. | Vlastná aktivita pracovného postupu |
Type | Typ problému identifikovaného v zostave. | Vlastná aktivita pracovného postupu |
Člen | Člen problému identifikovaného v zostave. | Vlastná aktivita pracovného postupu |
Vyhlásenie | Kódové vyhlásenie alebo konfigurácia, ktorá vyústila do problému. | Všetko |
Komentáre | Podrobnosti o probléme, ktoré obsahujú kroky riešenia na vysokej úrovni. | Všetko |
Lokálne spúšťanie pravidiel kontroly riešenia
Vo svojom vývojovom prostredí môžete spustiť pravidlá kontroly riešenia, aby ste zistili problémy oveľa skôr, ako vytvoríte zdroje riešenia. Toto je v súčasnosti podporované pre webové zdroje (JavaScript a TypeScript). Ďalšie podrobnosti nájdete v balíku NPM @microsoft/eslint-plugin-power-apps.
Pravidlá osvedčených postupov používané nástrojom na kontrolu riešenia
Nasledujúca tabuľka uvádza typ komponentu, popis pravidla, závažnosť a kategóriu. Kritické porušenia sú blokované alebo varované, keď sú nakonfigurované na vynútenie kontroly riešení pomocou Spravované prostredia. Viac informácií: Použite nástroj na kontrolu riešení v Spravované prostredia
Súčasť riešenia | Názov pravidla | Opis pravidla | Závažnosť | Kategória |
---|---|---|---|---|
Zásuvný modul alebo aktivita pracovného postupu | meta-remove-dup-reg | Vyhnite sa duplikátu Dataverse registrácie doplnkov. | Kritické | Výkon |
Zásuvný modul alebo aktivita pracovného postupu | meta-avoid-reg-no-attribute | Zahrnúť atribúty filtrovania do Dataverse registrácie doplnkov. | Stredný | Výkon |
Zásuvný modul alebo aktivita pracovného postupu | meta-avoid-reg-retrieve | Buďte opatrní pri zásuvných moduloch Dataverse zaregistrovaných pre správy Načítať a Načítať viacero. | Stredný | Výkon |
Zásuvný modul alebo aktivita pracovného postupu | meta-remove-inactive | Odstránenie neaktívnych konfigurácií Dataverse | Nízky | Možnosť údržby |
Zásuvný modul alebo aktivita pracovného postupu | meta-avoid-crm4-event | Nepoužívať etapu registrácie zásuvného modulu Microsoft Dynamics CRM 4.0. | Stredný | Pripravenosť na upgrade |
Zásuvný modul alebo aktivita pracovného postupu | meta-avoid-retrievemultiple-annotation | Vyhnite sa registrácii zásuvného modulu v RetrieveMultiple anotácie. | Vysoký | Využitie |
Modelom riadená aplikácia | meta-licenčné-predajné-subjekty-operácie | Riešenie obsahuje entity s obmedzenými správami SDK a operáciami, ktoré vyžadujú platnú licenciu Dynamics 365. | Nízky | Licencovanie |
Modelom riadená aplikácia | meta-licencia-fieldservice-customcontrols | Riešenie obsahuje vlastné ovládacie prvky, ktoré vyžadujú platnú Dynamics 365 Field Service licenciu. | Nízky | Licencovanie |
Modelom riadená aplikácia | meta-licencia-fieldservice-entity-operácie | Riešenie obsahuje entity s obmedzenými správami SDK a operáciami, ktoré vyžadujú platnú Dynamics 365 Field Service licenciu. | Nízky | Licencovanie |
Webové zdroje | use-async | Komunikovať so zdrojmi HTTP a HTTPS asynchrónne. | Kritické | Výkon |
Webové zdroje | avoid-modals | Vyhnúť sa používaniu modálnych dialógových okien. | Vysoký | Možnosť podpory |
Webové zdroje | avoid-dom-form | Vysoký | Možnosť podpory | |
Webové zdroje | avoid-dom-form-event | Vysoký | Možnosť podpory | |
Webové zdroje | avoid-crm2011-service-odata | Nezacieľovať koncový bod Microsoft Dynamics CRM 2011 OData 2.0. | Kritické | Pripravenosť na upgrade |
Webové zdroje | avoid-crm2011-service-soap | Nezacieľovať služby Microsoft Dynamics CRM 2011 SOAP. | Kritické | Pripravenosť na upgrade |
Webové zdroje | vyhýbať sa téme | Nepoužívajte loadTheme Fluent v8 API. |
Nízky | Možnosť podpory |
Webové zdroje | avoid-browser-specific-api | Nepoužívať staršie API pre Internet Explorer alebo zásuvné moduly prehliadača. | Kritické | Pripravenosť na upgrade |
Webové zdroje | avoid-unpub-api | Vysoký | Možnosť podpory | |
Webové zdroje | avoid-window-top | Vysoký | Možnosť podpory | |
Webové zdroje | avoid-2011-api | Nepoužívať zastaraný objektový model Microsoft Dynamics CRM 2011. Namiesto toho dodržiavajte dokumentáciu Dataverse Web API. | Vysoký | Pripravenosť na upgrade |
Webové zdroje | use-relative-uri | Nepoužívať absolútne URL koncového bodu Dataverse. | Stredný | Možnosť údržby |
Webové zdroje | use-cached-webresource | Stredný | Výkon | |
Webové zdroje | use-client-context | Používať kontakty klienta. | Stredný | Pripravenosť na upgrade |
Webové zdroje | use-navigation-api | Umožňuje používať parametre API navigácie. | Stredný | Pripravenosť na upgrade |
Webové zdroje | use-offline | Stredný | Pripravenosť na upgrade | |
Webové zdroje | do-not-make-parent-assumption | Vysoký | Návrh | |
Webové zdroje | use-org-setting | Používať nastavenia organizácie. | Stredný | Pripravenosť na upgrade |
Webové zdroje | use-global-context | Stredný | Pripravenosť na upgrade | |
Webové zdroje | use-grid-api | Používať API mriežky. | Stredný | Pripravenosť na upgrade |
Webové zdroje | use-utility-dialogs | Stredný | Využitie | |
Webové zdroje | avoid-isActivityType | Nahradiť metódu Xrm.Utility.isActivityType novou metódou Xrm.Utility.gettableMetadata a nepoužíva v pravidlách pre pás s nástrojmi. | Stredný | Pripravenosť na upgrade |
Webové zdroje | meta-avoid-silverlight | Použitie webového prostriedku Silverlight je zastarané. | Stredný | Pripravenosť na upgrade |
Webové zdroje | remove-debug-script | Vyhnite sa zahrnutiu skriptu ladenia v nevývojových prostrediach. | Stredný | Využitie |
Webové zdroje | use-strict-mode | Ak je to možné, použite prísny režim. | Stredný | Využitie |
Webové zdroje | use-strict-equality-operators | Použite prísnych operátorov rovnosti. | Stredný | Využitie |
Webové zdroje | vyhnúť-eval | Nepoužívajte funkciu „eval“ alebo jej funkčné ekvivalenty. | Kritické | Zabezpečenie |
Webové zdroje | vyhnúť sa | Nepoužívajte operátor „with“. | Vysoký | Výkon |
Webové zdroje | odstrániť-upozornenie | Nepoužívajte funkciu „alert“ ani jej funkčné ekvivalenty. | Stredný | Využitie |
Webové zdroje | odstrániť konzolu | Nepoužívajte metódy na konzole. | Stredný | Využitie |
Webové zdroje | avoid-ui-refreshribbon | Nepoužívajte refreshRibbon v onload a EnableRule formulára. | Kritické | Výkon |
Webové zdroje | use-getsecurityroleprivilegesinfo | Vyhnite sa userSettings.securityRolePrivileges. Namiesto toho použite userSettings.getSecurityRolePrivilegesInfo. | Vysoký | Výkon |
Webové zdroje | use-appsidepane-api | Namiesto Xrm.Panels.loadPanel použite Xrm.App.sidePanes.createPane. | Stredný | Pripravenosť na upgrade |
Webové zdroje | web-sdl-no-cookies | Súbory cookie HTTP sú starým mechanizmom ukladania na strane klienta s inherentnými rizikami a obmedzeniami. Namiesto toho použite Web Storage, IndexedDB alebo iné moderné metódy. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-document-domain | Zápisy do vlastníctva document.domain musia byť skontrolované, aby sa predišlo obchádzaniu kontrol rovnakého pôvodu. Používanie domén najvyššej úrovne ako azurewebsites.net je prísne zakázané. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-document-write | Volania na document.write alebo document.writeln manipulujú s DOM priamo bez akejkoľvek dezinfekcie a mali by ste sa im vyhnúť. Namiesto toho použite document.createElement() alebo podobné metódy. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-html-metóda | Priame volania metódy html() často (napr. v rámci jQuery) manipulujú s DOM bez akejkoľvek dezinfekcie a je potrebné sa im vyhnúť. Namiesto toho použite document.createElement() alebo podobné metódy. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-inner-html | Priradenia k vlastnostiam innerHTML alebo externalHTML priamo manipulujú s DOM bez akejkoľvek dezinfekcie a mali by ste sa im vyhnúť. Namiesto toho použite document.createElement() alebo podobné metódy. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-insecure-url | Nezabezpečené protokoly ako HTTP alebo FTP je potrebné nahradiť ich šifrovanými náprotivkami (HTTPS, FTPS), aby sa zabránilo odosielaniu potenciálne citlivých údajov cez nedôveryhodné siete vo formáte nezašifrovaného textu. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-msapp-exec-unsafe | Volania metódy MSApp.execUnsafeLocalFunction() obchádzajú overenie vloženia skriptu a treba sa im vyhnúť. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-postmessage-star-origin | Pri odosielaní údajov do iných okien pomocou metódy postMessage vždy uveďte konkrétny cieľový pôvod, nie *, aby ste predišli úniku údajov mimo hranice dôveryhodnosti. | Stredný | Zabezpečenie |
Webové zdroje | web-sdl-no-winjs-html-unsafe | Volania WinJS.Utilities.setInnerHTMLUnsafe() a podobné metódy nevykonávajú žiadnu validáciu vstupu a mali by ste sa im vyhnúť. Namiesto toho použite WinJS.Utilities.setInnerHTML(). | Stredný | Zabezpečenie |
Aplikácia plátna | app-formula-issues-high | Pozrite si odkazy na vzorce Power Apps pre ďalšie podrobnosti. | Kritické | Návrh |
Aplikácia plátna | app-formula-issues-medium | Pozrite si odkazy na vzorce Power Apps pre ďalšie podrobnosti. | Stredný | Návrh |
Aplikácia plátna | app-formula-issues-low | Pozrite si odkazy na vzorce Power Apps pre ďalšie podrobnosti. | Nízky | Návrh |
Aplikácia plátna | app-use-delayoutput-text-input | Na zlepšenie výkonu použite v niektorých scenároch oneskorené načítanie. | Stredný | Výkon |
Aplikácia plátna | app-reduce-screen-controls | Na zlepšenie výkonu obmedzte počet ovládacích prvkov aplikácie. | Stredný | Výkon |
Aplikácia plátna | app-include-accessible-label | Na zlepšenie prístupu k aplikácii používajte explicitné štítky. | Stredný | Zjednodušenie ovládania |
Aplikácia plátna | app-include-alternative-input | Zaistite, aby všetky interaktívne prvky boli prístupné pre alternatívne vstupy. | Stredný | Zjednodušenie ovládania |
Aplikácia plátna | app-aoid-autostart | Nepoužívajte automatické spustenie na prehrávačoch v aplikácii. | Stredný | Zjednodušenie ovládania |
Pozrite si tiež
Osvedčené postupy a usmernenie pre Dataverse
Najlepšie postupy a usmernenia pre aplikácie riadené modelom
Bežné problémy a riešenia pre nástroj na kontrolu riešení
Poznámka
Môžete nás informovať o svojich voľbách jazyka pre dokumentáciu? Absolvujte krátky prieskum. (upozorňujeme, že tento prieskum je v angličtine)
Prieskum bude trvať približne sedem minút. Nezhromažďujú sa žiadne osobné údaje (vyhlásenie o používaní osobných údajov).