In this video, I explain how to add your own headlines to Dynamics 365 Business Central.
In this video, Erik demonstrates how to add your own custom headlines to Business Central role centers. While the official documentation and blog posts can make this seem complicated due to caching requirements, Erik shows that if your headline data is simple to retrieve, you can accomplish it in remarkably few lines of code.
What Are Headlines?
When you open a Business Central role center, you’ll see a rotating set of headlines at the top — things like “Good morning,” “Your top customer was…,” and various insights. These are the headline controls, and you can add your own to any role center through a page extension.
Understanding the Headline Architecture
Each role center has its own dedicated headline page part. To find out which one you’re working with, you can use the Page Inspector (Alt+Ctrl+F1) on the headline area. For example, the Business Manager role center uses “Headline RC Business Manager” (page 1440).
You might notice that only two controls appear in the base page definition, yet the role center shows five or six headlines. The additional headlines come from extensions — for instance, the “Essential Business Headlines” extension adds the insight headlines like “Insight from last week” and “Insight from last month.”
Creating Your Own Headline
The implementation is straightforward. Create a page extension that extends the headline page part for your target role center, add a field, and populate it with text:
pageextension 50500 "Our own headline" extends "Headline RC Business Manager"
{
layout
{
addbefore(Control1)
{
field(HeadlineTxt; HeadlineTxt)
{
ApplicationArea = All;
trigger OnDrillDown()
begin
Hyperlink('https://www.hougaard.com');
end;
}
}
}
trigger OnOpenPage()
begin
HeadlineTxt := 'Hello User! from youtube';
end;
var
HeadlineTxt: Text;
}
Let’s break down the key elements of this extension:
Placement
Using addbefore(Control1) places your headline before the existing ones. You could also use addafter if you want your headline to appear later in the rotation.
Setting the Text
The headline text is set in the OnOpenPage trigger. In this simple example, we’re just assigning a static string. In a real-world scenario, you could pull data from a table or perform a quick calculation here.
Adding a Drill-Down Link
The existing headlines are clickable — they navigate you to relevant pages. You can add the same behavior using the OnDrillDown trigger. In this example, clicking the headline opens a URL via Hyperlink, but you could just as easily open a Business Central page using Page.Run.
Emphasizing Text
One neat trick is the ability to emphasize portions of your headline text. You do this by embedding <emphasize> tags directly inside your string:
HeadlineTxt := 'Hello User! from youtube';
This renders the word “User!” in a bolder or highlighted style within the headline, while the rest remains in the normal headline font. Note that the emphasis is purely visual — the entire headline remains a single clickable link.
When to Consider Caching
Microsoft designed the headline system with performance in mind. Role centers should load quickly, so expensive operations need to be cached. But when should you worry about caching?
Erik provides a helpful rule of thumb by looking at existing examples:
- No caching needed: The “Favorite Account” headline grabs about five records from the database and calculates five FlowFields. This level of work is fine without caching.
- Caching recommended: The “Trial Balance” headline performs a heavier calculation and is cached — recalculated roughly every 10 minutes with results stored in a cache table.
Use these two examples as your benchmark. If your headline’s data retrieval is comparable to the first case, you’re fine doing it directly. If it’s closer to the second, invest the time to implement proper caching. There are plenty of blog posts and documentation available that explain the caching pattern in detail.
Extending Multiple Role Centers
One important thing to remember: each role center has its own headline page part. The example above only extends the Business Manager role center. If you want your headline to appear across all role centers, you’ll need to create a separate page extension for each headline part (e.g., “Headline RC Accountant,” “Headline RC Order Processor,” etc.).
Summary
Adding custom headlines to Business Central role centers doesn’t have to be complicated. For simple, lightweight data, you can create a headline in under 20 lines of AL code. The key steps are: identify the correct headline page part for your role center using the Page Inspector, create a page extension with a text field, populate the text in OnOpenPage, optionally add drill-down behavior, and use <emphasize> tags to highlight key portions of your message. Only invest in caching infrastructure when your headline requires processor-intensive calculations.