How to get access to C/AL code in NAV Developer Preview September Update

12 Sep

The NAV Developer Preview is meant to create extensions and not to do any customizations in the base application. However, you may want to have at least access to the base code to see what has been changed, which functions are external, etc.

If you created an Azure VM right away after the announcement of the September Update, you might be missing C/SIDE on the desktop. If that is the case, then you should recycle your VM and create a new one. The latest image version contains a C/SIDE shortcut on the desktop. Or you can skip to below how to get access via PowerShell.

C/SIDE

On the desktop you will find a shortcut FinSql.

It will automatically try to open the correct database, but you have to type in credentials.

These are the credentials you muse use:

  • Username: SA
  • Password: same password as NAV admin user

The server name is: NAVSERVER\SQLEXPRESS

With this, you should be able to connect to the database, change the license and export objects.

PowerShell

To access with PowerShell follow these steps. These steps also demonstrate how you can exchange files between the container and the host system.

All steps below should be executed on the Azure VM

Step 1: Copy a development license to the folder C:\myfolder

LicenseInMyfolder

This folder is shared with the docker container. Inside the docker container it is known as C:\run\my.

Step 2: Open the NAV Container PowerShell prompt from the desktop

 

Step 3: Import the development license to the NAV server

Run this command:

Import-NAVServerLicense -ServerInstance NAV -LicenseFile 'C:\run\my\NAV2017 USA.flf'

Again, the folder C:\myfolder on the Azure VM becomes C:\run\my inside the container.

ImportNAVServerLicense

Step 4: Get NAV Server settings

Run this command:

Get-NAVServerConfiguration -ServerInstance NAV

GetNAVServerConfiguration

Now you know the database details. You need them for the next step.

Step 5: Export the NAV objects to text

Run this command, and use the settings you found in the previous step:

Export-NAVApplicationObject -DatabaseServer localhost\sqlexpress `
                            -DatabaseName FinancialsUS `
                            -Path C:\run\my\NAVTenerifeObjects.txt

ExportNAVObjects

And you will get the complete export in C:\myfolder on the Azure VM!

ExportNAVObjectsOutput

Step 6: Explore it with a source code analyzer

Load the object file into a C/AL code analyzer of your choice.

2 thoughts on “How to get access to C/AL code in NAV Developer Preview September Update

  1. Pingback: How to get access to C/AL code in NAV Developer Preview September Update - Kauffmann @ Dynamics NAV - Dynamics NAV Users - DUG

  2. As alternative way: I copied sql database files (Demo Database NAV(11-0)_data.mdf and ldf) from container folder:
    “C:\ProgramData\docker\windowsfilter\0ad35e5c83b9dbc9206f8602cddc9de6166ec891fde3833089ccf91d05675bbf\Files\databases” to my local pc.
    And NAV server and Client files from similar container folder: “C:\ProgramData\docker\windowsfilter\0ad35e5c83b9dbc9206f8602cddc9de6166ec891fde3833089ccf91d05675bbf\Files\Program Files (x86)”.
    I’ve attached db to my local SQL and connected with copied NAV… Works 🙂

Leave a Reply

Your email address will not be published.