Mellora o rendemento, a estabilidade e a fiabilidade da solución
As solucións úsanse para distribuír Power Platform obxectos, como aplicacións, táboas, fluxos, recursos web e complementos. Neste artigo preséntase a función de comprobación de solucións, unha poderosa ferramenta que realiza unha análise estática completa dos seus obxectos de solución en función dun conxunto de regras de prácticas recomendadas. Ao usar o comprobador de solucións, pode identificar rapidamente patróns problemáticos nos seus compoñentes e recibir informes detallados que resaltan os problemas, os compoñentes afectados e proporcionan ligazóns á documentación sobre como resolver cada problema. Isto garante que as súas solucións estean optimizadas para o rendemento, a estabilidade e a fiabilidade.
O verificador de solucións traballa con solucións non xestionadas que se poden exportar desde un ambiente.
Podes executar o comprobador de solucións desde Power Apps (make.powerapps.com) ou mediante PowerShell.
Como che axuda o corrector de solucións
Para satisfacer requisitos empresariais complexos, os creadores adoitan ter solucións moi avanzadas que personalizan e amplían Power Platform. Con implementacións avanzadas aumenta o risco, porque se presentan problemas de rendemento, estabilidade e fiabilidade que poden afectar negativamente a experiencia de usuario. Identificar e comprender como resolver estes problemas pode ser complexo e laborioso. Coa función de verificación de solucións, pode realizar unha comprobación na súa solución en segundos, que utiliza un conxunto de regras de prácticas recomendadas para identificar rapidamente patróns problemáticos. Despois de completar a comprobación, recibirá un informe detallado en Power Apps así como nunha mensaxe de correo electrónico que enumera os problemas identificados, os compoñentes e o código afectados e ligazóns á documentación que describe como resolver cada problema.
O verificador de solucións analiza estes compoñentes da solución:
- Actividades de fluxo de traballo personalizado de Dataverse
- Recursos web de Dataverse (HTML e JavaScript)
- Configuracións de Dataverse, como pasos de mensaxes de SDK
- Power Automate fluxos (a través de comprobador de fluxo)
- Power Fx expresións (mediante comprobador de aplicacións)
Nota
- O comprobador de solucións admite variables globais para ECMAScript 2015 (ES6) e ata sintaxe ECMAScript 2018 (ES9). Cando se detecta JavaScript usando variables globais posteriores a ES6 ou sintaxe posterior a ES9, infórmase dun problema de sintaxe non compatible coa web para o recurso web.
- O uso do comprobador de solucións non garante que a importación de solucións teña éxito. As comprobacións de análise estática realizadas na solución non coñecen o estado configurado do ambiente de destino e o éxito da importación pode depender doutras solucións ou configuracións do ambiente.
Executar o verificador de solucións
Inicie sesión en Power Apps.
No panel esquerdo, seleccione Solucións. Se o elemento non está no panel lateral, seleccione …Máis e, a seguir, seleccione o elemento que desexe.
Xunto á solución non xestionada que desexa analizar, seleccione ..., vaia a Verificador de solucións e, a seguir, seleccione Executar.
O botón de comando Comprobador de solucións ten un indicador de carga e notarás un Executándose... na columna Verificador de solucións da lista Solución.
Nota
- O verificador de solucións pode tardar varios minutos en finalizar a análise.
- Vostede recibe un correo electrónico de notificación e unha notificación na área Notificacións do sitio de Power Apps cando finalice a comprobación.
- Ver o informe cando finalice a comprobación.
Cancelar unha comprobación
Despois de enviar unha comprobación de solucións no seu ambiente, a comprobación pode cancelarse a través do panel de estado na área superior dereita da páxina Solucións.
Cando vostede cancela unha comprobación, a comprobación da solución deixa de executarse e a comprobación da solución volve ao estado anterior.
Estados do verificador de solucións
Ao instalar o verificador de solucións no seu ambiente, a columna Comprobación de solución pasa a estar dispoñible na lista Solucións. Nesta columna móstranse os estados de análise para unha solución.
Estado | Descrición |
---|---|
Non se executou | A solución non se analizou. |
En execución | A solución está a ser analizada. |
Non se puido completar | A análise de solucións solicitouse, pero non se completou correctamente. |
Resultados na data e hora | A análise de solucións se completou e los resultados están dispoñibles para descargar. |
Non se puido completar. Resultado na data e hora | A última solicitude de análise non se completou correctamente. Os últimos resultados correctos poden descargarse. |
Comprobado por Microsoft | Esta é unha solución xestionada por Microsoft. A análise de solucións non está permitida nestas solucións. |
Comprobado polo editor | Este é un solución administrada que non é de Microsoft. Actualmente, a análise de solucións non está dispoñible para estas solucións. |
Revise o informe do verificador de solucións
Cando se complete unha verificación de solución, pode ver o informe de análise no portal ou pode descargar o informe desde o seu navegador web. No portal, tes opcións para ordenar os resultados por Problema, Localización ou por Gravidade e consulta información detallada dos problemas detectados na túa solución.
No panel esquerdo, seleccione Solucións. Se o elemento non está no panel lateral, seleccione …Máis e, a seguir, seleccione o elemento que desexe.
Xunto á solución non xestionada onde desexa ver o informe do verificador de solucións, seleccione ..., vaia ao Verificador de solucións e, a seguir, seleccione Ver resultados.
Seleccione un problema para ver os detalles e as orientacións sobre como resolvelo.
Os resultados da verificación de solucións tamén están dispoñibles para descargar. O ficheiro zip do verificador de solucións descárgase no cartafol especificado polo explorador web. O informe de descarga está en formato Excel e contén varias visualizacións e columnas que axudan a identificar o impacto, tipo e localización de cada problema detectado na solución. Tamén se facilita unha ligazón á orientación detallada sobre como resolver o problema.
- No panel esquerdo, seleccione Solucións. Se o elemento non está no panel lateral, seleccione …Máis e, a seguir, seleccione o elemento que desexe.
- Xunto á solución non xestionada onde desexa descargar o informe do verificador de solucións, seleccione ..., vaia a Verificador de solucións e, a seguir, seleccione Descargar resultados.
- O ficheiro zip do verificador de solucións descárgase no cartafol especificado polo explorador web.
Este é un resumo de cada columna do informe.
Columna de informe | Descripción | Aplícase ao compoñente |
---|---|---|
Problema | O título do problema identificado na solución. | Todo |
Categoría | A categorización do problema identificado, como Rendemento, Mantebilidade, Uso, Compatibilidade, Deseño, Seguridade, Accesibilidade ou Preparación para actualizar. | Todas |
Severidade | Representa o impacto potencial do problema identificado. Os tipos de impacto dispoñibles son Crítico, Alto, Medio, Baixa e Informativo. | Todas |
Axuda | Ligazón ao artigo que detalla o problema, o impacto e a acción recomendada. | Todo |
da solución | O compoñente de solucións onde se identificou o problema. | Todo |
Location | A localización e/ou o ficheiro de orixe do compoñente onde se produciu o problema que identificou, como o ensamblado ou o nome do ficheiro JavaScript. | Todo |
Nº. de liña | A referencia de número de liña do problema no compoñente do recurso web afectado. | Recursos web |
Módulo | Nome do módulo onde se detectou o problema identificado no ensamblado. | Actividade de fluxo de traballo personalizado |
Tipo | Tipo de problema identificado no ensamblado. | Actividade de fluxo de traballo personalizado |
Membro | Membro do problema identificado no ensamblado. | Actividade de fluxo de traballo personalizado |
Declaración | A declaración de código ou configuración produciu o problema. | Todo |
Comentarios | Detalles acerca do problema que inclúen pasos de resolución de alto nivel. | Todas |
Executar as regras do comprobador de solucións localmente
Pode executar regras do comprobador de solucións no seu ambiente de desenvolvemento para detectar problemas moito antes mentres crea os seus recursos de solución. Actualmente é compatible con recursos web (JavaScript e TypeScript). Para obter máis información, vai ao paquete NPM @microsoft/eslint-plugin-power-apps.
Executa o comprobador de solucións usando PowerShell
Hai un módulo de PowerShell dispoñible que pode usar para interactuar directamente co servizo. O módulo Microsoft.PowerApps.Checker.PowerShell pode usarse para a análise de solucións non xestionadas para ambientes de Power Apps ou para automatizar e integrar o servizo nas súas canles de compilación e publicación. Máis información: Microsoft.PowerApps Descrición xeral de .Checker.PowerShell
Regras de prácticas recomendadas usadas polo verificador de solucións
A seguinte táboa enumera o tipo de compoñente, a descrición da regra, a gravidade e a categoría. As infraccións críticas bloquearanse ou advírtense cando se configuran para a aplicación do comprobador de solucións con Ambientes xestionados. Máis información: Utiliza o comprobador de solucións en Ambientes xestionados
Compoñente da solución | Nome da regra | Descrición da regra | Severidade | Categoría |
---|---|---|---|---|
Complemento ou actividade de fluxo de traballo | meta-remove-dup-reg | Evite duplicar rexistros de complementos de Dataverse. | Crítico | Desempeño |
Complemento ou actividade de fluxo de traballo | meta-avoid-reg-no-attribute | Incluír atributos de filtrado con rexistros de complementos de Dataverse. | Mediana | Desempeño |
Complemento ou actividade de fluxo de traballo | meta-avoid-reg-retrieve | Teña coidado cos complementos de Dataverse existrados para mensaxes de recuperación e de recuperación múltiple. | Mediana | Desempeño |
Complemento ou actividade de fluxo de traballo | meta-remove-inactive | Eliminar configuracións inactivas en Dataverse. | Baixo | Mantemento |
Complemento ou actividade de fluxo de traballo | meta-avoid-crm4-event | Non utilice a fase de rexistro de complementos Microsoft Dynamics CRM 4.0. | Mediana | Preparación para actualizar |
Complemento ou actividade de fluxo de traballo | meta-avoid-retrievemultiple-annotation | Evite rexistrar un complemento en RetrieveMultiple de anotación. | Alto | Uso |
Aplicación controlada por modelos | meta-licenza-operacións-entidades-de-vendas | A solución contén entidades con mensaxes e operacións de SDK restrinxidas que requiren unha licenza de Dynamics 365 válida. | Baixo | Obtención de licenzas |
Aplicación controlada por modelos | meta-licenza-fieldservice-customcontrols | A solución contén controis personalizados que requiren unha Dynamics 365 Field Service licenza válida. | Baixo | Obtención de licenzas |
Aplicación controlada por modelos | meta-licenza-fieldservice-entity-operations | A solución contén entidades con mensaxes de SDK restrinxidas e operacións que requiren unha licenza Dynamics 365 Field Service válida. | Baixo | Obtención de licenzas |
Recursos web | use-async | Interactúe con recursos HTTP e HTTPS asincronicamente. | Crítico | Desempeño |
Recursos web | avoid-modals | Evite o uso de diálogos modais. | Alto | Compatibilidade |
Recursos web | avoid-dom-form | Alto | Compatibilidade | |
Recursos web | avoid-dom-form-event | Alto | Compatibilidade | |
Recursos web | avoid-crm2011-service-odata | Non se dirixa ao extremo de Microsoft Dynamics CRM 2011 OData 2.0. | Crítico | Preparación para actualizar |
Recursos web | avoid-crm2011-service-soap | Non se dirixa aos servizos de Microsoft Dynamics CRM 2011 SOAP. | Crítico | Preparación para actualizar |
Recursos web | evitar-cargar tema | Non utilices loadTheme API de Fluent v8. |
Baixo | Compatibilidade |
Recursos web | avoid-browser-specific-api | Non utilice complementos do explorador ou API herdados de Internet Explorer. | Crítico | Preparación para actualizar |
Recursos web | avoid-unpub-api | Alto | Compatibilidade | |
Recursos web | avoid-window-top | Alto | Compatibilidade | |
Recursos web | avoid-2011-api | Non utilice o modelo de obxectos de Microsoft Dynamics CRM 2011 obsoleto. No seu lugar, siga a documentación da API web de Dataverse. | Alto | Preparación para actualizar |
Recursos web | use-relative-uri | Non utilice os URL de extremo absoluto de Dataverse. | Mediana | Mantemento |
Recursos web | use-cached-webresource | Mediana | Desempeño | |
Recursos web | use-client-context | Utilice contextos de cliente. | Mediana | Preparación para actualizar |
Recursos web | use-navigation-api | Use os parámetros das API de navegación. | Mediana | Preparación para actualizar |
Recursos web | use-offline | Mediana | Preparación para actualizar | |
Recursos web | do-not-make-parent-assumption | Alto | Deseño | |
Recursos web | use-org-setting | Utilice a configuración de organización. | Mediana | Preparación para actualizar |
Recursos web | use-global-context | Mediana | Preparación para actualizar | |
Recursos web | use-grid-api | Utilice as API de grade. | Mediana | Preparación para actualizar |
Recursos web | use-utility-dialogs | Mediana | Uso | |
Recursos web | avoid-isActivityType | Substitúa o método Xrm.Utility.isActivityType polo novo Xrm.Utility.gettableMetadata e non o utilice en regras de fita de opcións. | Mediana | Preparación para actualizar |
Recursos web | meta-avoid-silverlight | O uso do recurso web de Silverlight quedou obsoleto. | Mediana | Preparación para actualizar |
Recursos web | remove-debug-script | Evite incluír script de depuración en ambientes que non sexan de desenvolvemento. | Mediana | Uso |
Recursos web | modo de uso estrito | Use o modo estrito cando sexa posible. | Mediana | Uso |
Recursos web | usar-operadores-estrictos-igualdade | Use operadores de igualdade estritos. | Mediana | Uso |
Recursos web | evitar-eval | Non use a función eval ou os seus equivalentes funcionais. |
Crítico | Seguranza |
Recursos web | evitar-con | Non use o operador "con". | Alto | Desempeño |
Recursos web | eliminar-alerta | Non use a función "alert" nin os seus equivalentes funcionais. | Mediana | Uso |
Recursos web | remove-console | Evite usar métodos na consola. | Mediana | Uso |
Recursos web | avoid-ui-refreshribbon | Evite usar refreshRibbon na forma onload e EnableRule. | Crítico | Desempeño |
Recursos web | use-getsecurityroleprivilegesinfo | Evite userSettings.securityRolePrivileges. Use userSettings.getSecurityRolePrivilegesInfo no seu lugar. | Alto | Desempeño |
Recursos web | use-appsidepane-api | Use Xrm.App.sidePanes.createPane en lugar de Xrm.Panels.loadPanel. | Mediana | Preparación para actualizar |
Recursos web | web-sdl-sen-cookies | As cookies HTTP son un antigo mecanismo de almacenamento do cliente con riscos e limitacións inherentes. Use o Web Storage, IndexedDB ou outros métodos modernos. | Mediana | Seguranza |
Recursos web | web-sdl-no-document-domain | As escrituras na propiedade document.domain deben revisarse para evitar que se omitan as comprobacións da mesma orixe. O uso de dominios de nivel superior como azurewebsites.net está estrictamente prohibido. | Mediana | Seguranza |
Recursos web | web-sdl-no-document-write | As chamadas a document.write ou document.writeln manipulan DOM directamente sen ningún tipo de desinfección e deben evitarse. Use document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
Recursos web | método web-sdl-no-html | As chamadas directas ao método html() moitas veces (por exemplo, no marco de jQuery) manipulan DOM sen ningún tipo de desinfección e deben evitarse. Use document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
Recursos web | web-sdl-no-inner-html | As asignacións a propiedades innerHTML ou outerHTML manipulan DOM directamente sen ningún tipo de desinfección e deben evitarse. Use document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
Recursos web | web-sdl-no-insecure-url | Os protocolos pouco seguros, como HTTP ou FTP, deben substituírse polos seus homólogos cifrados (HTTPS, FTPS) para evitar o envío de datos potencialmente confidenciais a través de redes que non son de confianza en texto sen cifrar. | Mediana | Seguranza |
Recursos web | web-sdl-no-msapp-exec-unsafe | As chamadas a MSApp.execUnsafeLocalFunction() omiten a validación da inxección do script e, polo tanto, deben evitarse. | Mediana | Seguranza |
Recursos web | web-sdl-no-postmessage-star-origin | Forneza sempre a orixe de destino específica, non * ao enviar datos a outras ventás mediante postMessage para evitar fugas de datos fóra do límite de confianza. | Mediana | Seguranza |
Recursos web | web-sdl-no-winjs-html-unsafe | As chamadas a WinJS.Utilities.setInnerHTMLUnsafe() e métodos similares non realizan ningunha validación de entrada e deben evitarse. Use WinJS.Utilities.setInnerHTML() no seu lugar. | Mediana | Seguranza |
Aplicación de lenzo | aplicación-formula-problemas-alto | Vaia a Power Apps referencia da fórmula para obter máis detalles. | Crítico | Deseño |
Aplicación de lenzo | aplicación-formula-problemas-medio | Consulte as referencias de fórmulas de Power Apps para ver máis detalles. | Mediana | Deseño |
Aplicación de lenzo | aplicación-formula-problemas-baixo | Consulte as referencias de fórmulas de Power Apps para ver máis detalles. | Baixo | Deseño |
Aplicación de lenzo | app-use-delayoutput-text-input | Use a carga atrasada nalgúns escenarios para mellorar o rendemento. | Mediana | Desempeño |
Aplicación de lenzo | aplicación-reducir-controis da pantalla | Limite o número de controis da aplicación para mellorar o rendemento. | Mediana | Desempeño |
Aplicación de lenzo | aplicación-include-etiqueta-accesible | Use etiquetas explícitas para mellorar a accesibilidade á aplicación. | Mediana | Accesibilidade |
Aplicación de lenzo | aplicación-include-entrada-alternativa | Asegúrese de que todos os elementos interactivos sexan accesibles a entradas alternativas. | Mediana | Accesibilidade |
Aplicación de lenzo | aplicación-evitar-inicio automático | Evite o inicio automático en reprodutores dunha aplicación. | Mediana | Accesibilidade |
Consulte tamén
Prácticas recomendadas e orientación para Dataverse
Prácticas recomendadas e orientación para aplicacións controladas por modelos
Problemas comúns e resolucións do verificador de solucións
Nota
Pode indicarnos as súas preferencias para o idioma da documentación? Realice unha enquisa breve. (teña en conta que esa enquisa está en inglés)
Esta enquisa durará sete minutos aproximadamente. Non se recompilarán datos persoais (declaración de privacidade).