Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
[Este tópico é documentação de pré-lançamento e está sujeito a alterações.]
Este artigo descreve dicas e problemas conhecidos ao trabalhar com plug-ins low-code no Microsoft Dataverse.
Importante
- Os plug-ins instantâneos de low-code perdem prioridade e não estão a ser entregues como uma caraterística. Os plug-ins instantâneos de low-code são substituídos por funções. Mais informações: Funções no Microsoft Dataverse (visualização)
- Este é um recurso de visualização.
- As funcionalidades de pré-visualização não se destinam à produção e poderão ter caraterísticas restritas. Esses recursos estão disponíveis antes de um lançamento oficial para que os clientes possam obter acesso antecipado e fornecer feedback.
Lidar com problemas gerais de tempo de execução
Se enfrentar problemas de plug-in de runtime, reedite o plug-in de low-code. Em seguida, os problemas do intellisense na sua expressão de fórmula são apresentados no editor de plug-ins de low-code. Siga as diretrizes para corrigir o problema que também é exibido e salve novamente o plug-in.
Tenha cuidado ao usar a aplicação de patches pós-operação
A execução do plug-in de low-code poderá encontrar este erro quando utilizar Patch numa pós-operação: Execution failed for PowerPlexPlugin: System.ServiceModel.FaultException 1[Microsoft.Xrm.Sdk.OrganizationServiceFault] This low-code plugin's execution was cancelled because the plugin logic caused an infinite loop. Correct the plugin logic and try again.
O uso Patch em um cenário pós-operação deve ser feito com cautela para evitar loops infinitos. Uma Patch operação inicia uma nova transação. Por exemplo, se um gatilho de atualização para MyTable invoca Patch(MyTable, ThisRecord, ...), essa operação pode resultar em um ciclo de atualização recursivo.
Aqui estão alguns exemplos de operações que podem evitar esse problema:
Patch(CurrentTable, SomeOtherRecord, ... ) // For example, updating a manager's contact from a contact record.Patch(OtherTable, SomeOtherRecord, ... ) // Operations on a completely different table.
Gerir o tempo limite de dois minutos
Para operações que continuam por dois minutos ou mais, você pode receber este erro:
Execution failed for PowerPlexPlugin: System.ServiceModel.FaultException1[Microsoft.Xrm.Sdk.OrganizationServiceFault]: Operation not allowed as plugin execution exceeded maximum allowed time (Fault Detail is equal to Exception details: limit your callbacks .. Create, Update)
Ao trabalhar com plug-ins low-code do Dataverse, é importante gerenciar o tempo limite de dois minutos de forma eficaz:
- Limite o número de operações
PatcheCollectdentro dos plug-ins, especialmente se tiver outros plug-ins já registados nessa tabela, o que pode afetar o desempenho dos plug-ins. - Monitore o desempenho. Fique de olho no desempenho de seus plug-ins e considere o uso de recursos de rastreamento e registro no Dataverse para rastrear tempos de execução e falhas. Seguindo essas diretrizes, você pode garantir que seus plug-ins low-code funcionem sem problemas no ambiente Dataverse sem interrupção causada pelo tempo limite de dois minutos. Mais informações: Rastreio e registo
Resposta com falha recebida do APIM
Se você receber essa mensagem de erro, que pode ser retornada do gerenciamento de API (APIM), basta editar o plug-in e, em seguida, salvar. Salvar inicializa a autenticação APIM e seu plug-in começa a ser executado com êxito.
Execution failed for PowerPlexPlugin: Failed response received from APIM; StatusCode: NotFound; ResponseContent: { "statusCode": 404, "message": "Resource not found" } Method: POST; RequestUri: https://canada-001.azure-apim.net/invoke; StatusCode: NotFound; ResponseContent: { "statusCode": 404, "message": "Resource not found" }; HeadersString: Headers - 'Access-Control-Allow-Methods': 'System.String[]'; 'Access-Control-Allow-Origin': 'System.String[]'; 'Access-Control-Max-Age': 'System.String[]'; 'Access-Control-Expose-Headers': 'System.String[]'; 'Date': 'System.String[]'; Access to APIM expires..edit and save the plugin