Overview

A report is conceptually just what you think it is, probably. But there are a few related concepts which we’ll try to briefly outline here.

  • report type

  • report handler

  • report output

First a “report type” refers to the logic for running a specific type of report. For example, “Daily Sales” or “Slow Movers” might be report types. This defines what sort of data is included on the report, how it is displayed etc. See Adding a Custom Report for how to create a new report type.

Next, a “report handler” is responsible for overall logic used to orchestrate the running of all reports for the app. See Report Handler for more on that.

Finally “report output” refers to the result of running a report. Generally speaking whenever a report runs, the details are saved to the DB for convenience and historical record. See Generating a Report for more on that.

It’s perhaps worth noting, that in Rattail-speak “an email is not a report” and vice versa. Meaning, a report is a generated document and if sent via email, it will be an attachment as opposed to being part of the message body. See also Auto-Emailed Reports.