Today I have released a new version of both the ALRM (AL ID Range Manager) extension for Visual Studio Code and Microsoft Business Central. If you do not know what ALRM is, check some of previous articles here on my blog.
Both extensions are available on my GitHub (link below). The new version of VS Code extension is also available for download on Visual Studio Code Marketplace and directly in VS Code extensions.
What are the most interesting changes?
New command: “ALRM: Synchronize (beta)”
ALRM: Synchronize is a new command that scans all AL files in the project and registries founded AL objects (and fields/values for table and enum extensions). Using this command, it is much easier (and definitely quicker) to start using ALRM for your existing projects. You can just open your project, run ALRM: Initialize and then ALRM: Synchronize. Once both these commands finish, you can work with your project as if it is a project managed by ALRM since the beginning.
The project you are synchronising must meet all defined rules on the corresponding Assignable Range (object ID range, field ID range, object name structure and object ID and name uniqueness). If there is any error, other objects are synchronised, and errors are shown to the user once the synchronisation ends.
New option for Assignable Ranges: “Fill Object ID Gaps”
The Business Central extension generates new IDs using incrementation of the last assigned ID. However, sometimes, you need to use all IDs within the range, even if it was already used (but is not in use anymore). For these cases, there is a new option on Assignable Range “Fill Object ID Gaps” that check whether there are some gaps in used ranges and reassign the IDs to the newly created objects.
This setting can be potentially slower than assigning the following ID from the range; however, the performance is not much different based on my tests.
Ready for the Business Central 2021 W1
With the upcoming major version (Business Central 2021w1), there are new object types ReportExtension, PermissionSet, PermissionSetExtension and Entitlement. Both VS Code extension and the Business Central extensions are now ready for these object types.
There are much more interesting news and changes to the VS Code extension and Business Central that are described directly on GitHub! Do you have a new idea for improvement? Have you found a bug? Feel free to send me an Issue in GitHub repos.