NAV Development Preview – Anniversary Update

Even though December is not over yet, we have another release for you! Welcome to our Anniversary Developer Preview – today marks exactly 1 year ago since we announced the first preview of the modern development tools – for a trip down memory lane, see our blog post from back then here. We hope that you will agree that our development tools have evolved and grown a lot since then. We still have a long way to go and we’re very excited to continue this journey together with you. Thank you for all of your contributions to this project so far. Your suggestions, pull requests, questions, and issue reports are not only very helpful for guiding our work but also very motivating for the team. We continue working hard on improving the capabilities of the toolset as well as fixing incoming issues reported by you. Below you can see the changes that we’re announcing for this update. To jump directly to an updated image, go to the sign up at

Please note, that the improvements announced in this blog post are not available in Dynamics NAV 2018 and the following cumulative updates of Dynamics NAV 2018.

Debugger changes

  • The Visual Studio Code debug adapter has been refactored to lazily evaluate globals and locals
  • Text constants are no longer shown as part of global symbols

Method overloading

The AL language now supports method overloading. It is possible to have one procedure with the same name, but with different parameter lists. The codeunit shown in the sample below has 3 procedures all named Add():

IntelliSense will now show the parameter lists for the different versions to browse through:

When hovering over a method call, the called version is shown:

More control add-ins available

A number of built-in control add-ins can now be used in AL extensions:

  • Microsoft.Dynamics.Nav.Client.VideoPlayer
  • Microsoft.Dynamics.Nav.Client.WebPageViewer
  • Microsoft.Dynamics.Nav.Client.PageReady
  • Microsoft.Dynamics.Nav.Client.BusinessChart

Note: Business chart can currently only be configured through table Business Chart Buffer (485), which internally uses .NET interop to set up the chart.

All new control add-ins are available in the newest Application symbols package, therefore they could be simply referenced in the user control field:

Working with camera

A new base page Camera Interaction (1910) has been added to encapsulate the interaction with the device camera (if available). .NET interop code is no longer needed to take a selfie in AL:

More system tables unblocked

A number of system and virtual tables have been unblocked for extension development:

  • License Permission
  • Permission Set
  • Permission
  • Aggregate Permission Set
  • All Profile
  • Profile
  • Profile Metadata
  • Add-in
  • Chart


That’s it for now. As usual we encourage you to let us know how you like working with these additions and keep submitting suggestions and bugs. You can see all the filed bugs on our GitHub issues list ( 

We wish you a Merry Christmas and a Happy New Year!

For a list of our previous blog posts, see the links at the end of this post.


NAV Development Tools Preview – December Update

NAV Development Tools Preview – November Update

NAV Development Tools Preview – October Update

NAV Development Tools Preview – September Update

NAV Development Tools Preview – August Update

NAV Development Tools Preview – July Update

NAV Development Tools Preview – June Update

NAV Development Tools Preview – April Update

NAV Development Tools Preview – March Update

NAV Development Tools Preview – February Update

NAV Development Tools Preview – January Update

Announcing the Preview of Modern Development Tools for Dynamics NAV