Tip #1209: Embedding canvas apps in model-driven forms

Assorted wooden frames

For those of us who were continuosly torn between canvas apps (on yer device, pixel-perfect, task-oriented) and model-driven apps (a.k.a. good ol’ forms, views, you know, all that Dynamics 365/CRM stuff), the wait is finally over. Embedding canvas apps in model-driven forms is now available as Public preview. First, the official part. Makers can now extend […]

Tip #1198: Add email address to recipients in javascript

Six colorful mailboxes in a row

The advantage of having access to friendly brainpower is that the problems are getting resolved much quicker. The disadvantage is that it breeds inattentive coding. Daryl “Always Raising” LaBar almost threw in a towel but recovered and redeemed himself with the snippet how to add an arbitrary email address to the list of the email recipients […]

Tip #1179: Add a dash of dash to your autonumbering

Salt bae

&tl;dr Jonas “The Shuffler” Rapp reports: when modifying autonumbering for built-in entities like case, always include a dash in the pattern to stop Dynamics 365 from self-combusting. Long story One of the awesome users of the Auto Number Manager for XrmToolBox managed to break the system settings for Auto Numbers in Dynamics 365, so he […]

Tip #1167: Impersonation does not grant extra powers

Anonymous mask

I did write before about impersonating users. It’s a very straightforward “manoeuvre” and is commonly used when there is a service account (could be either non-interactive user or, better, application user) that needs to act as a specific user. There is even a built-in role Delegate which contains an absolute minimum set of privileges required […]

Tip #1159: Run your script after business rules

Queue

Dynamics 365/CRM customizations inflicted by a customer are always fun. How can I tell their customizations apart? Easy, by the new_ prefix. Where things get really complicated if the customer later asks you to do something they are not sure how to. Just recently I was asked to stop couple fields from being locked if […]

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 […]