Search for:
  • Home/
  • D365 CE/
  • Dynamics 365 CE pro-code: Cách bỏ qua việc thực thi Plugins trong các trường hợp cần thiết

Dynamics 365 CE pro-code: Cách bỏ qua việc thực thi Plugins trong các trường hợp cần thiết

Là 1 nhà phát triển trên nền tảng D365 CE hay model-driven apps, trong một số trường hợp (ví dụ: data migration, import data,..) bạn mong muốn plugins sẽ không thực thi trong luồng xử lý chính. Bài viết này chia sẻ một số thông tin về cách thực hiện yêu cầu này trong 2 trường hợp:

  • Sử dụng mô hình đối tượng CRM SDK
  • Sử dụng WebAPI endpoint

Trường hợp sử dụng
Bạn viết và đăng ký plugin để tự động tạo giá trị cho column auto number cho các tables trong dataverse. Bài viết này không đề cập chi tiết đến nội dung của plugin, bạn có thể tham khảo thêm chi tiết tại đây.
Trong 1 số trường hợp, ví dụ bạn cần tạo mới hay import danh sách các accounts đã tồn tại trong legacy system mà không muốn tự động sinh giá trị mới, hay sẽ gán 1 giá trị cụ thể cho auto number. Trong các trường hợp như vậy, bạn không mong muốn plugin tự động sinh giá trị auto number đã đăng ký sẽ thực thi khi account được tạo mới.

Sử dụng CRM SDK
Đoạn code tạo mới 1 account trong dataverse sử dụng CRM SDK với trường hợp không muốn các plugins đã đăng ký khi tạo mới 1 account được thực thi.

Như vậy, để bỏ qua việc thực thi của các plugins đã đăng ký, trong đối tượng CreatRequest bạn thêm thuộc tính
createEnt.Parameters[“BypassCustomPluginExecution”] = true;

Sử dụng WebAPI endpoint
Để thực thi tương tự thông qua webapi, bạn truyền thuộc tính MSCRM.BypassCustomPluginException = true vào một trong các giá trị của headers của request khi tạo mới 1 record trong dataverse. Ví dụ bên dưới sử dụng công cụ postman để tạo mới 1 lead và bỏ qua việc thực thi các plugins đã đăng ký của cùng sự kiện.

Lời kết
Bài viết với mục đích giới thiệu tính năng có thể hỗ trợ việc bỏ qua việc thực thi của các plugins đã đăng ký trong cùng 1 sự kiện của tables trong dataverse mà trong một số trường hợp nhà phát triển trên D365 CE hay model-driven apps sẽ cần đến. Bài viết không báo quát hết tất cả các sự kiện (plugin sdk message steps) mà có thể hỗ trợ tính năng này. Trong quá trình kiểm thử, user được gán quyền system administrator trong môi trường để thực thi các đoạn code.

Tham khảo
Bạn có thể tham khảo thêm về nội dung liên quan từ đây.

Spread the love

Leave A Comment

All fields marked with an asterisk (*) are required