Custom report UIs and the Analytics API
Sometimes, the standard output from the Salesforce Reporting engine is just not what your users are looking for. They require formatting or a layout not supported by Salesforce, but the way it has defined the report appeals to them.
The Salesforce Analytics API allows you to build a Visualforce page or mobile application that can execute a given tabular, summary, or matrix report and return its data to your client code to be rendered accordingly. The API is available directly to Apex developers and as a REST API for native mobile applications.
Apex has an API to invoke a report and retrieve the results. As such, you might want to consider using a report to drive an alternative approach to selecting records for an additional process in your application by leveraging the flexibility of the Report Builder as a kind of record selection UI.