Upgrade Business central base V14 to V15 (wave 2)

You got a Business Central V14 with extension and/or data you want to bring in Business central V15 ?

Let’s take a look at the microsoft guideline : Technical Upgrade to Dynamics 365 Business Central 2019 Wave 2 I personally followed Microsoft process but it turns out that several details and step are missings so I’m writing down what I’ve followed to bring a customized V14 with extension and data to V15.

Prerequisite

  • Administrator rights on your V14 database and service
  • Your V14 Extension source code
  • Business central V15 operational base to adapat your V14 extension

Methodology

1- Make your V14 extension working for business central V15 is the hard work.
– Update your launch.json to point the V15 target
– As V15 application moved from C/Side to Microsoft Apps, let’s update your extension dependencies you would have something like bellow
Use an empty AL project to retireve your V15 dependencies version and guid if necessary, they depend on CU and Localization (exemple bellow is W1 CU1) and change your “runtime”: “4.0” instead of “3.0”

"dependencies": [
  {
    "appId": "63ca2fa4-4f03-4f2b-a480-172fef340d3f",
    "publisher": "Microsoft",
    "name": "System Application",
    "version": "15.0.36560.36649"
  },
  {
    "appId": "437dbf0e-84ff-417a-965d-ed2bb9650972",
    "publisher": "Microsoft",
    "name": "Base Application",
    "version": "15.0.36560.36649"
  }

– Update your code following v14 to v15 breaking change. Lot of objects have been moved or renamed you will have to guess new names or search for them on google.
https://github.com/microsoft/ALAppExtensions/blob/master/BREAKINGCHANGES.md
(Unfortunately this is not an exhautive list)

2- Uninstall and unpublish all V14 extension, including symbols (follow microsoft task 3. cmdlet sample)

3- Backup/restore your V14 base to the V15 base (erase the demo database or use new one). Modify V15 service configuration to point this new database

4- With V15 administrative powershell console execute Invoke-NAVApplicationDatabaseConversion on this base

5- Restart the V15 service

6- Publish V15 symbol (system.app) provide in the installation DVD/ModernDev/[…]

7- Publish V15 Microsoft System.Application then Microsoft Base Application from the installation DVD/Applications

9- Use powershell powershell Sync-NAVTenant -ServerInstance <BC15 server instance> -Mode Sync
then Sync-Navapp -ServerInstance <BC15> -Mode ForceSync for “System Application” And “Base Application”

8- Install Microsoft System.Application then Microsoft Base Application

10- Publish then install your customized extension made in 1-

11- Restart BC15 service

2 Comments

  1. Hi Maxime,

    Could you please give me further info in relation with 3 step (3- Backup/restore your V14 base to the V15 base (erase the demo database or use new one). Modify V15 service configuration to point this new database) ?

    Thanks in advance
    Piedi

    • Of course, the purposte of step 3 is to use your V14 database with a V15 service, in order to execute powershell commands later :

      – If you want to keep a copy of you old V14 database : in sql managment studio right click/Tasks/Back up on the V14 database. Then on your existing demo V15 Right click/Tasks/Restore/database, then choose the bakcup you made before (you would have to rename mdf and ldf in files tab)
      – If you don’t want to keep a copy of the V14 version, simply create or modify a V15 service and set your V14 database in the V15 service parameters.

      Hope this help

Leave a Reply

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