“Fast Track” Migrations

In the past weeks I’m talking with some colleagues about the “best way” to do a successful migration from NAV to Business Central.

Since there is not a “best way” 😅 I’m tried to identify the key factors of a migration through quadrant analysis.

From the “data” point of view, the limits are:

  • Migrate all data (not only master tables but also ledger ones)
  • Start with a new database (for example using “Rapid Start” to populate new setup tables and master tables)

From the “application” point of view:

  • Convert all customizations and add-ons from C/AL to Universal Code APPs
  • Start with new (and maybe different) APPs (PTE or AppSource)

In my opinion, any uncertainty between these limits leads in the “confusion area” 😅 and the probability to achieve a successful migration will be reduced.

Official migration paths

Microsoft says:

You can use the built-in migration tools to migrate data to Business Central online from specific product versions. The on-premises solution must use SQL Server 2016 or a later version, and the database must have compatibility level 130 or higher. Currently, you can migrate to Business Central online from the following products:

Business Central on-premises

Currently, you can migrate to Business Central online from the earlier versions 14 through 22. You can also switch to online from the current version (23).

Dynamics NAV

If you are currently on a version of Dynamics NAV, you must upgrade to Business Central on-premises, and then switch to Business Central online.

There is a lot of documentation about On-Premises to Cloud migration: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/administration/migrate-data

Unfortunately the process is quite complex (but well assisted) and sometimes is abandoned preferring to start as new.

My “Fast Track”

I needed to bring to the Cloud a lot of standardized customer or simply a customer with a lot of companies or more simply to reduce the cost of the migration. So, why not directly ingest data through API from a local SQL database? 🤠

Disclaimer: official path is the only supported by Microsoft, continue reading at your risk! 😅

Many colleagues was scared about this approach because “violates the database integrity” or “because is dangerous to work at low level with BC tables” but once again, why not if you know what you are doing?

So I developed a web tool that resides on-premises and allows to upload data directly to online Business Central.

The tool allows to “play” with local SQL query:

  • Filter data to upload
  • Adjust changed fields
  • Instantly view missing fields (customizations)

Conclusion

This unofficial method allows to explore the first quadrant of the previous analysis and, in my opinion, the most interesting one:

In the Cloud the customer is forced to adopt new APPs and very frequently it’s impossible to do a 1-1 conversion of old objects. But the data (and the historical series for certain industries) are the real fortune of the customer.

With this method you can start with a “pure” Business Central, importing only the standard data. You can start doing training and testing the new APPs. Day by day the queries are adjusted to cover 100% of previous data and, if all data is managed, the migration is completed!

So, for a successful migration, follow the data! 🕵️