Skip to main content

People Report Builder

Route: /org/people/reports · Permission: Open the people report builder (view) / Manage saved reports Module: org_people_reports · Menu: People Reports (under Employee Management)


1. What the People Report Builder is​

A drag-and-drop report designer over your organization's HR data. You choose the dataset (Employees, Leave, Expenses or Attendance), drag fields into Rows, Columns, Measures and Filters, press Run, and read the result as a pivot table or a chart. Reports can be saved for reuse, privately or shared with the project.

It is the same builder as Task Reports and its siblings, pointed at HR data.

HR data is organization-wide

Unlike the other report builders, People reports always cover the whole organization — the currently selected project does not filter the data. The project only decides where a saved report lives: a report saved while project A is selected is listed under project A.

What this builder deliberately cannot show

No compensation or cost data, no leave reasons or contact persons, no emergency contacts or personal phone numbers, no attendance coordinates or device details. These fields are excluded at the engine level — they are not hidden columns, they simply do not exist here.


2. How a report is put together​


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

Step 1 · Pick the dataset​

Employees (the directory: departments, grades, designations, zones, tenure), Leave (applications by type/status with day counts and decision turnaround), Expenses (claims by category/status/grade/department with amounts), Attendance (daily logs with hours, overtime, lateness), Leave Balances (opening/accrued/used/remaining per employee, type and year) or Site Visits (field check-ins per site with visit hours). Switching clears the canvas (the page asks first).

Step 2 · Drag fields into the zones​

Filter pickers offer the org's leave types, zones, expense categories, grades and departments; fixed vocabularies for leave status (draft → revoked), attendance enums and expense statuses. Department, designation and employment type are free-text on the employee record — the picker offers the configured values, and contains filters catch variants.

Step 3 · Run, read, drill​

  • Table — pivot with totals; two or more row dimensions become collapsible groups with subtotal rows.
  • Chart — bar (stacked with a pivot column or a second row dimension), line (best with a date grain), pie.
  • Drill-down — click any number: a drawer lists the underlying rows (employees, applications, claims or attendance days). Rows carry no deep links — the employee detail is a drawer without its own URL.

Step 4 · Save, share, templates, export​

Identical to the other builders: private saves with a Share with project toggle, Save as, a Templates menu (Headcount by Department, Headcount by Department × Grade, Hiring by Month, Avg Tenure, Leave Days by Type × Status, Expense Amount by Category, Work Hours by Month, Attendance Status Mix, Expense Spend by Grade, Leave Approval Turnaround, Leave Balances by Type, Site Visits (last 30 days)…), CSV download, and print-to-PDF. Templates are linkable — /org/people/reports?template=<key> opens the builder with the template loaded and already run; the Open in Report Builder buttons on the Leave, Expense and Team Attendance analytics pages use exactly this.


4. Field reference​

DatasetDimensionsMeasuresNotable filters
EmployeesEmployee, Code, Department, Grade, Designation, Employment Type, Cost Center, Zone, User Status, HR Active, Joined / Account Created dateCount, Avg Tenure (years)Name contains, any dimension
LeaveLeave Type, Status (draft/pending/approved/rejected/cancelled/revoked), Paid Leave, Applicant, Zone, From/To/Applied date (grain)Count, Sum/Avg DaysAny dimension
ExpensesCategory, Status, Employee, Department, Grade, Cost Center, Project, Currency, Expense/Submitted date (grain)Count, Distinct Claimers, Sum/Avg/Min/Max AmountAny dimension
AttendanceAttendance Status, Work Location, Shift, Source, Employee, Zone, Department, Grade, Manual Entry, Session Open, Date (grain)Count, Sum Work / Effective / Overtime / Break Hours, Sum/Avg Late MinutesAny dimension
Leave BalancesEmployee, Leave Type, Year, Zone, Department, Active Period, Period Start/End (grain)Count, Distinct Employees, Sum/Avg Opening / Accrued / Used / Carry Over / Encashed / Lapsed / ClosingActive Period = Yes for the current cycle
Site VisitsSite, Employee, Zone, Visited date (grain), Visit OpenCount, Distinct Visitors, Sum/Avg Duration (hours), Avg Location Security ScoreIn the last N days on Visited

Semantics worth knowing​

FieldMeaning
Tenure (years)Years since the HR joining date — employees without one are excluded from the average
DepartmentThe free-text value on the employee record (the departments list is a naming aid, not an enforced link)
Days (leave)The application's computed day count (half-days give fractions)
Submitted (expense)The claim's creation date — approval timestamps live in the approval engine
Attendance hoursPrefer SUM when grouping by day: multiple sessions per person per day are legal; open sessions have no hours yet
Days to Decide (leave)Days from application to approval/rejection — pending applications are excluded from the average
Relative datesDate filters offer is today, in the last N days and in the next N days, evaluated when the report runs — a saved "last 30 days" report is always current

5. The admin contract​

PrerequisiteWithout it
Open the people report builder permissionNo access — grant deliberately: it exposes org-wide HR aggregates
People Reports menu permissionNo sidebar entry
Manage saved reports permissionRun and export only — no Save / Share / Delete
Employee HR records (joining dates, departments, grades)Employees group under (none), tenure is empty
Leave types / zones configuredLeave pickers are empty
Check-in/checkout enabledThe Attendance dataset is empty

6. Downstream​

Read-only over HR data. The only thing a report writes is its own saved definition. Shared reports are also readable (and runnable) through the Orbit public API (developers.<your-domain> — Orbit People → People Reports, scope people:report:read, shared reports only, PII-free aggregates). Private reports are never exposed there.


7. Don't confuse this with…​

ScreenRouteShows
People Report Builder (this page)/org/people/reportsOrg-wide HR reports you compose
Employees list/org/usersIndividual people, editable
Leave report/org/leaves/reportThe fixed leave analytics page
Expense analytics/org/expenses/my → analyticsThe fixed expense dashboard
Team Attendance PulseAnalytics railThe fixed attendance dashboard

8. Troubleshooting​

SymptomCause
Numbers don't change when switching projectsBy design — HR data is organization-wide
A saved report "disappeared"It was saved under a different project — switch back, or Save-as under the current one
Employees group under (none)Their HR record has no department/grade/designation value
Tenure looks lowEmployees without a joining date are excluded; the rest average normally
No salary or leave-reason fields anywhereDeliberate — excluded at the engine level
Attendance daily hours look doubledMultiple sessions per day are legal; group by Employee × Date and SUM
Run is disabledA report needs at least one row/column dimension and one measure
A saved report is read-onlyShared by someone else — Save as makes your own copy