The new release of Microsoft Dynamics 365 Business Central is out. In this post, you will learn 3 of the most important improvements in Business Central 2023 wave 2 (v23). This new release comes with brand-new features you don’t want to miss out on!
- SQL Table Extension Structure
- Rich Text Content
Get the full information of the release plan here:
SQL Table Extension Structure
Microsoft introduced a new table structure to improve performance in Business Central. Before the release, every table extension for a specific table created a new table in SQL by itself. Now, all table extensions will live in the same table. Resulting in 2 tables in total, 1 for the base table and 1 for the rest of table extensions.
The result is that the performance for writing, reading, and deleting records will be much better.
In this chart provided by Microsoft, you can see the read performance by number of table extensions. In BC23 the number of table extensions increases the reading time very slowly, while in BC22 the time spent in the same operation takes much more time.
But, how much better? Actually, a lot! Very good posts have been created already testing the new feature from these Business Central MVPs with real numbers.
Check Stefano’s post where he measures the performance impact of this change.
Waldo’s version using partial records.
Duilio’s detailed operations in SQL.
Yun’s very graphic explanation of the change.
As you can see, this has been one of the biggest and most popular updates from this release.
You can find the Microsoft release note here.
New Rich Text Content
For some time, the rich text content has been available for standard emails. But developers couldn’t use it outside of it.
If you are interested, I show you how to use it for sending emails in this article.
So, how can you start using it now that it has been released for everyone?
It’s simple, you just have to specify the following properties in a page field.
- Multiline = true
- ExtendedDataType = RichContent
But, we can’t use it in a Blob or text field of a table. The following error message will appear:
“The data type on the ‘Rich Text Content’ control is not valid for this ExtendedDataType value. Valid data types are BigText and Text without max size”.
This means that we are forced to use a variable instead. As the message reads, a BigText or Text variable. Also, make sure to include it in a group by itself or the rich content won’t be displayed.
This is what it looks like:
But, as you may have noticed, we are working with a variable, so we need to handle how to save the value. We will use a Blob field for this:
And with the help of InStreams and OutStreams, we save and retrieve the value from the Blob.
If you want to learn more about InStreams and OutStreams make sure to check the following post:
More information on this feature in Microsoft’s release note.
A brand new feature for AL developers is out. This feature is already in other programming languages but we did not have it until now.
As you know, at the moment we use affixes for naming Business Central objects, like tables, pages, codeunits, etc, to prevent naming conflicts between them. The main benefit of this new feature is that we can start using it instead and avoid the naming conflict in an easier way. Also, we can organize objects better.
Microsoft is already using namespaces to group standard modules. For example, sales tables related to customers are classified with Microsoft.Sales.Customer namespace.
As you can see in the new customer table, the keyword “namespace” at the top defines the classification. And you can point to a namespace by using the keyword “using”.
For example, using Microsoft.Bank.BankAccount will give you access to all variables and methods declared in all objects with this namespace.
By using this feature, we can have objects with the same name but with different namespaces. As you can see, the intelisense will give you all the options available. You can either use the standard table, or your custom one.
We can’t do this, of course, without namespaces.
Find all the information in Microsoft release note
There are many new features in this update. Don’t forget to check out the Microsoft documentation for more details!
That´s all. Hope you find it helpful.