Tip #525: Solution Export Naming Party Trick

The solution version number is often overlooked as an easy way of keeping backups of your solution separate as you configure CRM.

You can number them according to a strict 4-part version numbering (e.g.,, etc.) but that’s relatively boring and tough to keep consistent.

The most straight forward and easy to maintain method of versioning for solutions is to utilize a pseudo timestamp as the version number.

Anytime a solution is going to be exported, the version number should be updated by the administrator, and saved before it’s actually exported. For simplicity, use the format of YYYY-MM-DD-##, where ## is the intra-day revision number that is just incremented with each version created on a particular day, e.g. the first update/export of a solution on October 9, 2015 would have a version number of 2015.10.09.01 as shown in the following image. (Before exporting again on the same day, just rev the last 2 digits to 02)


The exported file will be named with the solution “Name” plus the version number (date + rev)  giving it a unique name and making it easy to keep track of current and older versions.

Following this convention means your deployment team is never confused about which iteration to install and you can clearly see in production which solutions is live.

2 thoughts on “Tip #525: Solution Export Naming Party Trick

  1. Wasn’t there a problem with changing the first two blocks of the version-number (major/minor)?

    I think I had problems with installing plugins, if that part of the version-numbers had been changed…

  2. The upcoming CRM 2016 solution management enhancements, namely the support for patching, introduce some dependencies to the solution version number that should at least be reviewed before adopting a naming policy that would increment the first numbers (major/minor) on a very frequent basis (meaning turn of the month): https://msdn.microsoft.com/en-us/library/mt593040(v=crm.8).aspx

    “A patch version must have the same major and minor number, but a higher build and release number, than the parent solution version number. The display name can be different.”

Leave a Reply

Your email address will not be published. Required fields are marked *