Turns out business process flow entities have super powers

  Did you know that, when setting up a workflow for a business process flow entity (Opportunity Sales Process, for example), we can configure that workflow to trigger on change of the related entities?   In the example above, we can trigger that workflow on change of the related opportunity entity fields etc. That’s an interesting feature which… Read More »

Setting up the gateway

Sometimes, a seemingly simple task leads to a whole lot of activities.  I did not mean to install the gateway today.. But I wanted to try machine learning studio, and, then, I found that I can use on-premise gateway to import data for the experiments. So, having considered the alternatives, I figured it might make… Read More »

V9: Checking string fields for null

It seems there is an unexpected change in how V9 (specifically, 9.0.0.3172) is treating string fields on the SDK side. Normally, if you clear a field, you can use this code in the plugin to see if the field is being cleared:             if (entity.Contains(“ita_integer”) && entity[“ita_integer”] == null)             {                 throw new InvalidPluginExecutionException(“Integer is null”);            … Read More »

Developing the plugins – divide and conquer

  One of the main problems with plugin development is that we have a very limited set of debugging techniques. We can use the Tracing Service, but it’s not, really, debugging.. It’s tracing. We can keep throwing errors from the plugin, but that’s just another form of tracing. We can use a plugin profiler, and… Read More »

Plugins recursion – how can you handle it?

  What if you register a plugin step on update of some attribute, and, then, update the same attribute in the plugin again? Dynamics can’t decide, for you, when is the right time to stop this endless loop, but it will detect the recursion, and, after a few repetitions, will stop it: It will do… Read More »

Paging in FetchXml

Was working on the code that needed paging with FetchXml.. There is a good example on MSDN: https://msdn.microsoft.com/en-us/library/gg328046.aspx But, in case you don’t want to mess with XmlDocument (not that it’s really that messy), you can easily do the same using simple string Replace – there is an example below. The only tricky part is… Read More »

Dates in Dynamics: TimeZone Independent vs User Local

Did you ever have to look into the DateTime fields behaviour in Dynamics? DateTime fields can be “User Local”, “Date Only”, and “Time Zone independent”: https://technet.microsoft.com/en-us/library/dn946904.aspx If what you see at that link does not look 100% clear (and, to me, it did not..  until a few days ago), let me try to explain it… Read More »