Report builder API
Report Builder API overview
System Reports
Introduction
Column
Column types
Creating columns
Filter
Filter types
- Text (reportbuilder/classes/local/filters/text.php)
- Date (reportbuilder/classes/local/filters/date.php)
- Number (reportbuilder/classes/local/filters/number.php)
- Boolean Select (reportbuilder/classes/local/filters/boolean_select.php)
- Select (reportbuilder/classes/local/filters/select.php)
- Course selector (reportbuilder/classes/local/filters/course_selector.php)
Creating filters
Entity
An Entity is a collection of elements where an element is a column or a filter. An entity is re-usable across many system reports and we can add only the entity columns or filters that we need on each report.
Create an entity
To create an entity, the new entity class must extend /reportbuilder/classes/local/entities/base.php class and must include these methods:
get_default _table_aliases()
get_default_entity_title()
get_default_entity_name()
initialise()
get_all_columns()
get_all_filters()
get_default _table_aliases()
Defines the SQL alias for the database tables the entity uses.
get_default_entity_title()
Defines the default title for this entity.
get_default_entity_name()
Defines the default internal name for this entity that will be used to manage columns and filters.
initialise()
This is where we add the entity columns and filters.
get_all_columns() and get_all_filters()
This is where we define the entity columns and filters.
Examples
Report Builder has two entities as an example to start building reports:
User entity: reportbuilder/classes/local/entities/user.php
Course entity: reportbuilder/classes/local/entities/course.php