| Docs Help
  AppSource  
Docs  /  NCCR Cash Register (NAV)  /  Appendix

Upgrade to Business Central


2024/01/19 • 6 min. to read

In this topic

This topic is for developers and describes the steps required to transfer the data from the old C/AL version (NAV AddOn) to the new AL version (BC Extension).

Important

The following describes the upgrade of a solution without customizations. If customizations exist in the old solution, separate extensions must be created for the customizations.

Prerequisites for the Upgrade

  • Minimum NCCR 13.00 Older versions of NCCR must first be updated in NAV.

Files for the upgrade

All files needed in each step for the upgrade can be downloaded here: NCCR_UpgradeToBC_20230123.zip

Preparation 1: Rename old tables in the NAV database

The tables of the old solution are already in the NAV database in the 1000000 object range. In order to bring the table structure of the old solution on a uniform basis and to avoid naming conflicts with the tables of the new solution, the old tables must be updated and renamed. To do this, import the NCCR_UpgradeToBC_Step1_RenameOldTables.fob file with Replace All. The old tables are then marked with OLD_. The code, variables and functions and all TableRelations to the standard objects were also removed from the old tables.

Preparation 2: Rename old fields in the standard tables of the NAV database

The fields of the old solution are already in the standard tables of the NAV database in the 1000000 range. In order to bring the field structure of the old solution on a uniform basis and to avoid naming conflicts with the fields of the new solution, the old fields must be updated and renamed.

Important

The changed standard tables can be found in the file NCCR_UpgradeToBC_Step2_RenameOldFields.fob. Import the objects into a separate database, which has no customizations. The objects are based on a Microsoft Dynamics 365 Business Central "Spring 2019" (Version 14.0) AT version.
After you import the objects into a separate database, the fields of the old solution (marked with OLD_NCCR) must be copied from the separate database to the NAV database.

The following fields must be copied:

Table 36 Sales Header
  • Field No. 1011900 to Field No. 1011936
Table 112 Sales Invoice Header
  • Field No. 1011900 to Field No. 1011936
Table 114 Sales Cr.Memo Header
  • Field No. 1011900 to Field No. 1011936
Table 289 Payment Method
  • Field No. 1011900 to Field No. 1011901
Table 290 VAT Amount Line
  • Field No. 1011900
Table 5900 Service Header
  • Field No. 1011900 to Field No. 1011907
Table 5992 Service Invoice Header
  • Field No. 1011900 to Field No. 1011920
Table 5994 Service Cr.Memo Header
  • Field No. 1011900 to Field No. 1011920

APPLICATION UPGRADE

All steps described refer to this document: [Microsoft Docs] Business Central - Upgrading Customized C/AL Application to Microsoft Base Application Version 19. Preparations and steps 1-2 must be performed for each installation.

Task 3: Move code customizations to extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-3-move-code-customizations-to-extensions The current NCCR Cash Register represents the target app, so there is nothing else to do in step 3.

Task 4: Create empty System, Base, and customization extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-4-create-empty-system-base-and-customization-extensions In step 4, empty apps are created, which subsequently take ownership of old C/AL tables. Use the file NAVAX Consulting GmbH_NCCR Customization_14.0.0.app here. For each further change to the data structure of the standard application or NAVAX Cash Register, separate upgrade apps and conversion routines must be created.

Task 5: Create table migration extension

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-5-create-table-migration-extension In Task 5 a "Table migration Extension" is created, which contains all tables of the old C/AL solution (incl. NCCR). This is necessary so that data from the old C/AL tables can be transferred to the new AL apps (system and NCCR). In the second version of the "Table migration Extension", a reference to the provided app "NCCR Customization" must be added to the migration.json file:
migration.json
{
    "apprules": [
        {
            "id": "63ca2fa4-4f03-4f2b-a480-172fef340d3f"
        },
        {
            "id": "437dbf0e-84ff-417a-965d-ed2bb9650972"
        },
        {
            "id": "1edd5525-f8a6-49b3-9a5d-575bce9b4f4a"
        }
    ]
}

Task 10: Publish DestinationAppsForMigrations extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-10-publish-destinationappsformigrations-extensions In step 10, the app "NCCR Customization 14.0.0.0" is published. Use the file NAVAX Consulting GmbH_NCCR Customization_14.0.0.app here.

Task 12: Install DestinationAppsForMigration and move tables

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-12-install-destinationappsformigration-and-move-tables In step 12, the "NCCR Customization 14.0.0.0" app is installed.

Task 13: Publish final extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-13-publish-final-extensions In step 13, the app "NCCR Customization 19.0.0.0" is published. Use the file NAVAX Consulting GmbH_NCCR Customization_19.0.0.app here.

Task 14: Synchronize final extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-14-synchronize-final-extensions In step 14, the "NCCR Customization 19.0.0.0" app is synchronized.

Task 17: Upgrade and install final extensions

https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/upgrade/upgrade-to-microsoft-base-app-v19#task-17-upgrade-and-install-final-extensions In step 17, the "NCCR Customization 19.0.0.0" app is installed with the Start-NAVAppDataUpgrade command. The upgrade to BC19 can be completed, there are no other special considerations regarding NCCR Cash Register.

After the upgrade

Once the upgrade is complete, the data from the old cash register system can be prepared for transfer to the new version. For this purpose, the app "NCCR Cash Register by NAVAX 14.0.0.0" must be installed. Use the file NAVAX Consulting GmbH_NCCR Cash Register by NAVAX_14.0.0.0.app here. This app contains only the data structure and no cash register application code. After the installation, the upgrade routine can be started via the page NCCR Upgrade, which can be found via the search. The upgrade routine only needs to be started in one company and runs automatically across all companies in the database. Please note that the date format of the client (region settings) is used when converting the date filters. The cash register data is now prepared for the new version. The last step is to publish the latest version of NCCR Cash Register and install it using the Start-NAVAppDataUpgrade command. The two apps "NCCR Customization 14.0.0.0" and "NCCR Customization 19.0.0.0" must then be uninstalled and unpublished. The same applies to the app "NCCR Cash Register by NAVAX 14.0.0.0".


Submit feedback for
DE|EN Imprint