Skip to main content

UPGRADE CUSTOMIZATIONS TO V2 EXTENSION (Application and Data)


From Navision 2018 Onwards, Navision only support v2 Extension. Dynamic Navision Extension will make upgrade easier. If customizations are converted into V2 extension that means v2 Extension consist upgraded Data as well as customizations, also it will be easy to upgrade into new version of Navision and apply CU updates.

Below are the detailed steps to upgrade customizations into Navision 2018 v2 Extensions

1) you have Customized database in Microsoft Dynamics Navision 2018.

2) Create the new table for each table that is customized or also for customized field in standard table but while creating table for standard table, add the primary key and customized field with same ID and Name in new table.

For E.g.:
I have created 1 table “Person” and 2 Customized Field (Test, Doc No) in “Sales Header”.
Now create 2 New tables in 2018. 

· Upg Sales Header -> Two base field (PK) and customized field -> Same ID and add primary key.
Refer below screenshot.



· Upg Person -> save as new table (person)



3) Tables consisting data (refer screenshot)








4) Create Upgrade code unit i.e. code unit that having subtype as upgrade and it should have following entry to copy that data:




5) Delete the new customized field and customized table with sync schema validation from standard table.






6) Now to check, run the upgrade sales header table .it will show all data.




Do the same for customized table.

7) Create extension in visual studio for the customized field and customized table with same id of field and name.



And Create a codeunit with subtype -> install




8) Publish this app in Navision 2018 using ISE.

Open ISE and run the below command

· Import-Module 'C:\Program Files\Microsoft Dynamics NAV\110\Service\NavAdminTool.ps1'

· Publish-NAVApp -ServerInstance Dynamicsnav110 -SkipVerification

Path : C:\Users\njain\Documents\AL\ExtensionV2Project\Default publisher_ExtensionV2Project_1.0.0.0.app.

Install from Client.

9) Now check the data.


Error while downloading symbols or unable to access customized table in Visual studio code

Run the below command in ISE

Get-NAVAppInfo -ServerInstance DynamicsNAV130 -SymbolsOnly

You should be getting an output as this

Id : d0321c74-32ec-44b9-b91e-5f87baad87ae
Name : Test
Version : 13.0.24630.0
Publisher : Microsoft
ExtensionType : ModernDev
Scope : Global


Id : 8874ed3a-0643-4247-9ced-7a7002f7135d
Name : System
Version : 13.0.12929.0
Publisher : Microsoft
ExtensionType : ModernDev
Scope : Global

If you are getting the version for 11.0 or any other versions in than please follow the below steps.
Open Powershell with Admin

Import-Module 'C:\Program Files\Microsoft Dynamics 365 Business Central\130\Service\NavAdminTool.ps1'

PS C:\WINDOWS\system32> Unpublish-NAVApp -ServerInstance DynamicsNAV130 -Name System -Version 11.0.12925.0
PS C:\WINDOWS\system32> Unpublish-NAVApp -ServerInstance DynamicsNAV130 -Name Test -Version 11.0.22292.0
PS C:\WINDOWS\system32> Unpublish-NAVApp -ServerInstance DynamicsNAV130 -Name Test
PS C:\WINDOWS\system32> Unpublish-NAVApp -ServerInstance DynamicsNAV130 -Name System

Later Please place the files System.app and Test.app in a folder of your choice.
The files are located in the dvd in the following folder (Use the version of BC)
X:\DVD\ModernDev\program files\Microsoft Dynamics NAV\130\AL Development Environment



Run the below 2 commands in the same Powershell (Change instance and path accordingly)

Publish-NAVApp -ServerInstance DynamicsNAV130 -PackageType SymbolsOnly -Path C:\Test\System.app -SkipVerification

Publish-NAVApp -ServerInstance DynamicsNAV130 -PackageType SymbolsOnly -Path C:\Test\Test.app -SkipVerification

The finsql.exe command must be executed client side.

Run a command prompt and change directory to the client folder (typically C:\Program Files (x86)\Microsoft Dynamics 365 Business Central\130\RoleTailored Client).

From the client directory run the following command

finsql.exe Command=generatesymbolreference, Database="Demo Database NAV (11-0)", ServerName=localhost\ITMBSNAV

where Database is the database where you wish to generate symbols and ServerName is the SQL Server instance where the Database is attached

NOTE: The command itself might give the idea to be completed in few milliseconds but this is not true since finsql.exe continue to run in background even if the prompt returns to the command console window.

2. Use Task Manager to inspect the resource consumption by finsql.exe process.

When running finsql.exe with the generatesymbolreference parameter key within command prompt, it might seem the process ending too fast or that nothing happened.

Just close the command prompt and run Task Manager (taskmgr.exe) and go to tab Details to inspect finsql.exe background process and its resource consumption.
You might notice memory growing up high of several hundreds of MB and process disappear when finished.



After this please try to download the symbols again.





Comments

Popular posts from this blog

AL Development 03 - How to Develop New Report in AL?

Hi Readers, Now its time to develop the most important part of Navision which client desire the most yes you are correct i am talking about Reports. As we know to develop any solution in Business Central we must start working on AL Code Extension so from this blog you will get to know the detailed step how to create a Report through AL Code in business Central. Note: As of now there is no provision to customise the base report. Let’s try to create a simple report. Add new file with .al extension in your project folder through visual studio code My File Name is My_report.al  Code Snippet for adding a new Report, use snippet treport as shown below: Next Step to set these Report Properties - • Assign ID and Provide a name of the Report that you are adding. • Set UsageCategory to ReportsAndAnalysis. • Set ApplicationArea to All. As you select the treport snippet then a default structure of the report is created as below: Basically, there are 3...

Custom sheet name in RDLC Reports

Hi Readers, In this article we are going to discuss how to change the excel sheet name while using base Navision SAVEASEXCEL functionality. Applicable for RDLC reports of Navision and SSRS reports. Let’s say we have the following report that shows total sales by product category by territory:   When we export this report to Excel, we’d like each territory to appear in its own worksheet and each worksheet named after its territory: How do we make this work? Easy! 1) Put every group on its own page. 2) name each page using the same field the group uses. Step 1: Put each group on its own page To put each group on its own page, open the group’s property window. Then, in the Page Breaks category, put a check mark in the Between each instance of a group check box. Click OK to complete this step. Step 2: Name the pages of the group With the group selected in the Row Group s panel, press F4 to open the Properties window. Next, expand the Group ...

AL Development 01 - How to Develop New Table in Database?

Hello readers, As we know to develop any solution in Business Central we must start working on AL Code Extension so from this blog you will get to know the detailed step how to create a table through AL Code in business Central. Requirement : Need to create a new table with below fields: Now let’s Start: Try to keep a naming standard for your projects; As I am using the combination of Table description +Table-ID, you can use your own naming convention. So, my table file name is: My_Table50129.al AL provides a list of the snippets to make it easy for developers to add objects in extension. Snippet for getting a table layout use snippet ttable (here we have to t as prefix for every type of object we want to create in AL) as shown below: Now Assign the ID and name of the table as below: As you select the ttable from the list a default table design structure is created as shown below: You can divide the whole table into 4 Sections - · F...