Dynamics 365 Business Central: new AL language hidden features

The new AL Language version 10.1 (released in these days) adds some small (but interesting) new features that I think it worth mentioning.

The main new hidden feature is the support for handling global and workspace launch configuration.

AL developers are now able to add a launch property to their code-workspace or settings.json file and it will be taken into account when creating AL extension’s projects

If you search for “launch” in User settings or Workspace settings, you will find a new Launch section:

Here you can specify a default launch for user or for workspace:

A local launch.json file overrides the workspace and global configuration. A workspace launch configuration overrides the launch configuration specified in the global settings.json file. So, Visual Studio and the AL compiler will search for (priority from max to min):

  • Local launch.json file in the project folder
  • Workspace-based launch configuration
  • Global settings.json file for VS Code.

In case that the local launch.json file doesn’t contain a valid AL launch configuration, the compiler will try to find one in the code-workspace first, and then in the settings.json files. However, if the launch property is specified in the code-workspace file even without specifying a valid AL configuration, the global settings.json file will not be able to override it.

The new AL extension adds also the following interesting new features:

  • The PrintOnlyIfDetail method is now supported for Business Central online.
  • A new “NoPromotedActionProperties” option in the app.json file to enforce the usage of the promoted area and actionref syntax in the extension:

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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.