Nota
O acceso a esta páxina require autorización. Pode tentar iniciar sesión ou modificar os directorios.
O acceso a esta páxina require autorización. Pode tentar modificar os directorios.
As solucións úsanse para distribuír obxectos, como aplicacións, táboas, fluxos, recursos web e complementos. Power Platform Este artigo presenta a funcionalidade de verificación de solucións, unha ferramenta potente que realiza unha análise estática exhaustiva dos obxectos da solución fronte a un conxunto de regras de boas prácticas . Ao usar o verificador de solucións, podes identificar rapidamente patróns problemáticos nos teus compoñentes e recibir informes detallados que destacan os problemas, os compoñentes afectados e proporcionan ligazóns a documentación sobre como resolver cada problema. Isto garante que as tú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 usando PowerShell.
Como che axuda o verificador de solucións
Para cumprir cos complexos requisitos empresariais, os fabricantes adoitan acabar con solucións moi avanzadas que personalizan e amplían o 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 funcionalidade de comprobación de solucións, podes realizar unha comprobación en cuestión de segundos na túa solución, que emprega un conxunto de regras de boas prácticas para identificar rapidamente patróns problemáticos. Unha vez finalizada a comprobación, recibirás un informe detallado nunha Power Apps 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 do comprobador de fluxos)
- Power Fx expresións (a través do 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 verificador de solucións non garante que a importación dunha solución sexa correcta. As comprobacións de análise estática realizadas contra a solución descoñ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
Inicia sesión en Power Apps.
No panel esquerdo, selecciona Solucións. Se o elemento non está no panel lateral, selecciona …Máis e despois selecciona o elemento que queres.
Xunto á solución non xestionada que queres analizar, selecciona ..., vai a Comprobador de solucións e, a seguir, selecciona Executar.
O botón de comando Comprobador de solucións ten un indicador de carga e verás un estado En execución… na columna Comprobación de solucións da lista Solucións .
Nota
- O verificador de solucións pode tardar varios minutos en finalizar a análise.
- Recibirás unha notificación por correo electrónico e unha notificación na área Notificacións do Power Apps sitio web cando se complete a comprobación.
- Consulta o informe cando se complete a comprobación.
Cancelar unha comprobación
Despois de enviar unha comprobación de solucións no seu entorno, esta pódese cancelar 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 entorno, a columna Comprobación de solucións 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 a 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 a 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 | Esta é unha solución non xestionada por 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 ver información detallada dos problemas detectados na túa solución.
No panel esquerdo, selecciona Solucións. Se o elemento non está no panel lateral, selecciona …Máis e despois selecciona o elemento que queres.
Xunto á solución non xestionada onde quere ver o informe do verificador de solucións, seleccione ..., apunte a Verificador de solucións e, a seguir, seleccione Ver resultados.
Selecciona un problema para ver os detalles e as instrució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 che axudan a identificar o impacto, o tipo e a localización de cada problema detectado na túa solución. Tamén se facilita unha ligazón á orientación detallada sobre como resolver o problema.
- No panel esquerdo, selecciona Solucións. Se o elemento non está no panel lateral, selecciona …Máis e despois selecciona o elemento que queres.
- Xunto á solución non xestionada onde quere descargar o informe do verificador de solucións, seleccione ..., apunte 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 | Descrició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, Mantemento, Uso, Soporte, Deseño, Seguridade, Accesibilidade ou Preparación para a actualización. | Todo |
| Severidade | Representa o impacto potencial do problema identificado. Os tipos de impacto dispoñibles son Crítico, Alto, Medio, Baixo e Informativo. | Todo |
| 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úmero 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. | Todo |
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. Isto é compatible actualmente con recursos web (JavaScript e TypeScript). Para obter máis detalles, vaia ao paquete NPM @microsoft/eslint-plugin-power-apps.
Executar o verificador de solucións usando PowerShell
Hai dispoñible un módulo de PowerShell que podes 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.Checker.PowerShell Información xeral
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 bloquéanse ou advírtense cando se configuran para a aplicación do verificador de solucións con entornos xestionados. Máis información: Usar o verificador de solucións en entornos xestionados
| Compoñente da solución | Nome da regra | Descrición da regra | Severidade | Categoría |
|---|---|---|---|---|
| Complemento ou actividade de fluxo de traballo | meta-eliminar-dup-reg | Evite duplicar rexistros de complementos de Dataverse. | Crítico | Desempeño |
| Complemento ou actividade de fluxo de traballo | meta-evitar-reg-sen-atributo | Incluír atributos de filtrado con rexistros de complementos de Dataverse. | Mediana | Desempeño |
| Complemento ou actividade de fluxo de traballo | meta-evitar-recuperar-reg | 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-eliminar-inactivo | Eliminar configuracións inactivas en Dataverse. | Baixo | Mantemento |
| Complemento ou actividade de fluxo de traballo | evento meta-evitar-crm4 | Non utilice a fase de rexistro de complementos Microsoft Dynamics CRM 4.0. | Mediana | Dispoñibilidade de actualización |
| Complemento ou actividade de fluxo de traballo | meta-evitar-recuperar-anotación-múltiple | Evite rexistrar un complemento en RetrieveMultiple de anotación. | Alto | Uso |
| Aplicación controlada por modelos | operacións da entidade de vendas de metalicenzas | A solución contén entidades con mensaxes e operacións do SDK restrinxidas que requiren unha licenza válida de Dynamics 365. | Baixo | Obtención de licenzas |
| Aplicación controlada por modelos | meta-licenza-servizo-de-campo-controis-personalizados | A solución contén controis personalizados que requiren unha licenza válida. Dynamics 365 Field Service | Baixo | Obtención de licenzas |
| Aplicación controlada por modelos | meta-licenza-operacións-de-entidades-de-servizo-de-campo | A solución contén entidades con mensaxes e operacións do SDK restrinxidas que requiren unha licenza válida. Dynamics 365 Field Service | Baixo | Obtención de licenzas |
| Recursos web | uso asíncrono | Interactúe con recursos HTTP e HTTPS asincronicamente. | Crítico | Desempeño |
| Recursos web | evitar modais | Evite o uso de diálogos modais. | Alto | Compatibilidade |
| Recursos web | evitar-domin-formulario | Alto | Compatibilidade | |
| Recursos web | evitar-evento-de-formulario-dominante | Alto | Compatibilidade | |
| Recursos web | evitar-crm2011-servizo-odata | Non se dirixa ao extremo de Microsoft Dynamics CRM 2011 OData 2.0. | Crítico | Dispoñibilidade de actualización |
| Recursos web | evitar-crm2011-servizo-soap | Non se dirixa aos servizos de Microsoft Dynamics CRM 2011 SOAP. | Crítico | Dispoñibilidade de actualización |
| Recursos web | evitar-cargar-tema | Non empregues a loadTheme API de Fluent v8. |
Baixo | Compatibilidade |
| Recursos web | evitar-api-específica-do-navegador | Non utilice complementos do explorador ou API herdados de Internet Explorer. | Crítico | Dispoñibilidade de actualización |
| Recursos web | API de evitar-unpublicar | Alto | Compatibilidade | |
| Recursos web | evitar-xanela-superior | Alto | Compatibilidade | |
| Recursos web | evitar-2011-api | Non utilice o modelo de obxectos de Microsoft Dynamics CRM 2011 obsoleto. No seu lugar, siga a documentación da Dataverse API web . | Alto | Dispoñibilidade de actualización |
| Recursos web | uso-uri-relativo | Non utilice os URL de extremo absoluto de Dataverse. | Mediana | Mantemento |
| Recursos web | usar-recurso-web-almacenado-en-caché | Mediana | Desempeño | |
| Recursos web | usar-contexto-cliente | Utilice contextos de cliente. | Mediana | Dispoñibilidade de actualización |
| Recursos web | usar-api-de-navegación | Use os parámetros das API de navegación. | Mediana | Dispoñibilidade de actualización |
| Recursos web | uso sen conexión | Mediana | Dispoñibilidade de actualización | |
| Recursos web | non-fagas-suposicións-dos-pais | Alto | Deseño | |
| Recursos web | usar-configuración-org | Utilice a configuración de organización. | Mediana | Dispoñibilidade de actualización |
| Recursos web | usar-contexto-global | Mediana | Dispoñibilidade de actualización | |
| Recursos web | usar-api-de-grella | Utilice as API de grade. | Mediana | Dispoñibilidade de actualización |
| Recursos web | usar-diálogos-de-utilidade | Mediana | Uso | |
| Recursos web | evitar-é-Tipo-de-Actividade | 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 | Dispoñibilidade de actualización |
| Recursos web | meta-evitar-luz-prateada | O uso do recurso web de Silverlight quedou obsoleto. | Mediana | Dispoñibilidade de actualización |
| Recursos web | eliminar-script-depuración | Evita incluír scripts de depuración en entornos que non sexan de desenvolvemento. | Mediana | Uso |
| Recursos web | usar-modo-estricto | Use o modo estrito cando sexa posible. | Mediana | Uso |
| Recursos web | usar operadores de igualdade estrita | Use operadores de igualdade estritos. | Mediana | Uso |
| Recursos web | evitar-avaliar | Non empregues a función eval nin os seus equivalentes funcionais. |
Crítico | Seguranza |
| Recursos web | evitar con | Non empregues 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 | eliminar-consola | Evite usar métodos na consola. | Mediana | Uso |
| Recursos web | cinta de actualización da UI para evitar | Evite usar refreshRibbon na forma onload e EnableRule. | Crítico | Desempeño |
| Recursos web | usar-obterprivilexiosderoldeseguridadeinfo | Evite userSettings.securityRolePrivileges. Use userSettings.getSecurityRolePrivilegesInfo no seu lugar. | Alto | Desempeño |
| Recursos web | usar-api-do-panel-lateral-da-aplicación | Usa Xrm.App.sidePanes.createPane en lugar de Xrm.Panels.loadPanel. | Mediana | Dispoñibilidade de actualización |
| Recursos web | web-sdl-sen-cookies | As cookies HTTP son un mecanismo de almacenamento antigo no lado do cliente con riscos e limitacións inherentes. Usa almacenamento web, IndexedDB ou outros métodos modernos no seu lugar. | Mediana | Seguranza |
| Recursos web | web-sdl-sen-documento-dominio | As escrituras na propiedade document.domain deben revisarse para evitar omitir as comprobacións da mesma orixe. O uso de dominios de nivel superior como azurewebsites.net está estritamente prohibido. | Mediana | Seguranza |
| Recursos web | web-sdl-sen-escritura-en-documentos | As chamadas a document.write ou document.writeln manipulan DOM directamente sen ningunha hixiene e deben evitarse. Usa document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
| Recursos web | método web-sdl-sen-html | As chamadas directas ao método html() a miúdo (por exemplo, no framework jQuery) manipulan o DOM sen ningunha hixiene e deben evitarse. Usa document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
| Recursos web | web-sdl-sen-html interno | As asignacións ás propiedades innerHTML ou outerHTML manipulan DOM directamente sen ningunha hixiene e deben evitarse. Usa document.createElement() ou métodos similares no seu lugar. | Mediana | Seguranza |
| Recursos web | web-sdl-sen-url-inseguro | 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-unsegure | 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-sen-postmessage-star-orixe | 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-inseguro | As chamadas a WinJS.Utilities.setInnerHTMLUnsafe() e métodos similares non realizan ningunha validación de entrada e deben evitarse. Usa WinJS.Utilities.setInnerHTML() no seu lugar. | Mediana | Seguranza |
| Aplicación de lenzo | problemas-de-fórmula-da-aplicación-altos | Ir a Power Apps referencia de fórmula para obter máis detalles. | Crítico | Deseño |
| Aplicación de lenzo | problema-de-fórmulas-da-aplicación-medio | Consulte as referencias de fórmulas de Power Apps para ver máis detalles. | Mediana | Deseño |
| Aplicación de lenzo | problemas-baixos-da-fórmula-da-aplicación | Consulte as referencias de fórmulas de Power Apps para ver máis detalles. | Baixo | Deseño |
| Aplicación de lenzo | entrada-de-texto-de-retardo-de-uso-da-aplicación | Use a carga atrasada nalgúns escenarios para mellorar o rendemento. | Mediana | Desempeño |
| Aplicación de lenzo | controis-de-redución-de-pantalla-da-aplicación | Limite o número de controis da aplicación para mellorar o rendemento. | Mediana | Desempeño |
| Aplicación de lenzo | etiqueta-accesible-de-inclusión-da-aplicación | Use etiquetas explícitas para mellorar a accesibilidade á aplicación. | Mediana | Accesibilidade |
| Aplicación de lenzo | aplicación-incluír-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 |
| Fluxo de escritorio | desktopflow-evitar-contrasinal-inseguro | Os contrasinais xestiónanse de forma pouco segura no fluxo. | Alto | Seguranza |
| Fluxo de escritorio | desktopflow-evitar-subfluxo-recursión | Detectáronse chamadas recorrentes entre subfluxos, o que pode causar un bucle infinito. | Mediana | Deseño |
| Fluxo de escritorio | desktopflow-evitar-bucle-infinito | Detectouse un bucle infinito no fluxo que pode causar que se execute de xeito indefinido. | Mediana | Deseño |
| Fluxo de escritorio | desktopflow-evitar-incompleto-se-rama | Detectouse unha acción If incompleta, que non ten contido ou que só contén accións na ramificación Else. | Baixo | Deseño |
| Fluxo de escritorio | desktopflow-evitar-excesivos-IF aniñados | As cláusulas If aniñadas superan os cinco niveis. | Baixo | Mantemento |
| Fluxo de escritorio | desktopflow-evitar-bloqueo-baleiro-en-erro | A acción de "Erro no bloque" está baleira e non xestiona erros. | Baixo | Deseño |
| Fluxo de escritorio | número-de-argumentos-límite-de-desktopflow | O número total de variables de entrada/saída superan o límite de 25. | Baixo | Mantemento |
| Fluxo de escritorio | valor-predeterminado-do-argumento-de-entrada-de-desktopflow | As variables de entrada/saída non usan valores predeterminados. | Baixo | Mantemento |
| Fluxo de escritorio | lonxitude-do-nome-da-variable-límite-de-desktopflow | O nome da variable supera o límite de 25 caracteres. | Baixo | Mantemento |
| Fluxo de escritorio | desktopflow-evitar-accións-de-espera-excesivas | Detectouse un uso indebido das accións de espera, con máis de 10 accións de espera que poden causar atoamentos. | Baixo | Desempeño |
| Fluxo de escritorio | desktopflow-evitar-duración-de-espera-inmensa | Detectouse un tempo de espera inmenso que supera o límite de 600 segundos para accións de espera codificadas. | Baixo | Desempeño |
Consulte tamén
Boas prácticas e orientación para o Dataverse
Prácticas recomendadas e orientación para aplicacións baseadas en modelos
Problemas e resolucións comúns para o Comprobador de solucións