/reports where users browse, select, run, and download organization reports and platform-provided report templates.
Overview
The Reports page presents a two-panel interface: a left panel for browsing and selecting reports (viaReportLibrary for organization reports and platform templates), and a right panel for configuring parameters and viewing results (ReportParameters, ReportViewer). A history panel (ReportHistory) shows prior executions. The active report definition is fetched via useReportDefinition; execution is triggered via useReportExecution. The breadcrumb label updates to the selected report’s name.
Who it’s for
Access follows your organization’s role and module configuration.Before you start
- You must be signed in to the platform.
- At least one report or template must exist. Use
/reports/builderto create a custom report.
Steps
- Navigate to
/reports. - Browse the report library on the left and select a report or platform template.
- Configure any required parameters in the parameters panel.
- Select an export format if applicable.
- Click Run to execute the report.
- Review results in the viewer. Prior executions appear in the history panel.
Key concepts
Platform Template vs. Organization Report — Platform templates are provided by the system; organization reports are created via the Report Builder. The run source label indicates which type is active. Report execution — A report run is asynchronous; the viewer shows row count and execution time on completion.Creating a report
Users can create a new custom report at/reports/builder. The path /reports/new is not defined as a distinct route; report creation is handled at /reports/builder which renders ReportBuilder from src/platform/reports/ReportBuilder.tsx.
The Report Builder page provides a visual interface for composing custom reports. Users select one or more source tables via TableSelector, choose columns via ColumnSelector, define table joins via JoinBuilder, and add filter conditions via FilterBuilder. A SQLPreview component shows the resulting query. Reports have a name, description, and category (defaulting to custom). On save, useCreateReport() persists the report definition. Created reports are accessible from the reports list at /reports.
- Navigate to
/reports/builderor select New Report from the reports list at/reports. - Enter a report Name and optional Description.
- Select a Category.
- Add one or more source tables using the table selector.
- Choose columns to include using the column selector.
- Define joins between tables if needed.
- Add filter conditions to narrow the result set.
- Review the SQL preview.
- Save the report.
report_category enum value. The default is custom.
SQL preview — Shows the generated query for transparency and debugging. SME: confirm if this is visible to non-admin users.
Editing a report
The Edit Report page (/reports/:reportId/edit) allows users to modify the metadata and SQL query of an existing saved report definition.
No permission gate is on this route. The page loads the report definition via useReportDefinition using the :reportId parameter. Updates are applied via useUpdateReport. A draft state (draftOverrides) holds unsaved edits to name, description, category, and querySql before the user saves. useEntityBreadcrumb updates the breadcrumb with the report’s name.
- Navigate from the Reports page (
/reports) by opening a report and clicking its edit action. - The form pre-fills with the existing report’s data (name, description, category, SQL query).
- Update the report name, description, and category using the form fields.
- Modify the
querySqltextarea with the updated report query. - Click Save. On success, navigate back to the reports list.
Related
Platform Foundation
Platform Foundation overview.
Governance & parity
Documentation coverage and governance.
This page documents shipped product behavior. It is not medical, legal, or
billing advice. Verify against your organization’s policies and applicable
regulations before using it for clinical, compliance, or billing decisions.
Protected health information (PHI) shown in the product is governed by your
tenant’s access controls and is never exposed in this documentation.
Documentation sources
Documentation sources
- src/routes/platform.tsx
- src/platform/reports/ReportsPage.tsx
- src/platform/reports/ReportLibrary.tsx
- src/platform/reports/useReportDefinition.ts
- src/platform/reports/ReportBuilder.tsx
- src/platform/reports/EditReportPage.tsx
- src/platform/reports/useReportMutation.ts