次の方法で共有


Microsoft Dataverse ローコード プラグインのヒントと既知の問題 (プレビュー)

[このトピックはプレリリース ドキュメントであり、変更されることがあります。]

Microsoft Dataverse でのローコード プラグインを使用する際のヒントと既知の問題について説明します。

重要

  • これはプレビュー機能です。
  • プレビュー機能は運用環境での使用を想定しておらず、機能が制限されている可能性があります。 これらの機能を公式リリースの前に使用できるようにすることで、顧客が一足先にアクセスし、そこからフィードバックを得ることができます。

一般的なランタイムの問題を処理する

ランタイム プラグインの問題が発生した場合は、ローコード プラグインを再編集します。 次に、数式表現に関するインテリセンスの問題がローコード プラグイン エディターに表示されます。 表示されるガイドラインに従って問題を修正し、プラグインを再度保存します。

術後パッチを使用する場合は注意してください

ローコード プラグインの実行では、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 分間のタイムアウトを効果的に管理することが重要です。

  • プラグイン内の PatchCollect 操作の数を制限します。特に、そのテーブルに対して他のプラグインが既に登録されている場合は、プラグインのパフォーマンスに影響する可能性があります。
  • パフォーマンスの監視。 プラグインのパフォーマンスを監視し、実行時間と不具合の発生を追跡するために、Dataverse 内のトレース機能とログ機能を使用することを検討してください。 これらのガイドラインに従うことで、2 分間のタイムアウトによる中断なしに、ローコード プラグインを Dataverse 環境内でスムーズに実行することができます。 詳細: トレースとログ

APIM からの応答が失敗しました

API 管理 (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

参照

Dataverse でローコード プラグインを使用