Dataverse: Debug Plugin With FakeXrmEasy (Direct Connection)

Last week I posted about "Dataverse: Create Console For Debugging Plugin Code" and the author of the great FakeXrmEasy - Jordi Montaña Vázquez mentions about XrmRealContext which can simplify last week's solution (for those who don't know FakeXrmEasy, it is a Unit Testing framework for Dataverse! You can check the documentation about what it can do … Continue reading Dataverse: Debug Plugin With FakeXrmEasy (Direct Connection)

Dataverse: Create Console For Debugging Plugin Code

Your colleague reported to you about a bug that is very hard to catch. It is reproducible in Production, but not in your Dev. The only easy way to check it is to debug it. This is a blog post about how to create a console app for debugging purposes (you also can use it … Continue reading Dataverse: Create Console For Debugging Plugin Code

Model-Driven-Apps: Add on post-save event

What is the best way to add a post-save event that will always be called either success/failure? From the documentation, I see we actually can use addOnPostSave but when I try it, it didn't work as expected (later we will go through this scenario). So, as an alternative for now we can make use of … Continue reading Model-Driven-Apps: Add on post-save event

Dataverse: Simple advice on how to design your plug-in

Currently, we have option to store data in Application Insight instead of using Plugin Trace Logs. The most crucial benefit of using this way for me is to get performance information and extract that information using Kusto Query Language. Still, we need to have an excellent strategy to get the max of it with minimum … Continue reading Dataverse: Simple advice on how to design your plug-in

Implement a Generic Concurrency Action in Dataverse

Today, we will implement a generic concurrency solution that I think will fit as many scenarios as we can. With the help of Azure SQL Server + Dataverse Custom API, we can implement a simple architecture solution to handle the concurrency (only allowing the first operation to be successful while dropping the second request or … Continue reading Implement a Generic Concurrency Action in Dataverse

Model-Driven-Apps: How to use setIsValid method

When dealing with client script customization, most of the time we are dealing with data validation where the common steps are like the below snippet: var blog = blog || {}; (function() { this.formOnLoad = function(executionContext){ var formContext = executionContext.getFormContext(); formContext.getAttribute("tmy_transactiondate").addOnChange(validateOnChangeTransactionDate); formContext.getAttribute("tmy_dateonly").addOnChange(validateOnChangeDateOnly); } var validateOnChangeDateOnly = function(executionContext){ var formContext = executionContext.getFormContext(); var date = formContext.getAttribute("tmy_dateonly").getValue(); … Continue reading Model-Driven-Apps: How to use setIsValid method

Simple Approval Design For Model-Driven Apps

Do you know the In-App Notification feature from Model Driven Apps? This feature can create a notification that targeted a specific User. We also can add action to the notification so the User can also interact with multiple actions (now is limited to just an open URL). In short, this feature is very useful for … Continue reading Simple Approval Design For Model-Driven Apps

Dataverse: Create Custom API to get Email Content based on FetchXml and Email Template

This week, I get a task to update Email Content that is being sent from Power Automate. The existing logic was retrieving data from Dataverse > then populating the data manually (if you need to get lookup data, then you need to have Parse JSON action) > then setting the content with the correct variable … Continue reading Dataverse: Create Custom API to get Email Content based on FetchXml and Email Template

Dataverse: How to use RetrieveEntityChangesRequest to synchronize data with externals system

In Dataverse, we have lots of ways to notify the external system about the changes that happened in Dataverse individually (per row data). We have Azure Aware Plug-in, WebHooks, and we also can write a custom plugin that will call HTTP operations. But in the world of Software Architecture, there is always a pro and … Continue reading Dataverse: How to use RetrieveEntityChangesRequest to synchronize data with externals system

Dataverse: Ways to Generating NuGet Package to be used in Dependant Assembly plug-ins

With all the crazy changes happening in Power Platform technologies, especially Dataverse/Model-Driven-Apps. We must admit, that the plugin development has not really changed. So I believe most organizations still use plugin projects that created so long time ago and when the Dependant Assembly plug-ins (preview) come to GA. Then they will start to migrate the … Continue reading Dataverse: Ways to Generating NuGet Package to be used in Dependant Assembly plug-ins