Microsoft Dataverse 로우코드 플러그 인 팁 및 알려진 문제(프리뷰)
[이 항목은 시험판 설명서이므로 변경될 수 있습니다.]
이 문서에서는 Microsoft Dataverse에서 로우코드 플러그 인으로 작업할 때의 팁과 알려진 문제에 대해 설명합니다.
중요
- 이는 프리뷰 기능입니다.
- 미리 보기 기능은 생산용으로 만들어진 것이 아니므로 기능이 제한될 수 있습니다. 이러한 기능은 공식 릴리스 이전에 제공되므로 고객이 조기에 액세스하고 피드백을 제공할 수 있습니다.
일반적인 런타임 문제 처리
런타임 플러그 인 문제가 발생하면 로우코드 플러그 인을 다시 편집하세요. 그런 다음 수식 표현식의 Intellisense 문제가 로우코드 플러그 인 편집기에 표시됩니다. 지침에 따라 표시되는 문제를 수정한 다음 플러그 인을 다시 저장하십시오.
작업 후 패치를 사용할 때는 주의하세요.
사후 작업에서 Patch
를 사용할 때 로우코드 플러그 인 실행에서 이 오류가 발생할 수 있습니다. 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.
작업 후 시나리오에서 Patch
를 사용하는 것은 무한 루프를 피하기 위해 주의해서 수행해야 합니다. Patch
작업은 새로운 트랜잭션을 시작합니다. 예를 들어 MyTable
에 대한 업데이트 트리거가 Patch(MyTable, ThisRecord, ...)
를 호출하는 경우 이 작업으로 인해 재귀적인 업데이트 주기가 발생할 수 있습니다.
다음은 이 문제를 피할 수 있는 몇 가지 작업 예입니다.
Patch(CurrentTable, SomeOtherRecord, ... ) // For example, updating a manager's contact from a contact record.
Patch(OtherTable, SomeOtherRecord, ... ) // Operations on a completely different table.
2분 시간 제한 처리
2분 이상 계속되는 작업의 경우 다음 오류가 나타날 수 있습니다.
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)
Dataverse 로우코드 플러그 인으로 작업할 때는 2분 시간 제한을 효과적으로 관리하는 것이 중요합니다.
- 플러그 인 내부의
Patch
및Collect
작업 수를 제한하십시오. 특히 해당 테이블에 이미 다른 플러그 인이 등록되어 있으면 플러그 인 성능에 영향을 미칠 수 있습니다. - 성능을 모니터링합니다. 플러그 인의 성능을 주시하고 Dataverse 내에서 추적 및 로깅 기능을 사용하여 실행 시간과 실패를 추적하는 것을 고려하십시오. 이러한 지침을 따르면 2분 시간 제한으로 인한 중단 없이 Dataverse 환경 내에서 로우코드 플러그 인이 원활하게 실행되도록 할 수 있습니다. 추가 정보: 추적 및 로깅
APIM에서 실패한 응답 수신함
API Management(APIM)에서 반환될 수 있는 이 오류 메시지가 표시되면 플러그 인을 편집한 다음 다시 저장하세요. 저장하면 APIM 인증이 초기화되고 플러그 인이 성공적으로 실행되기 시작합니다.
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