Yes, it is that time of year again where we begin to look at how the upgrade process for Dynamics GP Fall 2021 works and how to troubleshoot issues……where does the time go?
As we know, each time Microsoft Dynamics GP Utilities is launched, it runs a version check of both the Microsoft SQL Server instance that we’re connecting to, and then also comparing the versions of the dictionary files for each product/module listed in the DynUtils.set file and the versions showing in the DB_Upgrade system table.
This is how GP Utilities determines that you have applied a service pack/hotfix/compliance update or new version of Microsoft Dynamics GP, and that the databases need to be upgraded.
To avoid version errors in GP Utilities on either Microsoft SQL Server versions or going from one version/build of Microsoft Dynamics GP to another via an upgrade, it’s important that before you start the upgrade, you’ve looked at the information in both the Microsoft Dynamics GP (18.#) System Requirements page, along with the Upgrading to Microsoft Dynamics GP hot topic.
A good ‘rule of thumb’ to remember for Microsoft Dynamics GP upgrades, is that in most cases, if you’re on a specific release for one version of the GP application, you have to be upgrading to at least the equal release of the new version of the GP application. For example, If I’m currently on the 2020 Year-End release of Microsoft Dynamics GP 2016, I should be upgrading to at least the equal 2021 Year-End release of Microsoft Dynamics GP 2018/18.#. Again, using the hot topics and the Upgrade Paths information is key.
***NOTE: The only supported upgrade path to the current release is from the release 1 year back from current in accordance with the Modern lifecycle
Microsoft Dynamics GP Utilities will use the Dynutils.set file to see which products you have installed and where the various DU*.DIC files are located. It then compares the versions listed in the DB_Upgrade table of the DYNAMICS/system database with the dictionary versions to make sure that they match. From there, it also checks several different tables for each module in the company databases to make sure the versions match.
If the versions of the dictionaries do not match the versions found in the databases, with the dictionary files being newer, Utilities knows that an upgrade needs to occur and will present that option. If the versions of the dictionaries are at a older version than that found in the databases, it will throw an error message and write to a log file, because it isn’t able to ‘downgrade’ the database versions.
GP Utilities also verifies that you are on a supported upgrade path and then kicks off the upgrade. If Utilities finds any problems during this process, it will throw the following version check error:
“There was a problem ascertaining product version information. Microsoft Dynamics GP Utilities will now exit. Please check the duinstall.log file for more information.”
You will find the duinstall.log file in the \Data folder of your GP code folder. This is typically found at C:\Program Files(x86)\Microsoft Dynamics\GP\Data (C:\Program Files on 32-bit operating systems). You can find various errors in the log, which will give you a good indication of why you are running into a problem. Some examples are:
Error: Product 0 does not support upgrading from version 14.0.####
Error: You are attempting to configure an older version of product 0. Database 18.0.#### Code 14.0.####
Error: “Product 0 does not support upgrading from version 14.00.1230”
If you have a question about the version/build of Microsoft Dynamics GP Utilities you're launching and/or the versions of the GP databases themselves, you can reference these two points:
>>First, after the initial login window when launching Microsoft Dynamics GP Utilities, the very next window will have the version information in the bottom left-hand corner of the window, like this example:
>>Second, in SQL Server Management Studio, connected to the SQL instance that you're running GP Utilities against, you can use this script to find the version of PRODID 0 (zero) which is the core 'Microsoft Dynamics GP' version:
***NOTE: You can use this same script to check the version information for any product ID mentioned in a duinstall.log version error by changing the value of the PRODID in the script.
The duinstall.log will repeat errors like those above, for each product ID in each company it is checking against. You could also have several similar errors at the end of the duinstall.log file. The following are some of the most common reasons you will run into these errors and the steps you can take to resolve them:
Old Company Data
If you have data from an old company in the DYNAMICS database, you may run into errors when attempting to upgrade. This problem will usually manifest itself as a list of errors in the duinstall.log file showing old versions of modules you use. You can download the Clear Companies.sql script from the following page to remove the old company data. If you have not already previously ran this script, it should be your first step in troubleshooting the errors. (Note – This script will remove data for any companies that exist in the DYNAMICS database, but do not have a corresponding company database in SQL). **Make a backup of the DYNAMICS database prior to running the script.**
ClearCompanies Script (Updated)
Unsupported Upgrade Path
One of the most common problems is that you are simply not upgrading along a supported upgrade path. We will have every supported upgrade path for Microsoft Dynamics GP 18.3 listed at the following site: Upgrading to Microsoft Dynamics GP | Microsoft Docs
You should already be very familiar with this site if you are performing an upgrade, since we list all of the known upgrade problems that you may run into. Make sure that you are taking note of the version listed in both the ‘Updating From’ column as well as the ‘Patch Requirement…’ column.
The far right “Notes” column in the Upgrade Paths table at the above Upgrade Hot Topic site also contains links to each GP versions respective KB download page, so that you can upgrade your existing build as needed.
Specific Product\Module Version Issue
Error: Product 309 does not support upgrading from version ##.#.####
In a hypothetical upgrade attempt, consider that you are getting an error in the duinstall.log file indicating that Product 309 does not support upgrading from its current version. It can be any product or even multiple product ID’s, but we’re using 309 for this example. You look in the Dynamics.set file and find that Product 309 is Fixed Assets. The main question here is whether or not this module is actually used in this GP environment. If it is not a module that is being used currently or going forward, then you should uninstall it using ‘Control Panel’ > ‘Programs and Features’ (add\remove programs) so that it is removed from the .set files. Then you can launch Utilities again and it shouldn’t attempt to upgrade that product.
If it is a module that you are using or planning to use but there may be a prior install causing the version error during the upgrade and you would like to have a ‘clean’ install of the product in the new version of Microsoft Dynamics GP, then you will need to open a support case or follow the steps/scripts mentioned in this blog to re-initialize the product, so instead of being upgraded, it’ll be installed anew at the GP version you’re going to:
If you are still running into problems after checking on the above common problems, you can also open a support case.
As always, test upgrades are highly recommended, because not only will you be aware of any version errors you may encounter when attempting to upgrade Microsoft Dynamics GP, but you’ll also have an idea of any errors or issues you may run into during the upgrade, along with an approximate time of how long the total upgrade takes, in order to plan on downtime for the customer.
Please continue to monitor our Microsoft Dynamics GP 2021 Upgrade Blog Series Schedule to learn more about this Microsoft Dynamics GP Upgrade and good luck!!
*This post is locked for comments