• Microsoft Dynamics Services

How can I use a DU000010 out file in an upgrade process?

What is DU000010?

For a layman, DU000010 seems like alpha-numeric mumbo jumbo. But speak to a developer, and she will tell you more!

DU000010 is an SQL table – the starting point for the database upgrade process as it helps you define the type of upgrade: Is this a normal upgrade or a customized one. It also works as a reference table when you plan backend GP table upgrades.

Another benefit of this table is that it helps you track down errors and modify them.

How do you initiate an upgrade with DU000010?

The DU000010 out file gets loaded with all the data model changes that happen in every release.This is a table in the DynUtils dictionary. All the table upgrades for every product need to be loaded onto this table and this must be done for each release.

The fields in the table play an important role for the upgrade process. So, let’s review the fields and the importance of updating the value in each field.

The table structure of DU000010 out is as below:

Field nameDatatypeDescription
PRODIDSmallIntThis table holds the upgrade details for all the products, and hence has the product ID information.
fileNumberSmallIntThis is a unique number assigned to each upgraded table. This field is used to identify the upgrade details for each table. The file number of this table will be updated in the DU000030 table to know the status of the upgrade.
filenameCharThis field holds the physical name of the table for which the upgrade is done.
fileOSNameCharThis field holds the technical name of the table.
versionMajorSmallIntThis field holds the version that the conversion script is being written for.
versionMinorSmallIntThis field holds the version that the conversion script is being written for.
versionBuildSmallIntThis field holds the version that the conversion script is being written for. Usually, it is one version higher than the last release build number. For example, if the last release version is 18.2.1013, then this version will be
VersionMajor: 18
VersionMinor: 2
VersionBuild: 1014
conversionScriptCharThis field has the Dex script name that holds the conversion logic for the table.
ACTION1SmallIntThis holds the conversion script type.
0 = Standard, 60 = Custom
priorityLevelSmallInt 0-1 = System
Database. 2-10
Company Database
CODENAMEChar Project Code Name

The main input for the upgrade process starts from DU000010 out file records. The conversion script added in this table is executed from the satellite dictionary. This is nothing but the DU dictionary.

SELECT * FROM [DU000010] WHERE [PRODID] =

<<Product ID>> and <<version fields>> between <<database version>> and <<dictionary version>> and

/* if System */
[priorityLevel] between 0 and 1
/* if Company */
[priorityLevel] between 2 and 10

ORDER BY
[versionMajor], [versionMinor], [versionBuild], [priorityLevel]

The code name entered in this table is considered as the project name for the upgrade of the respective table. In standard conversion processes, there are three set of tables created and a conversion script for each table. The naming convention for these are predefined and are as below:

SRC:<Table Physical Name><for<CodeName>SRC TEMP:<Table Physical Name>for<CodeName>TEMP DEST:<Table Physical Name>for<CodeName>DEST Conversion script: convert<Table Physical Name>for<CodeName>

About the Author

Savitha Shetty

Savitha Shetty

Savitha Shetty is a highly skilled software professional with significant experience in development and project management. She has worked on dexterity and SQL as a primary platform. Her expertise includes PowerApps, Business Central, and Azure DevOps. Her forte lies in Microsoft Dynamics development projects.
  • This email address is being protected from spambots. You need JavaScript enabled to view it.
Contact Us

Select Country

Select Your Local Website

Other Websites










sa.global does not share your personal data with any third parties.
I'm ok with sa.global storing my personal information as per their privacy policy