We will look at the following recipes in this chapter:
Opening a report through a controller
Modifying the report query in controller
Opening a report with a dialog
Creating a report using the UI builder class
Adding a lookup on a report dialog using the UI Builder class
Connecting the UI builder class with a contract class
Adding ranges from unbound parameters to a query
Modifying the UI by caller
Turning off a report dialog
Setting up security for reports
Adding up the report menu items into privilege
Calling multiple reports from a controller
Calling multiple reports simultaneously using a single controller
Debugging a report model
Adding data methods in business logic
Adding a URL drill through action in reports
Debugging business logic
Unit testing business logic
Creating a report using the controller and the UI builder class