Skip to content

BC v29: Finishes a Property Microsoft Has Been Building Since 2024

Infographic about Microsoft Dynamics 365 Business Central v29, highlighting new tooltip features and improvements.

Tooltips in Business Central have expanded in small, deliberate steps for several releases now. Version 24 brought the ToolTip and ToolTipML properties to table fields, letting a tooltip defined once on a field automatically apply everywhere that field appears on a page, instead of requiring the same text redefined on every control referencing it. Version 25 extended the same properties to query columns. Each step closed a specific gap without touching the object level itself.

Version 29 closes the gap that was left standing the longest: ToolTip and ToolTipML can now be set directly on the page object.

A Small Property with a Non-Obvious Behavior

On the surface, this reads as simple consistency pages joining tables and queries in supporting a property those other object types already had. The actual behavior is more interesting than that framing suggests, because it isn’t only about a tooltip appearing when a user hovers over something on the page itself.

When a navigation action’s Run Object points to a page, and that page has a ToolTip or ToolTipML set, the action automatically inherits the page’s tooltip if the action itself doesn’t specify one directly. That’s a real piece of functional behavior, not just a documentation nicety it means defining a tooltip once, at the page level, can now propagate outward to every action across the application that navigates to that page, provided none of those actions already override it with their own tooltip text.

page 50100 MyPage
{
ToolTip = 'Opens the My Page page.';
// ...
}

Why This Actually Matters for Consistency at Scale

Anyone who has tried to keep tooltip text consistent across a large Business Central solution knows the actual failure mode isn’t writing a bad tooltip. It’s writing a good one in one place and forgetting to replicate it everywhere else the same destination is reachable from. A page like a customer card or an item list is often the RunObject for navigation actions scattered across role centers, related lists, and other pages throughout an application. Historically, keeping the tooltip consistent across every one of those entry points meant manually setting matching text on every single action, with no structural mechanism preventing drift between them.

Page-level ToolTip removes that maintenance burden by construction. Define the tooltip once, on the page the actions actually navigate to, and every action pointing there inherits it automatically unless it deliberately overrides it. Consistency stops depending on a developer remembering to copy the same string everywhere and starts being the default behavior unless someone opts out of it for a specific action.

Two Constraints Worth Knowing Before You Use It

This isn’t unconstrained, and both limits are worth testing directly rather than discovering through a compile error mid-project. ToolTip and ToolTipML cannot be specified together on the same object — the compiler enforces this directly with error AL0428, and the guidance is to use only ToolTip. The property also isn’t available on older runtime versions; targeting runtime 17.0 or earlier triggers error AL0666, since ToolTip support requires runtime 18.0 or later.

Neither constraint is a real obstacle for a modern AL project, but they’re the kind of thing worth confirming against your actual app.json runtime setting before assuming the property is simply available everywhere.

Finally

Three releases to get a single property from table fields to query columns to the page object itself is a slow rollout by most standards, and I don’t think that’s a criticism it reflects Microsoft extending a UX consistency mechanism deliberately, one object type at a time, rather than shipping it everywhere at once and discovering edge cases in production.

What makes this release’s version worth actually adopting, rather than filing away as a minor consistency feature, is the action-inheritance behavior specifically. A tooltip that propagates automatically to every navigation action pointing at a page turns a maintenance burden that scaled with the number of entry points into a single definition that scales with none of them. That’s a genuinely useful property for anyone maintaining a Business Central solution with more than a handful of pages and actions to keep consistent.

Amol Salvi originally posted this article on 21 September 2026 at 11:23 AM.

Leave a Reply