Bagikan melalui


Kiat plug-in kode rendah Microsoft Dataverse dan masalah yang diketahui (pratinjau)

[Topik ini adalah dokumentasi prarilis dan dapat berubah.]

Artikel ini menjelaskan tips dan masalah yang diketahui saat bekerja dengan plug-in kode rendah di Microsoft Dataverse.

Penting

  • Plug-in kode rendah instan tidak diprioritaskan dan tidak dikirimkan sebagai fitur. Plug-in kode rendah instan diganti dengan fungsi. Informasi selengkapnya: Fungsi di Microsoft Dataverse (pratinjau)
  • Ini adalah fitur pratinjau.
  • Fitur pratinjau tidak dibuat untuk penggunaan produksi dan mungkin memiliki fungsionalitas yang dibatasi. Fitur-fitur ini tersedia sebelum rilis resmi sehingga pelanggan bisa mendapatkan akses awal dan memberikan umpan balik.

Menangani masalah runtime umum

Jika Anda menghadapi masalah plugin runtime, edit ulang plug-in kode rendah. Kemudian masalah IntelliSense pada ekspresi rumus Anda ditampilkan di editor plug-in kode rendah. Ikuti panduan untuk memperbaiki masalah yang juga ditampilkan, lalu simpan ulang plug-in tersebut.

Berhati-hatilah saat melakukan pemutakhiran setelah operasi

Eksekusi plug-in kode rendah Anda mungkin mengalami kesalahan ini saat menggunakan Patch dalam pasca-operasi: 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.

Penggunaan Patch dalam skenario pasca-operasi harus dilakukan dengan hati-hati untuk menghindari perulangan tak terbatas. Operasi Patch memulai transaksi baru. Misalnya, jika pemicu pembaruan untuk MyTable memanggil Patch(MyTable, ThisRecord, ...), operasi ini dapat mengakibatkan siklus pembaruan rekursif.

Berikut adalah beberapa contoh operasi yang dapat menghindari masalah ini:

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

Menangani batas waktu dua menit

Untuk operasi yang berlanjut selama dua menit atau lebih, Anda dapat menerima kesalahan ini:

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)

Saat bekerja dengan plugin kode rendah Dataverse, penting untuk mengelola batas waktu dua menit secara efektif:

  • Batasi jumlah Patch dan Collect operasi Anda di dalam plug-in Anda, terutama jika Anda memiliki plug-in lain yang sudah terdaftar terhadap tabel tersebut, yang dapat memengaruhi performa plug-in Anda.
  • Pantau performa. Perhatikan performa plug-in Anda dan pertimbangkan untuk menggunakan kemampuan pelacakan dan pengelogan dalam Dataverse untuk melacak waktu dan kegagalan eksekusi. Dengan mengikuti panduan ini, Anda dapat memastikan bahwa plug-in kode rendah Anda berjalan dengan lancar dalam lingkungan Dataverse tanpa gangguan yang disebabkan oleh batas waktu dua menit. Informasi selengkapnya: Pelacakan dan pengelogan

Respons gagal diterima dari APIM

Jika Anda menerima pesan kesalahan ini, yang dapat dikembalikan dari API management (APIM), cukup edit plug-in, lalu simpan kembali. Menyimpan menginisialisasi autentikasi APIM dan plug-in Anda mulai berhasil dijalankan.

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

Lihat juga

Menggunakan plug-in kode rendah di Dataverse