NAV2016 | Getting started with Extensions (NAV Apps)

After returning home from NAVUG where I tried to inspire people to develop software in a less intrusive way I found out that some of you might not start working with the new extension model because the DLL does not load.

What are Extensions?

Extensions are packages of Delta files that you can run as an “App” inside NAV. They are compiled on top of your NAV code. In other words, you can customise NAV without doing raw source code modifications.

I’ll post a video on YouTube about this as soon as all the conferences are over

Who is this for?

People have different opinions about this, but my own is that ISVs should start using this first to ship their horizontal solutions as extensions. In future we might also be able to ship vertical solutions or localisations.

Can I customise an extension?

No! This is one major change compared to shipping raw sourcecode modifications. You cannot make changes except personalisation. The Delta files (which are text files) are scrambled so you cannot change them either.

So why would I do this?

To make upgrades easier. With Liberty Grove Software (the partner I work for) we do the integration for some ISVs, and their interface is typically not to be changes. Another example is Anveo which is also designed not to be modified by partners, except for one module which could work as events.

Events? Are you making this more complex now?

Eventing is another new model that we have in NAV2016 which is stolen from .NET. We can now subscribe to triggers in the product. This, in combination with Extensions might be a new model to develop modifications in our product.

So how do I get started?

This was the intention of the blog. The DLL you need to create your own extension as described in my previous blog is (apparently) might not load.

Thanks to Erik Hougaard for trying to figure this out:

Erik Hougaard (@eHougaard) says:

  • For those how cannot find the commands, use this to register the missing DLL from the RTC folder:

    Import-Module .\Microsoft.Dynamics.Nav.Apps.Tools.dll

    Then it should works (It did that on my machine).

More soon

I will post more about this since I think we should all start experimenting with this and give our feedback to Microsoft.

Meanwhile, please start reading MSDN:

Download Example

UPDATE: Download the files and script from the new Mibuso


  1. Sleo says:

    Hi Erik,
    I’ve reach this page basen on result from google. Currently our company are planning to upgrade to NAV 5 to NAV 2016. We realize that we still need to carry over more than half of our customization objects. There are more than 100 modified table and forms.

    Since we know that Microsoft are going to release an update and upgrade more frequently now… I have been discussing about using this method of development. Im planning to deploy the nav using tenant mode in an on premises environment. My biggest concern are there are no real life experience yet to deploy nav using this kind of method. Can this extension handle this many objects?


Leave a Comment

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.