Milloreu el rendiment, l'estabilitat i la fiabilitat dels components amb el verificador de solucions
Per complir amb requisits empresarials complexos, els fabricants sovint poden acabar amb solucions molt avançades que personalitzen i amplien la Microsoft Dataverse plataforma. Amb implementacions avançades, es augmenta el risc en què es presenten problemes de rendiment, estabilitat i fiabilitat, que poden afectar negativament l'experiència de l'usuari. Identificar i comprendre com resoldre aquests problemes pot ser complicat i comporta molt de temps. Amb la característica del verificador de solucions, podeu realitzar una verificació d'anàlisi estàtica rica en les vostres solucions amb un conjunt de regles de les pràctiques recomanades i identificar ràpidament aquests patrons problemàtics. Un cop finalitzada la verificació, rebreu un informe detallat que enumera els problemes identificats, els components i el codi afectat i els vincles a la documentació que descriu com resoldre cada problema.
El verificador de solucions analitza aquests components de la solució:
- Activitats de fluxos de treball personalitzats del Dataverse
- Recursos web d'aplicacions (HTML i JavaScript) del Dataverse
- Configuracions del Dataverse, com els passos del missatge de l'SDK
- Power Automate Fluxos (a través de Flow Checker)
- Power Fx Expressions (mitjançant el verificador d'aplicacions)
El verificador de solucions funciona amb solucions no administrades que es poden exportar des d'un entorn.
Nota
- En aquest tema s'explica com executar el verificador de solucions des del portal del fabricant del Power Apps. També hi ha un mòdul del PowerShell que podeu utilitzar per interactuar directament amb el servei. El mòdul Microsoft..PowerApps.Checker.PowerShell es pot utilitzar per a l'anàlisi de solucions no administrades per a entorns del Power Apps, o per automatitzar i integrar el servei en les vostres compilacions i llançaments. Més informació: Microsoft.PowerApps. Visió general de Checker.PowerShell
- El verificador de solucions admet variables globals per a la sintaxi ECMAScript 2015 (ES6) i fins a ECMAScript 2018 (ES9). Quan es detecta el JavaScript amb variables globals posteriors a ES6 o sintaxi posterior a ES9, s'informa d'un problema de sintaxi incompatible amb el web per al recurs web.
- L'ús del verificador de solucions no garanteix que la importació d'una solució es realitzi correctament. Les comprovacions d'anàlisi estàtiques realitzades a la solució no coneixen l'estat configurat de l'entorn de destinació i l'execució correcta de la importació pot dependre d'altres solucions o configuracions de l'entorn.
Executar el verificador de solucions
Inicieu la sessió a Power Apps.
A la subfinestra esquerra, seleccioneu Solucions. Si l'element no és a la subfinestra lateral, seleccioneu …Més i, a continuació, seleccioneu l'element que vulgueu.
Al costat de la solució no administrada que voleu analitzar, seleccioneu ..., Verificador de solucions i, a continuació, Executa.
El botó de comandament de la comprovació de la solució té un indicador de càrrega i notareu un S'està executant... a la columna del Verificador de solucions de la llista Solucions.
Tingueu en compte el següent:
El verificador de solucions pot trigar uns quants minuts a completar l'anàlisi.
Rebreu una notificació per correu electrònic i una notificació a l'àrea Notificacions del lloc del Power Apps quan es completi la verificació.
Consulteu l'informe quan s'hagi completat la verificació.
Cancel·lar una verificació
Després d'enviar una verificació de solucions al vostre entorn, es pot cancel·lar a través de la subfinestra d'estat a la part superior dreta de la pàgina Solucions.
Quan cancel·leu una verificació, aquesta deixa de funcionar i torna a l'estat anterior.
Estats del verificador de solucions
Quan instal·leu el verificador de solucions al vostre entorn, la columna Verificació de la solució estarà disponible a la llista Solucions. Aquesta columna mostra els estats de l'anàlisi per a una solució.
Província o estat | Descripció |
---|---|
No s'ha executat | La solució no s'ha analitzat. |
En execució | S'està analitzant la solució. |
No s'ha pogut completar | L'anàlisi de la solució s'ha sol·licitat, però no s'ha completat correctament. |
Resultats a partir de la data i l'hora | Anàlisi de la solució completat i els resultats estan disponibles per a la seva descàrrega. |
No s'ha pogut completar. Resultat a partir de la data i l'hora | L'última sol·licitud d'anàlisi no s'ha completat correctament. Es poden descarregar els últims resultats correctes. |
Verificada per Microsoft | Aquesta és la solució administrada per Microsoft. L'anàlisi no està permès en aquestes solucions. |
Revisada per l'editor | Es tracta d'una solució administrada de tercers. Actualment, l'anàlisi de solucions no està disponible per aquestes solucions. |
Reviseu l'informe del verificador de solucions
Quan s'hagi completat una comprovació de la solució, podeu visualitzar l'informe anàlisi al portal o bé podeu baixar l'informe des del navegador web. Al portal, teniu opcions per ordenar els resultats per Problema, Ubicació o per Gravetat i veure informació detallada dels problemes detectats a la solució.
A la subfinestra esquerra, seleccioneu Solucions. Si l'element no és a la subfinestra lateral, seleccioneu …Més i, a continuació, seleccioneu l'element que vulgueu.
Al costat de la solució no administrada on voleu veure l'informe de verificació de la solució, seleccioneu ..., Verificador de solucions i, seguidament, Visualitza els darrers resultats.
Seleccioneu un problema per veure'n els detalls i orientar-vos sobre com resoldre'l.
Els resultats del verificador de solucions també estan disponibles per a la baixada. El fitxer zip del verificador de solucions es descarrega a la carpeta especificada pel vostre navegador web. L'informe de baixada es troba en format Excel i conté diverses visualitzacions i columnes que us ajuden a identificar l'impacte, el tipus i la ubicació de cada problema detectat a la vostra solució. També es proporciona un enllaç a una guia detallada sobre com resoldre el problema.
- A la subfinestra esquerra, seleccioneu Solucions. Si l'element no és a la subfinestra lateral, seleccioneu …Més i, a continuació, seleccioneu l'element que vulgueu.
- Al costat de la solució no administrada on voleu baixar l'informe de verificació de la solució, seleccioneu ..., Verificador de solucions i, seguidament, Baixa els resultats.
- El fitxer zip del verificador de solucions es descarrega a la carpeta especificada pel vostre navegador web.
A continuació es mostra un resum de cada columna de l'informe.
Columna d'informe | Descripció | S'aplica al component |
---|---|---|
Problema | Títol del problema identificat a la solució. | Tot |
Categoria | La categorització del problema identificat, com ara Rendiment, Mantenibilitat , Ús , Suportabilitat , Disseny , Seguretat , Accessibilitat o Preparació per actualitzar . · | Totes |
Gravetat | Representa l'impacte potencial del problema identificat. Els tipus d'impacte disponibles són crítics, alts , mitjans ·, baixos i informatius . · | Totes |
Orientació | Enllaç a l'article que detalla el problema, l'impacte i les accions recomanades. | Tot |
soluci | El component de la solució on s'ha identificat el problema. | Tot |
Location | La ubicació i/o el fitxer d'origen del component on es va produir el problema que s'ha identificat, com ara l'assemblatge o el nom del fitxer del JavaScript. | Tot |
Línia núm. | La referència del número de línia del problema en el component de recursos web afectat. | Recursos web |
Mòdul | Nom del mòdul on es va detectar el problema identificat a l'assemblatge. | Activitat de flux de treball personalitzat |
Type | Tipus del problema identificat a l'assemblatge. | Activitat de flux de treball personalitzat |
Membre | Membre del problema identificat a l'assemblatge. | Activitat de flux de treball personalitzat |
Declaració | La declaració o configuració del codi que ha donat lloc al problema. | Tot |
Comentaris | Detalls sobre el problema que inclouen passos de resolució d'alt nivell. | Totes |
Executar regles del comprovador de solucions localment
Podeu executar regles del comprovador de solucions al vostre entorn de desenvolupament per detectar problemes molt més aviat quan creeu els recursos de la solució. Actualment, s'admet per als recursos web (JavaScript i TypeScript). Per obtenir més informació, aneu al paquet @microsoft/eslint-plugin-power-apps NPM.
Regles de les pràctiques recomanades que utilitza el verificador de solucions
La taula següent enumera el tipus de component, la descripció de la regla, la gravetat i la categoria. Les infraccions crítiques es bloquegen o s'adverteixen quan es configuren per a l'aplicació de la verificació de solucions amb entorns administrats. Més informació: Utilitzar el verificador de solucions en entorns administrats
Component de la solució | Nom de la regla | Descripció de la regla | Gravetat | Categoria |
---|---|---|---|---|
Complement o activitat de flux de treball | meta-remove-dup-reg | Eviteu els registres de complements del Dataverse duplicats. | Crític | Rendiment |
Complement o activitat de flux de treball | meta-avoid-reg-no-attribute | Incloeu atributs de filtratge amb els registres de complements del Dataverse. | Mitjà | Rendiment |
Complement o activitat de flux de treball | meta-avoid-reg-retrieve | Aneu amb compte amb els complements del Dataverse registrats per als missatges Retrieve i RetrieveMultiple. | Mitjà | Rendiment |
Complement o activitat de flux de treball | meta-remove-inactive | Suprimiu les configuracions inactives al Dataverse. | Baixa | Manteniment |
Complement o activitat de flux de treball | meta-avoid-crm4-event | No utilitzeu la fase de registre del complement del Microsoft Dynamics CRM 4.0. | Mitjà | Millorar la preparació |
Complement o activitat de flux de treball | meta-avoid-retrievemultiple-annotation | Eviteu el registre d'un connector a RetrieveMultiple d'anotació. | Alta | Ús |
Aplicació basada en models | meta-llicència-vendes-entitat-operacions | La solució conté entitats amb missatges i operacions de l'SDK restringides que requereixen una llicència vàlida del Dynamics 365. | Baixa | Llicències |
Aplicació basada en models | meta-llicència-fieldservice-customcontrols | La solució conté controls personalitzats que requereixen una llicència vàlida Dynamics 365 Field Service . | Baixa | Llicències |
Aplicació basada en models | meta-license-fieldservice-entity-operations | La solució conté entitats amb missatges i operacions de l'SDK restringides que requereixen una llicència vàlida Dynamics 365 Field Service . | Baixa | Llicències |
Recursos web | use-async | Interactueu de forma asíncrona amb recursos HTTP i HTTPS. | Crític | Rendiment |
Recursos web | . | Eviteu utilitzar diàlegs modals. | Alta | Compatibilitat |
Recursos web | avoid-dom-form | Alta | Compatibilitat | |
Recursos web | avoid-dom-form-event | Alta | Compatibilitat | |
Recursos web | avoid-crm2011-service-odata | No segmenteu l'extrem OData 2.0 del Microsoft Dynamics CRM 2011. | Crític | Millorar la preparació |
Recursos web | avoid-crm2011-service-soap | No segmenteu els serveis SOAP del Microsoft Dynamics CRM 2011. | Crític | Millorar la preparació |
Recursos web | evitar-loadtheme | No utilitzeu loadTheme l'API Fluent v8. |
Baixa | Compatibilitat |
Recursos web | avoid-browser-specific-api | No utilitzeu les API heretades o els complements del navegador de l'Internet Explorer. | Crític | Millorar la preparació |
Recursos web | . | Alta | Compatibilitat | |
Recursos web | . | Alta | Compatibilitat | |
Recursos web | avoid-2011-api | No utilitzeu el model d'objectes del Microsoft Dynamics CRM 2011 obsolet. En comptes d'això, seguiu la documentació de l'API web del Dataverse. | Alta | Millorar la preparació |
Recursos web | use-relative-uri | No utilitzeu adreces URL d'extrem absolutes del Dataverse. | Mitjà | Manteniment |
Recursos web | use-cached-webresource | Mitjà | Rendiment | |
Recursos web | use-client-context | Utilitzeu contextos de client. | Mitjà | Millorar la preparació |
Recursos web | use-navigation-api | Utilitzeu els paràmetres de l'API de navegació. | Mitjà | Millorar la preparació |
Recursos web | use-offline | Mitjà | Millorar la preparació | |
Recursos web | do-not-make-parent-assumption | Alta | Dissenyeu-ho | |
Recursos web | use-org-setting | Utilitzeu la configuració d'organització. | Mitjà | Millorar la preparació |
Recursos web | use-global-context | Mitjà | Millorar la preparació | |
Recursos web | use-grid-api | Utilitzeu les API de la xarxa. | Mitjà | Millorar la preparació |
Recursos web | use-utility-dialogs | Mitjà | Ús | |
Recursos web | avoid-isActivityType | Substituïu el mètode Xrm.Utility.isActivityType pel nou Xrm.Utility.gettableMetadata i no l'utilitzeu en regles de la franja. | Mitjà | Millorar la preparació |
Recursos web | meta-avoid-silverlight | L'ús del recurs de web del Silverlight es deixa d'utilitzar. | Mitjà | Millorar la preparació |
Recursos web | remove-debug-script | Eviteu incloure scripts de depuració en entorns que no siguin de desenvolupament. | Mitjà | Ús |
Recursos web | mode estricte d'ús | Utilitzeu el mode estricte quan sigui possible. | Mitjà | Ús |
Recursos web | ús-estricte-igualtat-operadors | Utilitzeu operadors d'igualtat estrictes. | Mitjà | Ús |
Recursos web | evitar-eval | No utilitzeu la funció "eval" ni els seus equivalents funcionals. | Crític | Seguretat |
Recursos web | evitar-amb | No utilitzeu l'operador "amb". | Alta | Rendiment |
Recursos web | remove-alert | No utilitzeu la funció "alert" ni els seus equivalents funcionals. | Mitjà | Ús |
Recursos web | remove-consola | Eviteu utilitzar mètodes a la consola. | Mitjà | Ús |
Recursos web | avoid-ui-refreshribbonavoid-unpub-apiavoid-window-top | Eviteu utilitzar refreshRibon al formulari onload i EnableRule. | Crític | Rendiment |
Recursos web | use-getsecurityroleprivilegesinfo | Eviteu userSettings.securityRolePrivileges. En el seu lloc, utilitzeu userSettings.getSecurityRolePrivilegesInfo. | Alta | Rendiment |
Recursos web | use-appsidepane-api | Utilitzeu Xrm.App.sidePanes.createPane en lloc de Xrm.Panels.loadPanel. | Mitjà | Millorar la preparació |
Recursos web | web-sdl-no-cookies | Les galetes HTTP són un antic mecanisme d'emmagatzematge del costat del client amb riscos i limitacions inherents. Utilitzeu emmagatzematge web, indexedDB o altres mètodes moderns. | Mitjà | Seguretat |
Recursos web | web-sdl-no-document-domini | S'ha de revisar la propietat document.domain per evitar passar per alt les comprovacions del mateix origen. L'ús de dominis de primer nivell com azurewebsites.net està estrictament prohibit. | Mitjà | Seguretat |
Recursos web | web-sdl-no-document-escriure | Les trucades a document.write o document.writeln manipulen el DOM directament sense cap tipus d'higienització i s'han d'evitar. Utilitzeu document.createElement() o mètodes similars. | Mitjà | Seguretat |
Recursos web | web-sdl-no-html-method | Les trucades directes al mètode html() sovint (per exemple, en el marc jQuery) manipulen el DOM sense cap tipus d'higienització i s'han d'evitar. Utilitzeu document.createElement() o mètodes similars. | Mitjà | Seguretat |
Recursos web | web-sdl-no-inner-html | Les assignacions a propietats innerHTML o outerHTML manipulen el DOM directament sense cap tipus d'higienització i s'han d'evitar. Utilitzeu document.createElement() o mètodes similars. | Mitjà | Seguretat |
Recursos web | web-sdl-no-insecure-url | Els protocols no segurs, com ara HTTP o FTP, s'haurien de substituir pels equivalents xifrats (HTTPS, FTPS) per evitar l'enviament de dades potencialment confidencials a través de xarxes que no són de confiança en text sense format. | Mitjà | Seguretat |
Recursos web | web-sdl-no-msapp-exec-unsafe | Les trucades a MSApp.execUnsafeLocalFunction() ometen la validació d'injecció de scripts i s'haurien d'evitar. | Mitjà | Seguretat |
Recursos web | web-sdl-no-postmessage-star-origin | Proporcioneu sempre un origen de destinació específic, no * quan envieu dades a altres finestres mitjançant postMessage per evitar filtracions de dades fora del límit de confiança. | Mitjà | Seguretat |
Recursos web | web-sdl-no-winjs-html-unsafe | Les trucades a WinJS.Utilities.setInnerHTMLUnsafe() i mètodes similars no realitzen cap validació d'entrada i s'han d'evitar. Utilitzeu WinJS.Utilities.setInnerHTML() en el seu lloc. | Mitjà | Seguretat |
Aplicació de llenç | app-formula-issues-high | Consulteu les referències de fórmules del Power Apps per a més detalls. | Crític | Dissenyeu-ho |
Aplicació de llenç | app-fórmula-problemes-mitjà | Consulteu les referències de fórmules del Power Apps per a més detalls. | Mitjà | Dissenyeu-ho |
Aplicació de llenç | app-formula-issues-low | Consulteu les referències de fórmules del Power Apps per a més detalls. | Baixa | Dissenyeu-ho |
Aplicació de llenç | app-use-delayoutput-text-input | Utilitzeu la càrrega retardada en alguns escenaris per millorar el rendiment. | Mitjà | Rendiment |
Aplicació de llenç | app-reduce-screen-controls | Limiteu el nombre de controls de l'aplicació per millorar el rendiment. | Mitjà | Rendiment |
Aplicació de llenç | app-include-accessible-label | Utilitzeu etiquetes explícites per millorar l'accessibilitat de l'aplicació. | Mitjà | Accessibilitat |
Aplicació de llenç | app-include-alternative-input | Assegureu-vos que tots els elements interactius siguin accessibles a les entrades alternatives. | Mitjà | Accessibilitat |
Aplicació de llenç | app-evitar-inici automàtic | Eviteu utilitzar l'inici automàtic en reproductors d'una aplicació. | Mitjà | Accessibilitat |
Consulteu també
Pràctiques recomanades i ajuda per al Dataverse
Pràctiques recomanades i orientació per a les aplicacions basades en el model
Problemes i resolucions habituals per al verificador de solucions
Nota
Ens podeu dir quines són les vostres preferències d'idioma per a la documentació? Responeu una breu enquesta. (tingueu en compte que l'idioma de l'enquesta és l'anglès)
Trigareu uns set minuts a completar l'enquesta. No es recopilen dades personals (declaració de privadesa).
Comentaris
https://aka.ms/ContentUserFeedback.
Properament: al llarg del 2024 eliminarem gradualment GitHub Issues com a mecanisme de retroalimentació del contingut i el substituirem per un nou sistema de retroalimentació. Per obtenir més informació, consulteu:Envieu i consulteu els comentaris de