Lesson 4 of 11·4 min
Custom reports: choosing sources, detail and calculations
A custom report should begin with a decision that standard reports do not answer conveniently. Define the result needed before selecting fields. A long table with every available column can obscure the question instead of answering it.
The level of detail matters. One row per customer, one row per invoice and one row per invoice line represent different populations. Relationships between sources can multiply rows, so a document total repeated on several lines should not automatically be summed again.
DNA's report builder
DNA's builder loads available entities and fields from report metadata. A report needs a primary source and at least one selected dimension or measure to run. A dimension describes how results are organised, such as customer or period; a measure describes a figure to calculate, such as a sum or count.
The builder configuration supports relationships, filters, measures, grouping and sorting. Its aggregation choices include sum, average, count, distinct count, minimum and maximum. The appropriate choice depends on the field's meaning and the required level of detail.
Advanced organisation
The builder represents date buckets, fields spread across columns, top-N selections, subtotals and summary rows. It also supports additional datasets matched to report dimensions and calculated results. These features are useful when their matching basis is explicit.
For example, comparing invoices and credit notes by customer requires both datasets to identify the same customer consistently. A missing match or different date basis can make the comparison incomplete even when both datasets contain valid records.
Preview, run and save
DNA distinguishes running a report draft from saving a named report. Updating an owned report changes that saved configuration; saving a copy creates a separate report. A useful name should describe the question and scope rather than simply “New report.”
Validate a custom report with a small, understandable set of known records. Check row counts, repeated values, filters and totals before using it for a wider decision. A configuration that can run is technically executable; it still needs business validation.
Not marked. Answer every question to finish the lesson.
