Dean Dahlvang released a free customization called sqlReports in March of 2009, which he described as "an ad hoc reporting add-on that can turn simple to medium sql queries in to web based reports..." Users could write reports to access data from anywhere in the database, and it became one of the most popular customizations in use today. Dean would continue to improve on sqlReports and release newer versions, with sqlReports 3 being the last one he released.
In 2013, Dean turned over development to Matt Freund, and with coding assistance from Bob McGregor, sqlReports 4 was born and first released on June 1, 2013. Charts were added in sqlReports 4, along with a teacher portal version. Several changes have taken place over the last few years and are documented on the version history page.
sqlReports allows you to create new reports in PS that use SQL to get the data for the report, hence the name sqlReports. You create reports that act basically like custom pages, but sqlReports keeps everything in one central location and makes a menu for you of the reports. You can create reports for either the admin or teacher portal, plus control access to the reports based on security groups. The menu system makes it easy to create new reports, edit reports, and is an easy way for your users to find reports.
The original sqlReports was just for use in the admin portal, but Matt added a teacher version and a charting feature. Reports can be either simple tabular reports with buttons to copy, export, or print the results, or reports can be single series or multi-series charts, with over 25 charts to choose from.
The SQL Behind the Report
Below is an example of the SQL area of a report setup:
The report setup has an area where you add your SQL. You follow regular SQL syntax, however, you can include parameters in the report, which can be either system variables like ~(curschoolid) or ones that you create.
Running the Report
Once you have the report created, users can click on the report and run it. If you have any parameters, they will be prompted to enter them when they run the report. In the example below, the user is prompted for three things - Term, whether or not to Use Current Selection, and a place to Enter Grades. Every time a user runs the report, they enter the information, so that means you only need to create one report and the user can supply the parameters of the report.
Once the user clicks on the Submit button, the report will run based on the SQL built for the report. A page will come up displaying the results (the information below is fictional data):
The user has the option to copy, export, or print the data, plus if the report involves students, the user can click a button to make them the current selection. The results can be narrowed down by a search or by using column filtering. Clicking on any of the buttons will use what's currently on the screen, so if one filtered the results to just Calculus and then clicked on the Print button, only those students showing on the screen would be included.
Advantages to Using sqlReports
- No Need to Know How to Create Custom Pages - it uses a template system to create and edit reports and to display them. There's no need to create custom pages and links to the pages - sqlReports and it's menu system does all of that for you. Plus you can give users access to specific reports - no need for them to see links to see reports they'll never use.
- Saves Time - create reports for yourself or others that replace everyday tasks. Instead of going into DDE and doing an export over and over, just create a report that gets the data instead and click on a button to export it as a csv or text file. Better yet, create reports for other users to run so they're not asking you to export the data all the time and they can do it themselves.
- Ease-of-Use - there's just one plugin to install and importing reports is easy to do. It's also easy to modify reports via the sqlReports edit area - no need to try to customize a page to make changes to a report.
- Popularity - the customization has been available since 2009 and used by hundreds of users. The large user base makes it easy to get help and there's a good chance someone may already have a report you need, or provide you with the SQL necessary to create a report.
- Continuous Development - it's actively updated and checked on whenever new PS releases come out.
- Add-Ons - a teacher portal version and a charting feature are available as part of a site subscription.