top of page


if not IsEmpty() then DeleteAll()
My previous post on good and bad coding practices in terms of the performance touched upon one particularly contradictory coding pattern...
Nov 13, 2023
Â
Â
Â


Top 5 AL mistakes that undermine performance
This post is my shortlist of the most common beginners' mistakes in AL that affect application performance. These are not necessarily the...
Nov 10, 2023
Â
Â
Â


When partial records and indexes reach synergy
Continuing performance testing of queries on extended Business Central tables, today I want to look at the same dataset from a slightly...
Jul 13, 2023
Â
Â
Â


Who benefits from partial records: The true magic of SetLoadFields
Server-side perspective One of the key characteristics of the C/AL language and its more modern ancestor, AL, that makes it so attractive...
Jul 6, 2023
Â
Â
Â


Locking Scope: Differences between LockTable and ReadIsolation
Today, once again, I am returning to the topic of table locking, lock escalation, and the way Business Central interacts with SQL Server...
Jul 1, 2023
Â
Â
Â


Introduction to Business Central Caching - Part 2
The effects of SetLoadFields and AutoCalcFields on caching This post continues the topic of query caching in Business Central which I...
Jun 29, 2023
Â
Â
Â


Test assertions on DateTime values
Recently, I was running a large test suite to verify my changes in the Base Application item journal posting functionality. Changes were...
Jun 12, 2023
Â
Â
Â


ReadCommitted isolation in Azure SQL
In my previous post Transaction Isolation in Business Central, I introduced a rather long and detailed review of transaction isolation...
Mar 21, 2023
Â
Â
Â


Transaction isolation in Business Central
Business Central 22 introduces a new table property ReadIsolation which allows the developers to control transaction isolation in a more...
Mar 20, 2023
Â
Â
Â


Conflicting updates in concurrent Business Central sessions
After my previous posts on lock escalation, it feels like a good time to take a step to a more practical plane and investigate some real...
Mar 6, 2023
Â
Â
Â


AL updates and locking, Part II - Optimized locking in Azure SQL
In my previous post AL updates and locking, I gave a high-level introduction into the SQL Server locking model. That post was inspired by...
Feb 23, 2023
Â
Â
Â


AL updates and locking, Part I - Introduction to lock escalation
Recently Microsoft announced significant changes in the SQL Server locking architecture which can dramatically reduce the number of lock...
Feb 19, 2023
Â
Â
Â


How come the size of my Sales & Receivables Setup table is 16KB?
And Bank Account Ledger Entry is non-integer? What's behind Business Central table information Have you ever asked yourself, looking at...
Feb 13, 2023
Â
Â
Â
bottom of page

