Dela via


Microsoft Dataverse plugin-program med låg kod och kända problem (förhandsversion)

[Det här ämnet är en förhandsversion av dokumentationen och kan ändras.]

Denna artikel beskriver tips och kända problem när man arbetar med plugin-program med låg kod i Microsoft Dataverse.

Viktigt

  • Detta är en förhandsversion.
  • Förhandsversionsfunktioner ska inte användas i produktion och funktionerna kan vara begränsade. Funktionerna är tillgängliga före den officiella publiceringen så att kunderna kan få tillgång tidigare och ge oss feedback.

Hantera allmänna körningsproblem

Om du stöter på problem med plugin-program för körning, redigera plugin-programmet med låg kod igen. Sedan visas intellisense-problemen på ditt formeluttryck i plugin-redigerare med låg kod. Följ riktlinjerna för att åtgärda problemet som också visas och återse sedan plugin-programmet.

Var försiktig när du använder programkorrigering efter användning

Ditt plugin-programmet med låg kod kan stöta på detta fel vid användning Patch i en poståtgärd: 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.

Användning av Patch i ett scenario med poståtgärd måste göras med varning för att oändliga slingor. En Patch åtgärd initierar en ny transaktionen. Till exempel om en uppdatering utlösare för MyTable anropar Patch(MyTable, ThisRecord, ...), denna åtgärd kan resultera i en rekursiv uppdateringscykel.

Här följer några exempel på åtgärder som kan undvika det här problemet:

  • Patch(CurrentTable, SomeOtherRecord, ... ) // For example, updating a manager's contact from a contact record.
  • Patch(OtherTable, SomeOtherRecord, ... ) // Operations on a completely different table.

Hantera tidsgränsen på två minuter

För åtgärder som fortsätter i två minuter eller längre kan följande felmeddelande visas:

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)

När du arbetar med Dataverse plugin-program med låg kod är det viktigt att hantera tidsgränsen på två minuter:

  • Begränsa antalet åtgärder Patch och Collect i dina plugin-program, särskilt om det redan finns andra plugin-program registrerade i tabellen, vilket kan påverka plugin-programmens prestanda.
  • Övervaka prestanda. Håll ett öga på plugin-programs prestanda och fundera på om spårnings- och loggningsfunktionerna i Dataverse kan spåra körningstider och -fel. Genom att följa dessa riktlinjer kan du se till att dina plugin-program med låg kod fungerar som de ska i Dataverse-miljön utan avbrott på grund av en tidsgräns på två minuter. Mer information: Spårning och loggning

Det gick inte att få svar från APIM

Om du får det här felmeddelandet, som kan returneras från API management (APIM), redigerar du bara plugin-programmet och sparar det sedan. Om du sparar initierar APIM-autentiseringen och plugin-programmet körs utan problem.

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

Se även

Använda plugin-program med lågkod i Dataverse