FAQ for developing in AL

Note

We're working on improving the onboarding experience for AL developers. If you've input for this article, we'd love to hear from you. Please use the Feedback section at the bottom of this article to help us make improvements that you’d like to see.

We also welcome contributions to our docs. New to contributing to docs? Don't worry, read more about contributing here Contribute to the help.

This topic contains a number of frequently asked questions and answers to these questions.

How do I get started?

For an overview of developing apps for Dynamics 365 Business Central, see aka.ms/GetStartedWithApps

Next, follow the Get Started with AL to set up the tools.

Which version of the AL Language extension for Microsoft Dynamics 365 Business Central should I use?

For Dynamics 365 Business Central cloud sandboxes you must use the AL Language extension for Microsoft Dynamics 365 Business Central official release available in the Visual Studio Code Marketplace.

For the latest developer preview releases, you can use the latest pre-release available in the Visual Studio Code Marketplace or the AL Language extension for Microsoft Dynamics 365 Business Central, which is available in the next major artifact through the "Ready! for Dynamics 365 Business Central" program on Microsoft Collaborate.

How do I enable the debugger?

To read about enabling debugging in AL, see here Debugging. To read about snapshot debugging, see Snapshot Debugging.

Why do the symbols downloaded to Visual Studio Code have different versions from the apps that are installed on my tenant?

We always download the highest published version of symbols. This means that if one of your dependencies has a higher version published, that version will be downloaded even if it's not installed for your environment.

Where do I find help regarding AppSource validation and submission?

When submitting an app for AppSource, you must make sure that it validates against the Technical Validation Checklist. For frequently asked questions, see Technical Validation Checklist FAQ.

What constitutes the identity of an app?

To read about app identity and why it is important to keep certain settings for an app unchanged, see App Identity.

Extensions published from Visual Studio Code or created Use Designer have disappeared from a sandbox environment. Why?

Extensions that have been published to a sandbox environment from Visual Studio Code or created Use Designer are removed when the sandbox environment is updated or relocated within our service. However, the data of an app is not removed, so you only have to re-publish and install the app to make it available.

If you have per-tenant extensions (PTEs) installed that depend on extensions published from Visual Studio Code, the per-tenant extensions will be removed too.

If you have partner telemetry enabled, search for event id LC0105, which includes a short description of the reason for your environment update or relocation.

In order to enable partner telemetry in your extension, you must specify the applicationInsightsConnectionString property in the manifest (app.json) of your extension. For more information about this property, see JSON files.

For more information, see Sandbox Environments.

Can I create something similar to Menusuites?

In the AL Language extension for Microsoft Dynamics 365 Business Central, the concept of Menusuites is not supported. The two primary purposes of Menusuites are:

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

The first purpose can be achieved in Extensions by using the new properties added to Pages and Reports. For more information, see Adding Pages and Reports to Search.

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. For more information, see Adding Menus to the Navigation Pane.

Get started with AL
Keyboard shortcuts
AL development environment