Skip to main content

Report Builder

Route: /org/tasks/reports · Permission: Open the report builder (view) / Manage saved reports Module: task_report_builder · Menu: Task Reports (under Task Management)


1. What the Report Builder is​

A drag-and-drop report designer over the selected project's task data. You choose the dataset (Tasks, Milestones or Time Logs), drag fields into Rows, Columns, Measures and Filters, press Run, and read the result as a pivot table or a chart. Any number in the result is clickable — it opens the tasks behind it. Reports can be saved for reuse, privately or shared with the project.

Report BuilderTask Analytics
Questions it answersThe ones you composeA fixed set of charts
PeriodAny date filter you addOne month at a time
GroupingYour choice of dimensions (up to 3 + a pivot column)Fixed
SavedYes — private or project-sharedNo
Drill-downEvery number → its tasksSelected charts
Project-scoped

The builder reports on the currently selected project only. With no project selected, the page asks you to pick one.


2. How a report is put together​

  • Rows are the grouping — Status, Assignee, a date with a day/week/month/quarter grain…
  • Columns (optional) pivot one more dimension across the top — Status × Priority.
  • Measures are what gets counted or summed: Count of tasks, Sum/Average of estimated, actual or remaining hours, Average progress; on Time Logs, hours logged; on Milestones, task rollups.
  • Filters narrow the input — pickers offer the project's own statuses, priorities, types, members, milestones and categories.
Status, priority and type belong to the project

These labels come from the project's own task configuration, so the same report run in two projects groups by two different vocabularies. A saved report is saved in a project for exactly this reason.


3. Building and running a report — step by step​

Step 1 · Pick the dataset​

The segmented control at the top switches between Tasks, Milestones and Time Logs. Switching clears the canvas (the page asks first) because fields belong to a dataset.

Step 2 · Drag fields into the zones​

The left palette lists every field, grouped into Dimensions, Measures and Filter-only, with a search box. Drag a field onto a zone — or use the + button on the field for a click-to-add menu. Chips can be dragged between zones and reordered; × removes one.

Clicking a chip opens its inline editor:

ChipEditor
Date dimensionGrouping grain — Day, Week, Month, Quarter
MeasureAggregation (Count, Distinct count, Sum, Average, Min, Max) + optional custom label
FilterOperator + value — pickers, date pickers, numbers or text depending on the field

Step 3 · Run​

Run executes the report (row limit selectable, capped at 5,000 groups). A half-filled filter is simply not applied yet — it never blocks the run.

Step 4 · Read the result​

  • Table — the pivot. With two or more row dimensions the table becomes hierarchical: rows group under the first dimension with expand/collapse and a subtotal row per group (Expand all / Collapse all at the bottom). A totals row closes the table.
  • Chart — bar (stacked when there is a pivot column or a second row dimension), line, or pie. Pies collapse beyond 11 slices into Other; legends hide beyond 12 series to stay readable.

Step 5 · Drill down​

Click any number — a table cell, a group subtotal — and a drawer opens with the underlying tasks: key, title, status, priority, type, assignee, milestone, due date, hours, progress. The key and title link to the task in Task Management, in a new tab. A subtotal drills on the group alone; a cell drills on the full combination.

Step 6 · Save, share, reuse​

  • Save stores the report privately in this project; the Share with project toggle makes it visible (read-only) to everyone with report access. Only the owner can edit or delete it.
  • The Saved reports dropdown lists yours plus shared ones (lock = private, people = shared, with the owner's name). Save as copies a shared report into your own.
  • Templates offers ready-made starting points — Tasks by Status × Priority, Workload by Assignee, Overdue by Assignee, Hours Logged per Member, Milestone Health…
  • Templates are also linkable: /org/tasks/reports?template=<key> opens the builder with that template loaded and already run — the Open in Report Builder buttons on the fixed Task and Timesheet analytics pages use exactly this.

Step 7 · Export​

  • CSV downloads the result rows with readable headers.
  • PDF opens the browser's print dialog on a print-clean view of the result.

4. Field reference​

Datasets and their fields​

DatasetDimensionsMeasuresNotable filters
TasksStatus, Priority, Task Type, Assignee, Created By, Milestone, Category, Parent Task, Billable, Overdue, Due/Start/Created/Completed date (with grain), Task KeyCount of tasks, Sum/Avg/Min/Max of Estimated · Actual · Remaining hours, Avg Progress %Title contains, Tags (has any of / has tags / has no tags), any dimension
Time LogsLogged By, Logged At (grain), Task, plus the task's Status / Priority / Type / Assignee / Milestone / Category / BillableSum/Avg of Hours or Minutes, Count of logsDescription contains, task filters
MilestonesTitle, Type (Phase/Sprint/Milestone), Status, Start/End/Created date, Overdue, Created ByCount of milestones, Sum/Avg of Task Count · Tasks Completed · Task Estimated HoursAny dimension

Where filter values come from​

FieldValues offered
Status / Priority / Task TypeThe project's task configuration
Assignee / Created By / Logged ByThe project's members
MilestoneThe project's milestones
CategoryThe project's task categories
DatesDate pickers (single, or two for between)

5. The admin contract​

PrerequisiteWithout it
Open the report builder permissionNo access to the page
Task Reports menu permissionNo sidebar entry
Manage saved reports permissionRun and export only — no Save / Share / Delete
A selected projectThe page asks you to pick one
Statuses/priorities/types configuredDimension labels fall back to (none)
Estimated/actual hours capturedHour measures read zero
Time logs recordedThe Time Logs dataset is empty

6. Downstream​

Read-only over task data. The only thing a report writes is its own saved definition. CSV and PDF exports leave the app; shared reports are also readable (and runnable) through the Orbit public API (developers.<your-domain> — Orbit Ops → Reports) with a key carrying the report read scope. Private reports are never exposed there.


7. Don't confuse this with…​

ScreenRouteShows
Report Builder (this page)/org/tasks/reportsReports you compose, saved and shared
Task Analytics/org/analytics/tasksA fixed monthly dashboard
Timesheet Analytics/org/analytics/timesheetsSubmitted timesheets, approval-centric
Table view on the boardTasks tableIndividual tasks, editable
TimelinesTimelinesSchedule health

8. Troubleshooting​

SymptomCause
Run is disabledA report needs at least one row/column dimension and one measure
A dimension shows (none)Tasks without that value (no milestone, no category, unassigned) group under (none)
(truncated at limit — refine filters)More groups than the row limit — add filters or raise the limit (max 5,000)
A filter seems ignoredIt has no value yet — half-filled filters are skipped, not applied
A saved report is read-onlyIt is shared by someone else — Save as makes your own copy
Chart legend is missingMore than 12 series — hover the chart instead
Pie shows Other (n)Slices beyond the top 11 are grouped
Numbers differ between projectsEach project has its own statuses, types and categories