videoAL Developmentcommunity - not Microsoftreviewed - checked by Opus

Business Central 29 0 Default Implementations in AL Interfaces

Default implementations for AL interfaces in Business Central 29, covered while 29 was in public preview. Shows method bodies in interfaces, the required pending attribute, and a staged way to add interface methods without breaking existing implementations.

  1. 0:00 Introduction to the problem with evolving AL interfaces
  2. 1:19 The problem with interface evolution and breaking changes
  3. 4:14 Overview of default implementation feature in version 29
  4. 5:22 How default implementation works in AL interfaces
  5. 7:23 Custom implementations and fallback to default behavior
  6. 8:52 Introduction to required pending attribute
  7. 10:24 Implementing required pending with examples and warnings
  8. 12:52 Use cases and best practices for default implementation
  9. 14:48 Key takeaways and current status
  10. 15:43 Closing remarks and call to action
video Saurav Dhyani · 2026-09-21Watch on YouTube

Overview

The video explains why adding a method to an AL interface changes the interface contract and breaks every existing implementation, in the same extension or in dependent extensions. It then shows how Business Central 29 addresses this by allowing default method bodies in interfaces, so existing implementations keep working.

It also demonstrates the required pending attribute, which signals that implementations should eventually provide their own method. The attribute takes a version deadline, a tag and a reason. The video closes with use cases and best practices, and notes that Business Central 29 was in public preview at the time, so final behavior should be validated once GA is announced.

Key points

  • Adding a method to an AL interface changes its contract and breaks existing implementations, including those in dependent extensions.
  • In Business Central 29, interface methods can have default method bodies, so existing implementations continue to work unchanged.
  • Implementations can supply their own version of the method, otherwise the default behavior is used.
  • The required pending attribute marks a method that implementations should eventually implement. It takes a reason (in the demo stating the method must be implemented before version 32) and a tag (29.0), and implementations that lack the method get a compiler warning.
  • Staged evolution: introduce the method with a default implementation, provide default behavior, then signal the future requirement with required pending.
  • Use a default only when a sensible fallback exists, not to hide a requirement. Treat it as a migration mechanism, not a permanent solution.
  • Business Central 29 was in public preview when the video was made, so validate the final behavior at GA.

Features

Feature Status At Evidence
Default implementation for AL interfaces generally available (roadmap Evolve AL interfaces with default implementations), demoed 4:14 “Business Central 29 is currently in public preview. So you might you make sure to validate the final behavior” (15:43)
Required pending attribute for AL interface methods generally available (roadmap Evolve AL interfaces with default implementations), demoed 8:52 “Business Central 29 is currently in public preview. So you might you make sure to validate the final behavior” (15:43)

A status with a roadmap link comes from the Microsoft 365 roadmap feature this part of the video covers (matched by Haiku; links Opus dropped are not used); other statuses need a status word in the video itself.

Quotes

  • 0:12 “with business 29.0 O introduces a new approach which is called as default implementation for AL interface”
  • 3:33 “The problem is that the new method changes the contract of the interface and every existing implementation either in your extension or any dependent”
  • 4:26 “allowing developer to add default method bodies to interface so that existing implementation can continue working as is”
  • 9:24 “The idea is to introduce a method is completely way first while signaling that implementation are expected to eventually provide the method themsel”
  • 12:01 “saying calculate discount will become will become required. This method will be required to be implemented before version 32.0”

Disclaimers in the video

  • 15:43 preview: Business Central 29 is currently in public preview. So you might you make sure to validate the final behavior once the GA is announced.

Presenters (as heard): Sar Dhani.