Note: You are currently viewing documentation for Moodle 3.2. Up-to-date documentation for the latest stable version of Moodle is probably available here: Dashboard Block.

Dashboard Block: Difference between revisions

From MoodleDocs
No edit summary
 
(26 intermediate revisions by 2 users not shown)
Line 2: Line 2:
The "Dashboard Block" (more accurately Dashboard Element Block) allows displaying graphically or litterally the result of any query made in Moodle.
The "Dashboard Block" (more accurately Dashboard Element Block) allows displaying graphically or litterally the result of any query made in Moodle.


When used in standard course formats, the block gives access to an extra page displaying the data redering for the specified query.
When used in standard course formats, the block gives access to an extra page displaying the data redering for the specified query. When used in a paged format such as Flexipage or Page, or any format allowing blocks to layout freely over the page, the block may display directly the graph rendering and be combined to other blocks to fgorm a complex, highly customizable dashboard. the new [https://moodle.org/plugins/mod_poster | Poster] module is also a good candidate to organize and render dashboard elements into a single screen.
 
When used in a paged format such as Flexipage, or any format allowing blocks to layout freely over the page, the block may display directly the graph rendering and be combined to other blocks to fgorm a complex, highly customizable dashboard.


This blocks uses state-of-the art GPL libraries such as MIT JQplot and some other integrations. It has provision for powerfull data filtering and for using results for automatically generated exports.
This blocks uses state-of-the art GPL libraries such as MIT JQplot and some other integrations. It has provision for powerfull data filtering and for using results for automatically generated exports.
Line 10: Line 8:
==Installation==
==Installation==


The block is standalone and provided with own graphic libraries. Just proceed to standard install by copying the code into the /blocks directory of Moodle and browsing to the notification page to get it installed logically.  
From version 2.7 and upper starting at April 16 2016, the graphic libraries have been deffered to a central custom local component.  
 
You'ill find an adequate package at [http://github.com/vfremaux/moodle-local_vflibs | this location on github], on the corresponding branch.


Provided libraries are :
Provided libraries are :
Line 19: Line 19:




==Capabilitties and security advice==
==Capabilities and security advice==


This block allows very deep data reading in Moodle database and powerfull data display. As the query can be written by power users with configuraiton capability, the block could be misused by unauthorised people and produce unwanted access to critical information.
This block allows very deep data reading in Moodle database and powerfull data display. As the query can be written by power users with configuraiton capability, the block could be misused by unauthorised people and produce unwanted access to critical information.
Line 25: Line 25:
To reduce such risks, a couple of capabilities has been added to control precisely :
To reduce such risks, a couple of capabilities has been added to control precisely :


     who is allowed to add such a blcok in a coutse.
     who is allowed to add such a block in a course.
     who is allowed to access the block configuration.
     who is allowed to access the block configuration.
==Major rendering features==
===Literal===
*Linear table raw
*Linear table cleaned
*Linear table with subtotals
*Linear table with color value coding (one column)
* Tabular table Nx1 dimension
* Tree shaped hierarchic development
===Graphical===
*Bars
*Lines
*Pies
*Donuts
*Timeline (expérimental)
*GoogleMap
===File export generation===
*CSV export (all data)
*CSV export (filtered data)
==Data Filtering==
*Multidimensional filtering
*Blocks filtering binding to the whole page for syncing several blocks to identical filtering values.


==Global behaviour of the block==
==Global behaviour of the block==
Line 36: Line 67:
Althoug the setup form and rules are quite complex, we tried to implement a very lot of possibilities so this bloc becomes some kind of "swiss-knife" for Moodle smart reporting.
Althoug the setup form and rules are quite complex, we tried to implement a very lot of possibilities so this bloc becomes some kind of "swiss-knife" for Moodle smart reporting.


==Configuration==
==Global Settings==
 
Some global settings allow derivated operation, such as querying an external (PostGre) database, or changing some technical performance features.
 
[[Dashboard Block Global Settings | Global Settings]]
 
==Instance Configuration==
 
The configuration documentation is split into sections, each addressing a key feature of the dashboard.
 
* [[Dashboard Configuration: Rendering location | Configuration: Rendering location]]
* [[Dashboard Configuration: Rendering channels | Configuration: Rendering channels]]
* [[Dashboard Configuration: Writing Query | Configuration: Writing Query]]
* [[Dashboard Configuration: Raw data (literal) rendering | Configuration: Raw data (literal) rendering]]
* [[Dashboard Configuration: Graph rendering settings | Configuration: Graph rendering settings]]
* [[Dashboard Configuration: Configuring summarizers | Configuration: Configuring summarizers]]
* [[Dashboard Configuration: Cache options and setting up exports | Configuration: Cache options and setting up exports]]
 
Some extra configuration can improve data display
 
* [[Dashboard Configuration: Additional settings for crosstable and tree-shaped display | Additional settings for crosstable and tree-shaped data display]]
* [[Dashboard Configuration: Additional parameters for output coloring of data | Additional parameters for output coloring of data]]
* [[Dashboard Configuration: Plotting geographic information | Additional parameters for geographic plotting (experimental)]]
* [[Dashboard Configuration: Special Features on Columns for Output | Additional special settings when choosing output columns]]
 
==Tips==
 
===Exporting/importing the Block Configuration===
 
This tip is usefull as the configuration of this bloc is huge and uses a lot of variables. The configuration export/import utility allows you to export an encoded configuration string as a text file, store it to your local system, then import it again in, say, a new unconfigured block instance. Configuraiton export contains all the dashboard configuration including the whole query, so it is easy to make several dashboard elements as a variant from a stored one.
 
* [[Dashboard Configuration: Exporting/Importing Configuration | How to export/import configuration]]
 
==Development Road Map==


The configuration documetnation is splitted into sections, each addressing a key feature of the dashboard.
These are future features that are foreseen in the next road map for Dashboard Block.


* [Configuration: Rendering channels]
* Query parametrization with user filled variables
* [Configuration: Writing Query]
* PDF generators
* [Configuration: Raw data (litteral) rendering]
* Crosstable Excel exports
* [Configuration: Graph rendering settings]
* Filtering values pre-fetch caching to improve performance
* [Configuration: Configuring summarizers]
* Accessory database extension to MySQL schemes
* [Configuration: Cache options and settign up exports]
=== Reference, information, development and support ===


Some extra confguration can improve data display
valery.fremaux-AT-gmail.com
[[Category:Contributed code]]


    [Additional settings for crosstable and tree-shaped data display]
This module is now maintained at Edunao.com (French Moodle Partner)
    [Additional parameters for output colouring of data]


==Road map et prochains développements==
Master documentation (FR) location is ar http://docs.edunao.com/doku.php?id=blockdashboard


    Paramétrisation des requêtes par des variables ouvertes
[[fr:Bloc Tableau de bord]]
    Générateurs de PDF
    Exports de données tabularisées (Excel)

Latest revision as of 10:34, 17 April 2016

The "Dashboard Block" (more accurately Dashboard Element Block) allows displaying graphically or litterally the result of any query made in Moodle.

When used in standard course formats, the block gives access to an extra page displaying the data redering for the specified query. When used in a paged format such as Flexipage or Page, or any format allowing blocks to layout freely over the page, the block may display directly the graph rendering and be combined to other blocks to fgorm a complex, highly customizable dashboard. the new | Poster module is also a good candidate to organize and render dashboard elements into a single screen.

This blocks uses state-of-the art GPL libraries such as MIT JQplot and some other integrations. It has provision for powerfull data filtering and for using results for automatically generated exports.

Installation

From version 2.7 and upper starting at April 16 2016, the graphic libraries have been deffered to a central custom local component.

You'ill find an adequate package at | this location on github, on the corresponding branch.

Provided libraries are :

   JQplot : MIT Graph plotting library in HTML5
   TimeLine : A smart time line (still to develop)
   GoogleMapAPI : A wrapper to google map plotting of geolocated information


Capabilities and security advice

This block allows very deep data reading in Moodle database and powerfull data display. As the query can be written by power users with configuraiton capability, the block could be misused by unauthorised people and produce unwanted access to critical information.

To reduce such risks, a couple of capabilities has been added to control precisely :

   who is allowed to add such a block in a course.
   who is allowed to access the block configuration.

Major rendering features

Literal

  • Linear table raw
  • Linear table cleaned
  • Linear table with subtotals
  • Linear table with color value coding (one column)
  • Tabular table Nx1 dimension
  • Tree shaped hierarchic development

Graphical

  • Bars
  • Lines
  • Pies
  • Donuts
  • Timeline (expérimental)
  • GoogleMap

File export generation

  • CSV export (all data)
  • CSV export (filtered data)

Data Filtering

  • Multidimensional filtering
  • Blocks filtering binding to the whole page for syncing several blocks to identical filtering values.

Global behaviour of the block

The key point of the block is its confguration form that will define all information needed to get data, filter it, choose what should be output in each rendering method, and finally individual parameters for each rendering method.

Additional configuration allows to add dynamic filtering proposed to end users to filter dynamically the output.

Althoug the setup form and rules are quite complex, we tried to implement a very lot of possibilities so this bloc becomes some kind of "swiss-knife" for Moodle smart reporting.

Global Settings

Some global settings allow derivated operation, such as querying an external (PostGre) database, or changing some technical performance features.

Global Settings

Instance Configuration

The configuration documentation is split into sections, each addressing a key feature of the dashboard.

Some extra configuration can improve data display

Tips

Exporting/importing the Block Configuration

This tip is usefull as the configuration of this bloc is huge and uses a lot of variables. The configuration export/import utility allows you to export an encoded configuration string as a text file, store it to your local system, then import it again in, say, a new unconfigured block instance. Configuraiton export contains all the dashboard configuration including the whole query, so it is easy to make several dashboard elements as a variant from a stored one.

Development Road Map

These are future features that are foreseen in the next road map for Dashboard Block.

  • Query parametrization with user filled variables
  • PDF generators
  • Crosstable Excel exports
  • Filtering values pre-fetch caching to improve performance
  • Accessory database extension to MySQL schemes

Reference, information, development and support

valery.fremaux-AT-gmail.com

This module is now maintained at Edunao.com (French Moodle Partner)

Master documentation (FR) location is ar http://docs.edunao.com/doku.php?id=blockdashboard