Dashboards

Dashboard Architecture

Dashboards are OneStream's presentation layer — the UI that end users interact with daily. Before building your first dashboard, you need to understand how the platform organizes dashboard objects. This guide covers the structural hierarchy from Workspaces down to individual components, the layout system, and how dashboards reach end users through Profiles.

Object Hierarchy

Every dashboard object lives within a structured hierarchy. Understanding this hierarchy is essential because it determines how objects are shared, secured, and organized.
diagramDashboard Object Hierarchy

Loading diagram...

Maintenance Units

A Maintenance Unit is the primary container for dashboard objects. It holds Parameters, Data Adapters, Components, Files, and Strings — and these objects are shared across all Dashboard Groups within the same Maintenance Unit.
Key characteristics:
  • Shared objects — A Parameter or Data Adapter defined in a Maintenance Unit is available to every dashboard in every Dashboard Group within that unit. You do not need to duplicate objects across groups.
  • Security boundary — Maintenance Units have their own AccessGroup and MaintenanceGroup properties. Objects inside inherit these security settings.
  • Sizing guidance — Use multiple Maintenance Units to keep each one a manageable size. This makes it easier to organize objects and control access.
💡Tip
Parameters can be used across all dashboards regardless of Maintenance Unit boundaries. Security has no bearing on the use of Parameters — any dashboard can reference any parameter by name.

Dashboard Groups

Dashboard Groups are logical containers that organize dashboards within a Maintenance Unit. Their primary purpose is to group related dashboards together so they can be assigned to Profiles as a unit.
  • Each Dashboard Group has an AccessGroup property controlling who can see the dashboards in that group
  • A single Maintenance Unit can contain multiple Dashboard Groups
  • Keep groups small and focused — this gives you flexibility when assigning groups to different Profiles

Dashboard Profiles

Dashboard Profiles are how dashboards reach end users. A Profile is assigned one or more Dashboard Groups, and users see the dashboards from the groups in their assigned Profiles.
diagramProfile to Dashboard Assignment

Loading diagram...

Profile Security

Each Profile has two security properties:
PropertyPurpose
AccessGroupUsers must belong to this group to see the Profile and its dashboards
MaintenanceGroupUsers must belong to this group to modify the Profile's settings and group assignments

Profile Visibility

When assigning a Dashboard Group to a Profile, you set a Visibility option that controls where the dashboards appear:
VisibilityBehavior
NeverDashboard Group is not visible in this Profile (useful for expired or retired dashboards)
AlwaysDashboard Group is available in both OnePlace and Workflow
OnePlaceDashboard Group is visible in the Dashboards section under the OnePlace tab only
WorkflowDashboard Group is available when attached to a Workflow Profile via Integration and Data Quality Settings
⚠️Warning
Both Profile access and Dashboard Group access must be granted for a user to see a dashboard. If a user has access to the Profile but not a specific Dashboard Group within it, those dashboards will not appear. Conversely, if they have access to the Dashboard Group but not the Profile, they will not see the dashboards in OnePlace.

Dashboard Types

Each dashboard within a group has a Type property that determines how it behaves. The type controls whether a dashboard is visible to users directly, whether it is embedded inside another dashboard, and whether it supports dynamic template parameters.
TypeDescription
TopLevelVisible to users in OnePlace and Workflows. This is the standard dashboard type that users interact with directly.
TopLevelWithoutParameterPromptsSame as TopLevel but skips runtime parameter prompts. Provides a slight performance improvement when the dashboard does not require user input.
EmbeddedNot visible in OnePlace — used as a child dashboard embedded inside another dashboard. Dependent on parent dashboard objects.
EmbeddedDynamicAn embedded dashboard whose properties, components, adapters, and parameters can be dynamically modified at runtime via template parameters.
EmbeddedDynamicRepeaterAn embedded dashboard that produces multiple instances of the same component with varying template parameter values. Used for repeating layouts like monthly comparisons.
EmbeddedTopLevelAn embedded dashboard with its own parameter resolution and rendering stages. Supports LoadDashboard server tasks even when embedded.

Embedded Dashboard Nesting

Embedded dashboards allow you to compose complex layouts from reusable pieces. A TopLevel dashboard can embed one or more child dashboards, and those children can embed further children.
diagramEmbedded Dashboard Nesting

Loading diagram...

Parameters defined at the Maintenance Unit level are shared across the parent and all embedded dashboards. This means a ComboBox in an embedded filter dashboard can write to a parameter that a CubeView in a separate embedded content dashboard reads — enabling clean separation of filter controls from data display.

Layout Types

Every dashboard has a LayoutType property that determines how its child components are arranged. The layout type controls the spatial organization of components within the dashboard canvas.
Layout TypeDescription
GridComponents are placed in rows and columns with explicit row/column assignments. Most common layout for structured reports.
DockComponents dock to edges (Top, Bottom, Left, Right) or fill the remaining space. Good for toolbars and panels.
TabsComponents are organized into tabbed views — only one tab is visible at a time.
VerticalStackPanelComponents stack vertically from top to bottom in order. Simple linear layouts.
HorizontalStackPanelComponents stack horizontally from left to right in order.
UniformAll components are sized equally in a uniform grid.
CanvasComponents are positioned using absolute X/Y coordinates. Full control over placement.
WrapComponents flow left-to-right and wrap to the next line when the row is full.
💡Tip
Grid is the most versatile and commonly used layout type. It supports row/column spanning, proportional sizing (* notation), and fixed pixel widths — giving you precise control over the dashboard structure. Start with Grid unless you have a specific reason to use another layout.
  • What is OneStream — The Seven Engines overview, including the Presentation engine that powers dashboards
  • The OneStream Data Model — Workspace architecture and how cubes provide the data that dashboards display
  • Parameters and Syntax — Parameter types and the syntax used to reference parameters in dashboard components
  • Workflow Security — How AccessGroup, WorkflowExecutionGroup, and other security groups control workflow access