Power Fx (gotta use the cool keyword!) JSON function in Power Apps is pure magic, it’s like a compactor converting anything you throw into it into a neat text representation to send over the wire, engrave on a golden bullion, or stash it as an alphabet soup. It works great apart from the times when […]
Tip #1118: Ways To Link Accounts and Contacts
There is an on-going problem with most modern CRM systems which is the Account – Contact problem. In short, most CRMs assume a Contact belongs to just one Account and an Account has many Contacts. Often this assumption is not valid. Common examples include medical practitioners, who work for a hospital, have their own practice […]
Tip #1047: When in Doubt, Go Global (With Option Sets)
This is a lesson I have learned the hard way so take my bitter experiences and consider it wisdom derived from idiocy. The lesson is simple. When creating an option set, unless you are ABSOLUTELY certain you do not need to, make it a global one. Even if you are absolutely certain, make it global […]
Tip #973: Use Trace not Console
For a long time I’ve been a big fan of console applications. Great way to put something together quickly, to see if the idea works, or simply test a piece of code or yet another library. What’s the way to see the output when you need some? They teach you that in code schools: I […]
Tip #667: Return from the Land of No Return
Wherein we learn to disable the Notes, Activities, Connections, Feedback, Queues, And/Or change the “Ownership” model option on a Custom Entity. Why do I Care? Recently I received a solution file where EVERY custom entity had been created with ALL the default options enabled. Even entitles that serve only as simple “lookup” lists had Notes/Activities/Connections/Feedback […]
Tip #655: Defensive use of undocumented functions
This is a sweet lesson for all the lovers of the undocumented functions. On odd occasion yours truly is guilty of being lazy and choosing a shortcut worthy spießrutenlaufen. From time to time those fits of laziness come back hard. For a long time I’ve been using SaveAsCompleted internal function on a command bar for […]
Tip #646: Illustrated guide to entity creation in Dynamics CRM
Spießrutenlaufen is everywhere. Even fundamental actions like creating a new entity in CRM are subject to irreversible hasty choices that we all come to regret later. Introducing CRM Tipsters Illustrated Guide to Entity Creation in Dynamics CRM. Download a full size image or a hi-res PDF version.
Tip #636: Use all attributes and miss some of the data
Laziness is the engine of the progress. If it was not for Josephine Cochrane trying to avoid the house duties, we’d still be doing dishes by hand. So we all guilty from time to time using all attributes when retrieving information from CRM. The consequences are not only spießrutenlaufen and eternal condemnation, but also dreadful […]
Tip #486: Don’t hard code currency in workflows
If you have a workflow dealing with the entities that include money fields, avoid setting explicit currency. Instead, try to infer the currency from the related records. For mere mortals, it’s just a bad practice, for ISVs, it’s definitely a case of spießrutenlaufen. Why? Because if you activate your workflow and add it to a […]
Tip #462: Waiting for developer toolkit
CRM developers have been patiently waiting for Godo CRM Developer Toolkit that works with something better than Visual Studio 2012. Now being two version behind, it does not look like it’s coming any time soon. The good news is that, acknowledging both the demand and the delay, the team has been releasing the most important […]