Database Errors on Restore into v9

If you’re getting ready to perform an on-premise update by importing new organizations into your existing tenant you might start to get some cryptic database errors on constraints.

The constraints themselves vary, mine was in reference to cndx_PrimaryKey_DiscountType, others I’ve seen were in relation to opportunities.

Whatever the error, you will need to install the 0.3 update to address and fix the issue so you can import the tenant.

When you install the server, this update is not applied by “Getting updates”.

The link to the patch is located here – – once done, your upgrade and import will succeed.

Read More

Keys to Architecture Diagramming

I’m not a big fan on spending an inordinate amount of time on diagramming solutions or concepts down to the nth detail primarily because that level of detail will always, always, always change and you will be left with outdated diagrams that when someone goes to look at what they are will be confused.

I am a big fan of drawing out ideas on the whiteboard though (big fan) and do realize that these diagrams have their place in getting people on board to adopt a solution.

Hence, keys to putting together an Architecture Diagram that people will get behind.

  1. Make it Simple – if your diagram is overly complex with icons all over the place, simplify it, break it into multiple diagrams.  If you can’t understand it and describe what is going

    Read More

Understanding SQL Grouping and Date Formats

No matter how many times you do it, you always find yourself having to go back and look up silly information on how to do things in something you haven’t done in awhile.

Case in point, I had to do some SQL magic on some data and had completely forgotten how to do proper groupings and summation of data by weeks and months – so here it is for all your future references.

Retrieving Results for a Month

This is easier than doing things by week and is easily done by using a derived table to get an initial result set and then using the outer query to present everything nicely.

Read More

Eliminate Lazy Error Handling

Here is an error I received the other day…

“Authentication Failure”

Here is another…

“Format of the initialization string does not conform to specification starting at index 0, without any typo in connectionString”

And finally my favourite…

“The entity cannot be updated because it is read-only.”

They are all from different applications and implementations and have been my life for the past two days as I tried to figure them out and wasted an insane amount of time trying to figure out what they related to and what I had to do to resolve them.

Here were the resolutions (in order)…

“Multi-Factor authentication is not supported here.”

“You need to enter the string in a special way, but we won’t tell you how.”

“It’s not that the entity was read-only, it’s that a function was trying to modify it while

Read More

Ribbon Work Bench and the Async Service

I ran into an interesting problem this past week in trying to publish some customizations via the RibbonWorkBench to an on-premise Dynamics tenant.

Here is the message we were receiving.


This led me down a road of checking permissions and seeing what forms I had in the solution I was working, connections being closed, security around using IFD deployments and on and on.

After a day or so, we realized the problem was that the Async Service Account could not write to the CustomizationImport folder on this server.  When we granted the appropriate permissions, the problem was solved.

(One more subtle reason to consider the cloud).

Read More