New version, new performance goodies from Dynamics 365 Business Central Product Group.
Telling you the truth, version 27 is not an Armageddon version, speaking about performance, and if you want to give it a name, c’mon, … it IS the “Agentic version” !
Nevertheless, there is always something super good (and cool) in the performance area as well in every major release that makes my day.
VIBE CODING DISCLAIMER
Meanwhile our beloved ERP is evolving into an AI-first ERP, a new generation of developers is growing. And it is growing fast.
The Gen V.

Not the “V for Vengeance” (oh! how I love that movie) nor the Gen V series on Prime Video:
The Gen Vibe
I am having a lot of fun with vibe coding lately. And this time I want to showcase the performance features and enhancements released with a simple extension, TOTALLY created in vibe coding. 100% developed by AI and all code accepted as is.
No manual changes at all, only natural language and few requests of rephrasing or to fix stuff here and there.
Ah. I was almost forgiving. Tired to type, I am just literally communicating, speaking, hablando, parlando, sprachen with the GitHub Copilot Chat thanks to this Visual Studio Code extension

THIS will change the way you develop or simply interact with your … friend (I cannot say anymore that is a copilot. It is more than that.).
My vibe coding menu:
- GitHub Copilot Chat (Premium enabled)
- Claude Sonnet 4.5 (Preview)
- Agent Mode
- Tools
Extension: AL Language extension for Dynamics 365 Business Central
Extension: NAB AL tools
Extension: GitHub Pull Requests
MCP Server : AL Development (kudos to https://github.com/StefanMaron/AL-Dependency-MCP-Server)
MCP Server : GitKraken

You can download the application sample here:
https://github.com/duiliotacconi/DT.AL/tree/main/BC27-Performance-Features

Ah. And I – sorry – It has translated this simple app into the following languages, just for the fun of it, and in a blink of an eye:
- English
- Italian (obviously!)
- German
- Spanish
- Danish
Back to the performance goodies, there are 6 features / enhancement in this version that I have personally found worth mentioning divided into logical groups, depending on their target, like: application, developer and SQL Optimization.
APPLICATION
DEVELOPMENT
- LockTimeoutDuration in AL
- CreateSequentialGuid in AL
- Truncate in AL
SQL OPTIMIZATION
- Flow Fields with same table and filters in a single OUTER APPLY
In the upcoming days, I will post 6 smaller blogs, by using the demo app and give you a sneak peek and dissect the performance features / enhancements added in this release. One by one. I will also update this post with references to them.

If I must make a ranking in the history of performance features introduced and their impact, starting from version 23.x (Dynamics 365 Business Central 2023 Wave 2), this is my own personal list (it might be submitted to changes in the future):
| No.1 | 23.x – 2023 W2 | (new table extension model, tri-state locking) |
| No.2 | 26.x – 2025 W1 | (improved inventory posting concurrency, omit calculations of hidden flow fields, stepping-stone) |
| No.3 | 25.x – 2024 W2 | (scheduled profiles, modern search) |
| No.4 | 27.x – 2025 W2 | (optimized Flow Fields, SQL Statement in AL Profiles) |
| No.5 | 24.x – 2024 W1 | (improved Number Sequence) |
Dynamics 365 Business Central 2025 Wave 2 is not an Armageddon version, on the chart, but it has, again, some relevant goodies that automatically (like the optimized Flow Fields) or manually (like the ones in the development or application area) contribute to making the product perform better than its predecessors.
Tattoo well in mind that
“all of the features are CUMULATIVE, hence the latest version is always the fastest on the market“
(at least for 6 months, until the next wave comes).
Bottom line. “I have a dream”.
NOTE: this is just a dream. The one type that make you sweat in the night…
The Armageddon that I would love to see is to get rid of the $ext companion table and the platform fall back to write directly in the base table. Like it was in the hybrid versions and earlier.
I know, I know… You are laughing out loud…
Trust me, this will be placed, most probably, on top of the list of Armageddon versions. Just some reasons why it would so good, that are popping out of my mind:
- Faster Writes. Eliminate the need of always doing I/O (Insert, Delete, Update) in 2 tables instead of one.
- Faster Reads. Eliminate the needs of JOIN tables when there is a 3rd party (or even a 1st party) extension.
- Introduce the capability of composite keys from fields related to 1st party extension and custom apps.
- Reduced database storage. Fields composing the primary keys are redundant in $ext companion tables.
- Simpler execution plans. Less memory consumption and faster plan completion.
- Simpler queries. Less need of parallelism hence better resource governance.
- Reduced database metadata complexity. Due to the eliminating of $ext companion tables.
- Faster backups and restore. Due to eliminating of $ext companion tables.
- Faster Company handling. Due to eliminating of $ext companion tables.
Should I add more? 😉

[Note: All of this blog post is just my allucination. My own toughts. As usual.]

Leave a comment