AWRA OpsHub Search
Advanced Certificate on pass

Report Governance: Data Dictionary, Row Security and Pivots

Govern custom reports the way a finance team governs a ledger: a data dictionary with owners and certified calculations, joins that cannot multiply rows, pivots with sensible limits, row-level security that follows the viewer, and guardrails and export controls that keep big reports fast and sensitive data accountable.

4 lessons 55 min 6-question assessment 80% to pass

What you’ll learn

  • Use the data dictionary to find a dataset’s owner and its certified calculations
  • Build a report with a declared join and a pivot within the limits
  • Write row security rules that follow the viewer’s department, warehouse or employee record
  • Explain the guardrails, export controls and what the AI report draft can see

Course content

4 lessons · 55 min of reading
01
Lesson 1 of 4 Concept 13 min

The data dictionary, owners and certified calculations

Reports › Data Dictionary lists every dataset you may report on, its columns, the datasets it can be joined to, and its certified metrics: the measures and calculation presets that the workspace has agreed are the correct way to compute a figure. Each dataset can have a named owner, the person who answers questions about what a column means and who decides whether a calculation is certified. The same dictionary is available through the API and in the mobile app.

Two permissions separate who may change what. Edit shared reports lets someone change a report that others use, not only their own. Manage all reports lets someone administer every report in the workspace, including reports whose owner has left, and administer row security rules; people with it are not limited by row security themselves. Neither is added to any role other than Admin after this release, so an Admin should give them to the few people who own reporting.

In practice: two branch managers keep producing different gross margin figures. The finance lead opens the data dictionary, sees that the sales dataset has a certified gross margin calculation and an owner, and asks both managers to rebuild their reports on it. When an ownerless report panel appears on the dashboard after a staff member leaves, the finance lead, who holds Manage all reports, reassigns it.

Key takeaways

  • The dictionary lists datasets, columns, joinable datasets and certified metrics.
  • Each dataset can have a named owner.
  • Edit shared reports and Manage all reports separate everyday editing from administration.
  • Neither new permission is added to other roles automatically.
02
Lesson 2 of 4 Practice 14 min

Joins and pivots

A custom report can join its dataset to related datasets, but only along declared relations, such as a purchase order to its vendor on the vendor id. Joining two tables only on the fact that they belong to the same workspace would multiply every row by every other row and produce totals that look plausible and are wrong; declared relations rule that out. The builder offers only the joins a dataset declares.

A pivot puts one field down the side, one across the top, and one aggregated value in each cell: sum, count, average, minimum or maximum. It runs on the report’s own query, with the same joins, filters and row security. Columns are capped at 24, the biggest by total first, and rows at 500, so a pivot on a free-text field cannot produce a thousand-column table. If you hit a cap, filter or choose a field with fewer distinct values.

In practice: a distributor pivots invoice lines with region down the side, month across the top and the sum of net amount in each cell, joined to customers for the region. The 24-column cap is never reached for twelve months. A second attempt with customer name across the top hits the cap, and the analyst switches to customer segment instead.

Key takeaways

  • Only declared relations can be joined, so joins never multiply rows.
  • A pivot has rows, columns and one aggregated value: sum, count, average, min or max.
  • Pivots respect the report’s joins, filters and row security.
  • Pivots are capped at 24 columns and 500 rows.
03
Lesson 3 of 4 Practice 14 min

Row-level security

Reports › Row Security turns a rule on a dataset into a filter applied on every run for the people it names. A rule names a single person, a role, or everyone. Its value can be fixed, such as warehouse equals Nakuru, or come from the viewer: their own user, department, warehouse or employee record. A rule based on the viewer means one report serves every branch manager, and each sees only their own branch.

A rule whose value comes from the viewer and finds that value empty matches no rows rather than being skipped. A person with no department must not see every department, so they see nothing until their profile is completed, which is the safe failure. People with Manage all reports are exempt, because they administer the rules, and so is a system job with no person attached. Rules can be switched off and on without deleting them.

In practice: an NGO with five field offices adds a rule to the expenses dataset for the Field Officer role: department equals the viewer’s department. The country director, who holds Manage all reports, still sees every office. A newly hired officer whose department was not set sees an empty report and asks HR to complete their record, rather than seeing every office’s spending.

Key takeaways

  • A rule names a person, a role or everyone.
  • Values can follow the viewer’s user, department, warehouse or employee record.
  • An empty viewer value matches no rows, never all rows.
  • People with Manage all reports are exempt from row security.
04
Lesson 4 of 4 Concept 14 min

Guardrails, exports and the AI report draft

Every custom report runs with a database time limit, so a runaway report is stopped by the server and answered with a request to narrow the filters. Exports and preview paging are limited by plan: 2,000 rows a run on Free, 5,000 on Basic, 25,000 on Pro, 50,000 on Premium and 100,000 on Enterprise. Previews are cached briefly, keyed on the report and a fingerprint of the data, so reopening a report is fast and any new record still shows at once. A report marked Build results ahead of time is pre-built every hour. Report admins can open the EXPLAIN screen to see how the database plans to run a report.

Dashboard cards now say why a figure is stale and let you drill down to the rows behind it. An export of a report holding sensitive fields asks for a reason and is stamped with a watermark naming who took it and when, so a spreadsheet that leaves the building can be traced. System reports have Customize view to hide columns you never use, and date filters include This week and last N days presets.

The AI report draft turns a plain-language request into a draft report definition. It sees only the chosen dataset’s column names and types, never a row of data. Every field and calculation it suggests is checked against the dataset, invalid parts are dropped with a warning, and the result fills the builder form for you to review, preview and save. It never runs or saves a report on its own, and it respects the workspace’s third-party AI switch.

Key takeaways

  • A query time limit stops runaway reports; rows per run are capped by plan.
  • Reports marked to build ahead are pre-built hourly; EXPLAIN shows the query plan.
  • Sensitive exports need a reason and carry a watermark.
  • The AI report draft sees column names and types only and never runs or saves.

Finished the material?

Take the 6-question assessment and earn your certificate — 80% to pass.

Take the assessment

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center