Skip to content

Frequently Asked Questions

Stanislaw Stempin edited this page Sep 13, 2017 · 47 revisions

How to get started?

Please start by having a look at our app development landing page located at https://msdn.microsoft.com/en-us/dynamics-nav/developer/devenv-develop-apps-for-fin and follow the step by step guidelines to get set up. You can then have a look at the Getting Started section of the developer documentation: https://msdn.microsoft.com/en-us/dynamics-nav/developer/devenv-get-started

Menusuite objects are not yet supported. What do I do?

Two primary purposes of menusuites are to:

  • Make pages searchable
  • Make pages accessible through a navigation structure

The first purpose cannot be achieved in extensions V2 just yet, we plan on adding a different mechanism. The second purpose can be achieved by extending the Navigation Pane page and/or by adding Actions to other existing pages that can serve as a navigation starting point. See Extending Navigation Pane #669 for an example.

Permission property - cannot grant permissions to objects outside of current module

Right now you can only use the property with application objects from your own module. Later on the property will be extended to base application objects for which full permissions are granted in the license.

DotNet types are not available in Extensions V2. What now?

On-Premise:
DotNet interop will be available at some point in the future but not in the NAV release this year.
SaaS:
DotNet interop is not available due to safety issues in running arbitrary .NET code on cloud servers. There are at least 2 possibilities that we recommend:

  1. With each monthly update we are providing new AL types that replace the most typical usages of .NET like HTTP, JSON, XML, StringBuilder, Dictionaries and Lists. Many .NET usages can be replaced directly by these new AL types resulting in much cleaner code. Documentation: https://msdn.microsoft.com/en-us/dynamics-nav/developer/devenv-restapi-overview

  2. For things not possible to achieve in AL code we recommend using Azure Functions to host the DLL or C# code previously embedded in NAV and call that service from AL I recommend the following blog posts from our MVPs to understand it in more depth: http://vjeko.com/state-net-affairs/
    http://www.kauffmann.nl/2017/06/24/al-support-for-rest-web-services/
    http://vjeko.com/invoking-azure-functions-al/

  3. We offer an open source GitHub repository where you can submit .NET type wrappers that, if accepted, will be included in the base application: https://github.com/Microsoft/cal-open-library

The type or method 'XYZ' cannot be used for 'Extension' development.

We have blocked off a certain set of functions from being directly called from Extension code. The approach was based on a conservative static analysis resulting in some functions being blocked unnecessarily. If you require to use one or more of these functions please log an issue and provide a full list. We will analyze the request and unblock functions deemed safe.

How to use control add-ins the AL language?

JavaScript control add-ins are not yet available. We are working on a new approach that doesn't rely on .NET interface as the AL - JavaScript interop specification. It should be available around November Update timeframe.
SaaS:
.NET control add-ins will not be available since the web client cannot execute .NET code.
On-Premise:
.NET control add-ins will be available in the future. No timelime at this point.

Clone this wiki locally