What are Custom Reports?
A Custom Report is a tool to retrieve data in a tabular form by using regular SQL based queries.
Custom Reports Versus Views
Both Views and Custom Reports are used to display data in the Tabular form. While the Studio Views provide an easy, user-friendly way to fetch data within a particular model, Views do not support joins to other models, all possible search criteria, and aggregation. Studio Custom Reports gives solution implementers the full power of SQL when defining Platform queries. Unlike Views, Custom Reports are unconstrained as to what can be queried, the ability to join and aggregate, the use of SQL functions.
Report File Location and Extensions
Custom Reports can be defined as part of an SDK Module or in the Dataset. These reports are editable in the Studio or can be edited using any text editor.
For the SDK module, a report should be saved as ".reports" under the reports folder from the module root directory.
In the dataset, the report files should be saved under dataset_name/studio-src/Standard_Retail_Process_Template/__0/customAPI/reports with ".reports" extension.
There can be multiple reports in the reports directories.
The Bookstore Tutorial includes Creating a Report. You can read that section to get a step-by-step walk-through of how to develop your own Reports.