reportbuilder
Warning: This page is no longer in use. The information contained on the page should NOT be seen as relevant or reliable. |
Note: This page is a work-in-progress. Feedback and suggested improvements are welcome. Please join the discussion on moodle.org or use the page comments.
Report Builder technical documentation
We are currently working on porting Report Builder, see the Report Builder specification for more details.
The original user stories (which will no longer be followed) are available here.
Report builder has an API intended to make it easy to extend the functionality in a number of ways. The primary feature is the ability to write report sources, that allow the user to generate reports based on specific data from within moodle.
It is also possible to create new content and access restrictions, filter types, and display functions.
Beginner Topics
- Overview
- Hello World Source
- Adding a Column
- A Basic Join
- Adding a Filter
- Setting Default Columns and Filters
Intermediate Topics
- Column Display Functions
- Combining Multiple Fields
- Advanced Column Options
- Advanced Filter Options
- Predefined Common Options TODO
- General Report Options TODO
- Storing files: Report sources, embedded report definitions and language strings
- Dynamic joins, column options and filter options
Advanced Topics
- Advanced Joins TODO
- Grouping and Aggregation TODO
- Content Restrictions TODO
- Access Restrictions TODO
- Parameter Restrictions TODO
- Required Columns TODO
- Preprocessors TODO
- Creating new filter options
Embedded Reports
- Overview
- Access restrictions in embedded reports
- Embedded reports in My Reports list
- Resetting to defaults
- Embedded parameters
Troubleshooting
- Common Exceptions (automatic error checks)
- Other errors
- Debugging tools
- Choosing a base table / Performance
- Performance benchmarks