First Look: Exciting New Development Features in Microsoft Dynamics Business Central 2024 Release Wave 2 (v25)
Microsoft Dynamics Business Central continues to evolve, and the upcoming 2024 Release Wave 2 (v25) is packed with new development features aimed at enhancing the productivity and capabilities of developers working within the ecosystem. Last week we looked at new application features. This first look dives into some of the most noteworthy development updates, providing insights into how these new features can streamline your development processes and improve the functionality of your custom solutions. For a comprehensive overview, check out the full release plan here.
This version seems to have a focus on extending the Interfaces in Business Central, so let's delve into that first:
Extend AL Interfaces
The ability to extend AL interfaces is a major enhancement in this release. This feature allows developers to build more modular and reusable code by defining interfaces that can be extended in other extensions. It promotes better abstraction and decoupling of code, making your extensions more maintainable and easier to upgrade. The following code snippet will give you an idea of how this will work.
Learn more about extending AL interfaces here.
Type Testing and Casting Operators for Interfaces
This feature introduces new type testing and casting operators for interfaces, allowing developers to write more robust and type-safe code. It enhances the ability to work with interfaces, making it easier to test and cast types within your AL code.
The IS operator
The is operator allows you to test whether an instance of an interface, or the content of a variant supports a specific interface.
You can also use the is operator with variants:
The AS operator
The as operator is used for casting an instance of an interface to a specific interface. If the source interface doesn't implement the target interface, it will throw an error at runtime.
Similarly, the as keyword works with variants:
Find out more about type testing and casting here.
Extend and Customize Profiles from Other Extensions
This new capability allows developers to extend and customize profiles that are defined in other extensions. It provides greater flexibility in tailoring the user experience by modifying existing profiles without the need to duplicate code or create new profiles from scratch. This feature enhances the adaptability of Business Central to meet specific business requirements. See a small code snippet below showing how you can extend a Profile.
Read more about extending and customizing profiles here.
Package Resources in Extensions and Access from AL
Developers can now package resources such as images, scripts, and other files within their extensions and access these resources directly from AL code. This feature simplifies the management of extension assets and ensures that all necessary resources are bundled together, reducing the complexity of deployment and maintenance.
Find out more about packaging resources in extensions here.
Pull Extension Source from GitHub When Opening Visual Studio Code from the Web Client
This integration enables developers to pull the source code of extensions directly from GitHub when opening Visual Studio Code from the Business Central web client. It streamlines the development workflow by allowing seamless access to version-controlled code, facilitating collaboration and ensuring that the latest codebase is always at hand.
领英推荐
Explore this feature in detail here.
Restore Extensions if Publishing from Visual Studio Code Fails
In scenarios where publishing an extension from Visual Studio Code fails, this new feature provides the ability to restore the previous version of the extension. It helps maintain system stability and reduces downtime by quickly reverting to a known good state, ensuring that development issues do not disrupt ongoing business operations.
Learn more about restoring extensions here.
Run Code Action for 'with' for File, Project, or Workspace
The new code action feature allows developers to apply the 'with' statement across files, projects, or entire workspaces. This can significantly speed up the development process by automating repetitive tasks and ensuring consistent code formatting and structure across your codebase.
Discover more about running code actions here.
Set Up Easier In-Client Performance Profiling with Rules
Performance profiling within the client has been made easier with the introduction of profiling rules. Developers can now set up and manage performance profiling directly from the client, allowing for more accurate and efficient identification of performance bottlenecks and optimization opportunities.
Read more about performance profiling here.
Improved Features for Report Documents
Business Central now includes improved features for working with report documents. These enhancements allow for more flexible and powerful report generation, catering to complex reporting needs and providing better insights through customized report layouts and data presentation.
The following improvements are available for the Word layout feature:
Learn more about report document improvements here.
Use the Ternary Operator When Coding in the AL Language
The introduction of the ternary operator in AL language is a significant addition, enabling more concise and readable conditional expressions. This operator allows developers to write more streamlined and efficient code, improving overall code quality.
Discover how to use the ternary operator here.
Use the 'this' Keyword for Codeunit Self-Reference
The 'this' keyword is now available for self-referencing within codeunits. This enhancement simplifies the coding process by providing a straightforward way to reference the current instance of a codeunit, making the code more intuitive and easier to manage.
Read more about the 'this' keyword here.
Conclusion
The Microsoft Dynamics Business Central 2024 Release Wave 2 (v25) brings a host of new development features designed to enhance the efficiency, flexibility, and power of your development efforts. Whether it's extending AL interfaces, streamlining performance profiling, or utilizing new coding enhancements, this release has something for every developer.
Stay tuned for more detailed explorations of these features as we approach the official release date. For a complete overview of all the upcoming features, check out the full release plan here.