Microsoft Dataverse nízkokódové tipy na doplnky a známe problémy (verzia Preview)

[Táto téma je predbežnou dokumentáciou a môže sa zmeniť.]

Tento článok popisuje tipy a známe problémy pri práci s doplnkami nízkokódové Microsoft Dataverse.

Dôležité

  • Toto je ukážková funkcia.
  • Funkcie ukážky nie sú určené na produkčné účely a môžu mať obmedzenú funkčnosť. Tieto funkcie sú k dispozícii pred oficiálnym vydaním, aby k nim mohli zákazníci získať rýchly prístup a poskytnúť odozvu.

Riešenie všeobecných problémov s runtime

Ak máte problémy s doplnkom runtime, znova upravte doplnok nízkokódové. Potom sa v editore doplnku nízkokódové zobrazia problémy s intellisense vo vašom výraze vzorca. Postupujte podľa pokynov na opravu problému, ktoré sa tiež zobrazia, a potom doplnok znova uložte.

Pri používaní pooperačných opráv buďte opatrní

Spustenie doplnku nízkokódové môže naraziť na túto chybu pri použití Patch v po operácii: 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.

Používanie Patch v pooperačnom scenári sa musí vykonávať opatrne, aby sa predišlo nekonečným slučkám. A Patch operácia spustí novú transakciu. Napríklad, ak spúšťač aktualizácie pre MyTable vyvolá Patch(MyTable, ThisRecord, ...), výsledkom tejto operácie môže byť rekurzívny cyklus aktualizácie.

Tu je niekoľko príkladov operácií, ktoré môžu zabrániť tomuto problému:

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

Zvládnite dvojminútový časový limit

Pri operáciách, ktoré trvajú dve minúty alebo dlhšie, sa môže zobraziť táto chyba:

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)

Pri práci s Dataverse nízkokódové pluginmi je dôležité efektívne spravovať dvojminútový časový limit:

  • Obmedzte počet operácií Patch a Collect v rámci vašich doplnkov, najmä ak už máte v tejto tabuľke zaregistrované iné doplnky, čo môže ovplyvniť výkon vašich doplnkov.
  • Monitorujte výkon. Sledujte výkon svojich doplnkov a zvážte použitie funkcií sledovania a protokolovania v rámci Dataverse na sledovanie časov vykonávania a zlyhaní. Dodržiavaním týchto pokynov zaistíte, že vaše nízkokódové plug-iny bežia hladko v Dataverse prostredí bez prerušenia spôsobeného dvojminútovým časovým limitom. Viac informácií: Sledovanie a protokolovanie

Zlyhalo odpoveď prijaté z APIM

Ak sa zobrazí toto chybové hlásenie, ktoré možno vrátiť zo správy API (APIM), jednoducho upravte doplnok a potom ho znova uložte. Uložením sa inicializuje autentifikácia APIM a váš plug-in sa začne úspešne vykonávať.

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

Pozrite si tiež

Použite doplnky nízkokódové Dataverse