videoAL Developmentofficial - Microsoftreviewed - checked by Opus

What's New: AL Language (2026 release wave 1)

AL Language changes in 2026 release wave 1: JSON and data transfer additions, namespace adoption and fully qualified names, symbol download from public NuGet feeds, parallel workspace compilation, and AL tools, AL MCP server and a troubleshooting MCP server for AI-assisted development and debugging.

  1. 0:00 JSON support and data transfer enhancements
  2. 1:58 Analysis views in extensions and namespace introduction
  3. 2:23 Namespace adoption and fully qualified names
  4. 5:28 Download symbols from global sources
  5. 7:33 Test execution in AL extension
  6. 7:56 Workspace compilation and AL tools
  7. 10:07 Parallel workspace compilation and dependency graphs
  8. 12:33 Simple only detection and runtime specification
  9. 14:50 Parallel compilation and workspace compile performance
  10. 15:34 AL Go integration and hardware utilization
  11. 17:14 AI-assisted development mindset shift
  12. 20:00 AL tools in Visual Studio Code and GitHub Copilot
  13. 22:32 AL MCP server for agents outside VS Code
  14. 26:11 AI-powered troubleshooting and debugging
video Microsoft Dynamics 365 Business Central (YouTube) · 2026-04-01Watch on YouTube

Overview

The session covers AL language and tooling updates. On the language side, select token can return multiple tokens, data transfer gains an add destination table filter method, and update audit fields works in the cloud. Analysis views can be included in extensions. Namespace adoption uses a three-tier resolution strategy, and fully qualified names support name-based object resolution at runtime.

The tooling section covers downloading symbols from global sources, workspace create, map and compile commands, parallel compilation, and runtime specification in the directory app.props.json file. The later part covers AI-assisted development: AL tools in GitHub Copilot in VS Code, an AL MCP server for agents outside VS Code (pre-release at recording), and a Business Central troubleshooting MCP server that lets Copilot inspect stack frames and variables at a breakpoint.

Key points

  • Select token now accepts multiple tokens in one call; data transfer adds an add destination table filter method, and update audit fields is available in cloud.
  • Analysis views can now be defined in extensions and shipped with pages in applications.
  • Automated namespace adoption resolves in three tiers: namespace template in settings.json, sibling file inference by longest common prefix, then publisher.projectname. Run, RunModal-style and Execute overloads and RecordRef.Open accept fully qualified names.
  • The download symbols from global sources command pulls platform, application and dependency packages from public Microsoft NuGet feeds without authentication; it needs an internet connection.
  • Custom feeds can be set with AL.NuGetFeeds and take priority over Microsoft feeds; Microsoft feeds can be disabled entirely with the use only custom feeds setting.
  • New AL tool commands include workspace create, map (mermaid markdown), workspace compile with a dependency-based parallel graph, and is simple only; runtime can now be set in directory app.props.json.
  • Preliminary measurements on the BC apps repo: baseline just under 2 hours, down to 26 minutes with four processes on a standard GitHub runner (about 75 percent reduction); AL Go for GitHub users get this automatically.

Features

Feature Status At Evidence
Multiple token selection in JSON status not stated, demoed 0:36
Add destination table filter method status not stated, demoed 1:03
Update audit fields in cloud for data transfer status not stated, demoed 1:39
Analysis views in extensions generally available 1:58 “the ability to define and include analysis views in your extension. You can now ship analysis views with your pages” (1:58)
Three-tier namespace resolution strategy status not stated, demoed 3:01
Fully qualified names for object resolution status not stated, demoed 4:30
Download symbols from global sources status not stated, demoed 6:13
Custom NuGet feeds for symbols status not stated, demoed 7:10
Test execution in AL extension status not stated 7:44
AL workspace create command status not stated, demoed 9:42
Workspace map command status not stated, demoed 10:29
Workspace compile with parallel builds status not stated, demoed 11:19
Simple only detection command status not stated, demoed 12:33
Runtime specification in directory app.props.json status not stated, demoed 13:28
AL Go hardware utilization status not stated 15:10
AL tools for GitHub Copilot in VS Code status not stated, demoed 20:00
Automatic diagnostic fixing with Copilot status not stated, demoed 20:57
AL MCP server for non-VS Code agents status not stated, demoed 22:32
Automated agentic pipelines with AL MCP status not stated, demoed 24:31
Business Central troubleshooting MCP server status not stated, demoed 32:41
Copilot-assisted error debugging status not stated, demoed 27:56
Copilot performance profiling without profiler status not stated, demoed 30:26
Stack frame inspection via Copilot status not stated 32:55
Copilot-driven breakpoint control status not stated 33:48

AL objects mentioned

As heard in the captions. A name that matches one object page by exact type and name links to it; the others stay as named.

  • other “select token method” at 0:36
  • other “add destination table filter method” at 1:03
  • other “update audit fields method” at 1:39
  • other “recordref.open” at 4:57
  • other “AL workspace create” at 9:42
  • other “workspace map” at 10:29
  • other “workspace compile” at 11:19
  • other “is simple only” at 12:33
  • table “item table” at 27:19
  • codeunit “code unit” at 30:37

Not found in BC28-30: table “item table”, codeunit “code unit”.

Quotes

  • 0:36 “We’ve now added the ability for you to select multiple tokens in the select token method.”
  • 1:03 “the data transfer object has now a new method called add destination table filter. With this method, you can now filter what you want”
  • 1:39 “we also updated the update audit fields method to now be available in cloud.”
  • 1:58 “Another new language addition is the ability to define and include analysis views in your extension.”
  • 2:47 “we have made the code action for adding namespaces automatically even smarter. It now uses a three-tier resolution strategy.”
  • 6:13 “Let’s jump straight into it by running the download symbols from global sources command. After specifying the localization, in a matter of seconds, it”
  • 7:22 “you can completely disable the Microsoft feeds by using the use only custom feeds setting.”
  • 13:43 “the props file to also specify the runtime and you can see here it correctly added the runtime 16 to the manifest.”
  • 14:21 “if I use four, which is the maximum that you can use in a GitHub runner, standard GitHub runner, it gets down to 26”
  • 15:34 “I would say it is about the changing mindset. So, what I do nowadays is I I simply spend less time writing low-level syntax”
  • 17:14 “suddenly becomes more important we can think of ai as an as an intern it’s super productive but if you don’t give it”
  • 18:29 “Once I define the task for the agent and specify the success criteria, and that could be for example AL test, the agent can”
  • 20:43 “the AL extension already provides some AL tools just out of the box. So, now the agent can build, debug, and do many other”
  • 23:44 “this is only available on the pre-release version. Um at the point of when you see this video, the ALM CP will be available”
  • 28:30 “Copilot has attached to the session running the code, and on that session, it’s using the Business Central troubleshooting MCP server to get stack”
  • 30:02 “I had a bug. I couldn’t see it by reading the code. I attached the debugger, typed one sentence, and waited a little bit,”
  • 32:41 “we have a completely new MCP server for Business Central troubleshooting server, which runs in an NST. And what it does, it exposes the”
  • 32:55 “at a breakpoint, Copilot can inspect the full call stack. You can uh you can prompt, Give me the stack at frame zero.”
  • 33:21 “It can read variables across all stack frames or given stack frame. You can prompt, Give me all variables at frame one or frame”
  • 33:48 “you can add breakpoints by object name or ID and type, plus a line number, which is very helpful if you want Copilot to”
  • 34:03 “ask Copilot a single question, it analyzes the entire execution context, it identifies the root cause, and helps you move forward without touching the”

Disclaimers in the video

  • 23:44 preview: AL MCP is only available on the pre-release version at the point of recording
  • 34:28 coming-later: try out the pre-release for any upcoming changes and addition to the developer experience

Presenters (as heard): Stefan, Balazs, Espen, Arthur, Blanca, Kelman.