Reports and Exports
What each report helps the business understand and how to read the results safely.
Reports turn booking, fleet, member, fuel, and payment records into questions that an operator or manager can act on. They are not one general analytics tool: each report has its own meaning, filters, and export.
What each report is for
| Report | The business question it helps answer |
|---|---|
| Average use of boat | Which boats are used often and which appear underused? |
| Boat activation | Which boats became active or inactive in the selected period? |
| Boat frogs | What types of boat problems were reported, and on which boats? |
| Bookings | What trips were planned or completed, for whom, where, and with what state? |
| Cash point transactions | Why did member cash-point balances increase or decrease? |
| Check-in/out comments | What did members or staff report at the start and end of trips? |
| Fuel | What fuel information was recorded for trips and boats? |
| Intracompany bookings | When was a member or boat used across company boundaries? |
| Member activation | Which member accounts became active or inactive? |
| Payment transactions | What payment-related movements were recorded and in which state? |
| Receipts | Which receipt records exist for the selected bookings or period? |
Use the report that matches the decision. For example, the booking report can show trip records, while average boat use is meant to compare fleet use. One should not be treated as a substitute for the other.
How to run a report
flowchart LR
A[Choose the question] --> B[Open the matching report]
B --> C[Set dates and relevant filters]
C --> D[Review on-screen rows]
D --> E{Need to share or analyse further?}
E -- Yes --> F[Use that report's export]
E -- No --> G[Keep the filtered view]Dates, company, region, location, member, boat, and status can change the meaning of a result. Not every report supports every filter.
Before drawing a conclusion, record:
- the date range and timezone;
- selected company, region, or location;
- included booking or payment states;
- the unit and currency;
- whether inactive or cancelled records are included;
- whether rows are individual events or a total.
Understanding totals
A label alone is not a full definition. For example, “fuel” could mean a level, a quantity added, a quantity consumed, or a charged amount. “Boat use” could mean number of bookings, booked hours, or completed trips.
Use the columns and filters shown by the specific report. If the business needs a new metric, define its formula and included states before adding it. Do not invent a utilization percentage, monthly recurring revenue, turnaround time, or tax total from a report that does not calculate it.
Exports
Several reports provide their own export action. The available format and columns can differ by report; there is no promise that every page exports the same CSV or Excel structure.
After exporting, check that:
- the file opens successfully;
- the date range and filters match the screen;
- row count is plausible;
- currency and units are not mixed;
- empty values have not been turned into zero;
- cancelled or inactive records are treated as expected.
An export is a snapshot. Later changes to bookings or payments do not update an already downloaded file.
Common investigation paths
| Problem | What to compare |
|---|---|
| Report is empty | Date/timezone, company or region access, states, and whether source records exist. |
| Screen has rows but export is empty | Whether the export received the same filters and uses the same date fields. |
| Member or boat name is wrong | The ID on the source record and the current name of the linked record. |
| Money total looks too high | Currency grouping, cancelled states, duplicates, and whether rows are totals or transactions. |
| Fuel number looks impossible | Unit, check-in/check-out values, manual additions, and missing versus zero readings. |
Do not correct a report by editing production records merely to change its total. Find the incorrect source event and repair it through an approved business operation.
Technical reference
The eleven report pages use matching templates and renderers under
admin/templates/reports* and admin/js/renderers/report-*. Symfony report
routes are grouped in ReportController under /api/v1/reports. Export route
names are report-specific, so developers should use the OpenAPI page rather than
constructing a URL from the report label.