In this article
You can now manually add additional levels to page breadcrumbs, enabling navigation to reports, systems, or pages outside of Studio. These “external levels” are added to the start of the breadcrumb in the order defined in CDL.
Improved truncation handling
Previously, long breadcrumbs could truncate levels in a way that made them inaccessible. This has been improved:
Truncation now starts at 7+ levels by default
The threshold is configurable via the UI
Hovering over the ellipsis now reveals hidden levels in a navigable dropdown
Sticky breadcrumb bar (enabled by default)
The breadcrumb bar now remains visible as users scroll, helping them maintain context within reports. This can be disabled via the UI if needed.
Improved behaviour on the first page of a report
To reduce confusion:
The current page is no longer shown in the breadcrumb on the first page
The current report is no longer clickable
This avoids “no action” clicks and improves clarity, especially for single-page reports.
This behaviour can be reverted via CDL if required.
PDF export updates
Page breadcrumbs are now hidden by default in PDF exports, as they add limited value in this format. This can be re-enabled via the UI if needed.
Localised report titles in breadcrumbs
The breadcrumb now uses the report Title instead of the report Name.
Supports language localisation
Better aligns with customer needs for multilingual reporting
Configured via CDL (using a valueSet approach rather than standard resource texts)
Key Benefits
External levels support cross-system navigation (particularly valuable in healthcare scenarios)
Improved truncation ensures all breadcrumb levels remain accessible
Updated first-page behaviour reduces confusion and improves usability
Cleaner PDF exports enhance presentation quality
Localised titles strengthen multilingual support in Studio
External levels added to breadcrumb
Improved truncation handling
First-page behaviour (non-clickable report, page hidden)
New report settings controlling these features
CDL Examples
Adding additional levels
config navigation #navigation1 {
//A page in another reportexternalLevel #otherReport1 {
label: "Different Report"
navigateTo: link document {
documentId: 104312
page: "page_42"
navigateOptions: "new_tab"
}
}
//External web page
externalLevel #externalUrlNewTab {
label: "Amazon"
navigateTo: link url {
page: "Amazon.com. Spend less. Smile more. "
}
navigateOptions: same_tab
}
//Internal page
externalLevel #internalPage {
label: "Simple"
navigateTo: "simpleSection"
// navigateOptions: new_tab
}
}
New CDL properties that can be used to revert new default behaviour
//stickyBreadcrumbBar: false
//pageBreadcrumbFirstPage: true
//hideInExport: false
Example of translating report title
Report title does not directly support resource texts, so a slight workaround is available to add language localisation here using valueSet, which itself refers to resources e.g.
//Report Title
title @title.head.value
//Resource Texts Example
resources {
resource texts #en { // English translations
title: "English Report"
}
resource texts #fr { // French translations
title: "Français Report"
}
}
//valueSet example
valueSet #title {
item #head {
label: "header"
value: __getText(title)
}
}