Tip #1459: How to bypass Dataverse plug-ins and flows in Power Automate actions

The image presents an adventurous scene where an explorer, evoking a 1930s adventurer with a hat labeled "REAL DEVELOPER," stands before a tunnel entrance, suggesting the start of a journey or discovery. To the right, a signpost with the word "LOWCODE" points in the direction of the tunnel, indicating that this path is a shortcut or a more efficient route. The surrounding environment is lush and verdant, with mountains in the distance and a clear sky above. An airplane flies overhead, contributing to the sense of adventure and exploration. The overall composition of the image combines themes of old-school exploration with modern software development concepts.

When you need to insert, update, or delete a large number of records in Dataverse, synchronous plug-ins can get in the way. Asynchronous plug-ins and Power Automate flows are triggered independently (out of process) but can be overwhelming for the system and can be throttled down. Did you know you can bypass either? Did you […]

Tip #1236: Review RetrieveMultiple plugins before migrating to Unified Interface

Man looking into microscope

It’s not uncommon to register a plugin on RetrieveMultiple message and fiddle with the output, e.g. drop some values, add some calculations, etc. Chances are that you are changing the QueryExpression, and the plugin is working fine in the classic UI but you will have challenges migrating to Unified Interface. The reason is that in […]

Tip #1145: Tracing in Azure Functions MkIII

Tracing

This never ends. Shortly after I finished writing about tracing in Azure Functions, I found Daryl “Always Raising” LaBar explaining how to use ExtendedOrganizationService wrapper to easily capture everything in your plugin: Wouldn’t it be nice for debugging if your plugins automatically traced every IOrganzationService Request, along with the parameters and the time that it […]

Tip #1135: For plugins, use SDK with the same or below the server version

Mismatch

Problem Another week, another challenge from Guido “Future Olive Farmer” Preite: I created a plugin for one Online instance (version 8.2.2.1862),  I created a class library project with .NET 4.5.2 and with nuget I installed the Microsoft.CrmSdk.CoreAssemblies version 9.0.2.3 I registered the plugin and I always get this error: Unhandled Exception: System.ServiceModel.FaultException`1[[Microsoft.Xrm.Sdk.OrganizationServiceFault, Microsoft.Xrm.Sdk, Version=8.0.0.0, Culture=neutral, […]

Tip #1034: Set Yourself Up For Efficient Importing

Prepare for import

Importing into Dynamics 365 can be concerning to even the most hardened of CRM consultants. Often, if we are importing into a production system, we have tight schedules to get in and out before the users log in. If we are still importing data when the users come online, the system can be unacceptably slow […]

Tip #758: When users are unable to save personal views

Private property keep out

tl;dr When no one in your organization including system administrators can create or update personal views, check that you don’t have any plugins registered on all entities to run in a context different from a calling user. Mundane details Symptoms: when personal views are created or updated, all users including system administrators receive the following […]

Tip #676: Keep your pants on and timestamps intact

Illusion of integrity

Let’s say you have a field that requires complex calculations that are impossible to express as a calculated field. For example, the requirement could be to figure out the “real” full name for a contact taking into account the country, ethnicity, contact’s preferences, their royal title, and a phase of the moon. The first reaction […]