Skip to content

Navbar

A *.navbar.xml file defines the navigation tree — the left rail and its nested items. It is migrated by the runtime into the navigation store.

<Navbar>
<Module Name="sales" Label="Sales" Icon="fa fa-cart-shopping" Route="/table/Sale">
<Section Label="Master Data">
<Item Name="customers" Label="Customers" Icon="fa fa-users" Route="/table/Customer">
<CountsBadge Color="warning">SELECT COUNT(*) FROM Sales.Customers WHERE IsActive = 0</CountsBadge>
</Item>
<Item Name="catalogue" Label="Catalogue" Icon="fa fa-box">
<Item Name="products" Label="Products" Route="/table/Product" /> <!-- nested -->
</Item>
</Section>
<Divider />
</Module>
<Module Name="admin" Label="Admin" Icon="fa fa-gear" VisibleIf="User.IsInRole('Admin')"></Module>
<Module Name="docs" Label="Docs" Icon="fa fa-book" Route="https://…" Target="_blank" />
</Navbar>
Element Role
<Module> a top-level rail entry (may also be a link; holds children)
<Section> a non-clickable grouping heading (auto-named)
<Divider> a separator (leaf)
<Item> a navigable link; may nest child <Item>s

Attributes: Name (required for Module/Item), Icon, Label, Route, Target, VisibleIf (server-evaluated visibility expression). Badges (on <Item> only): <CountsBadge> (numeric) or <BulletsBadge> (indicator) with a scalar SELECT body and a Color; the first badge wins. Worked example: sample/Inventory/models/navbar/inventory.navbar.xml.

An item’s Name is also what a view’s <ParentView> maps to for its breadcrumb root.