Configurable Reports

Blocks ::: block_configurable_reports
Maintained by Juan Leyva, Sara Arjona Téllez
This block is a Moodle custom reports builder. You can create custom reports without SQL knowledge. It's a tool suitable for admins or teachers.
Latest release:
14141 sites
4k downloads
435 fans
Current versions available: 5

This block is a Moodle custom reports builder.

You can create custom reports without SQL knowledge. It's a tool suitable for admins or teachers.


What type of reports can I create?

- Courses reports, with information regarding courses.

- Categories reports, with information regarding categories. A courses report can be embedded in this type of report.

- Users reports, with information regarding users and their activity in a course.

- Timeline reports, this is a special type of report that displays a timeline. A course or user report can be embedded in this timeline showing data depending on the start and end time of the current row.

- Custom SQL Reports, custom SQL queries. This block can use the same SQL queries that Tim Hunt's Custom SQL queries plugin.

Note for developers: You can create your own type of reports.


Who can view the reports?

When you create a report you can select which users can view it.
Links to reports are displayed in a block in the course or site frontpage.


Advanced features

Filters, pagination, logic conditions and permissions, plots, templates support, export to xls .

Request for new report types and plugins are welcome, please use the link "Bugs and issues" at the right.

Screenshots

Screenshot #0

Contributors

Juan Leyva (Lead maintainer)
Sara Arjona Téllez: Developer
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • Brandon Jimenez
    Wed, 5 July 2017, 3:46 AM
    Hello Juan

    i keep have a strange error while using your plug (Moodle 2.9.9...):

    I'm trying to create a template using the documentation you have provided for your plug, but my editor (atto) keeps adding some additional tags so i can't complete the new template as i would like to. I realise this is not 100% your plugin's fault, but, in short, is there any workaround from the settings of your plug to allow using the template as defined in the tutorial?

    Regards
  • Ben Haensel
    Wed, 19 July 2017, 10:57 PM
    Has anyone used a variable in the URL string of the report in a SQL query? It would be great to pass the userid in a url string from one report to link to another report where that userid is used as a variable in the query. If you have (or could conceive how to do this), please share!

    Also, is it possible when using the search text filter to have no results initially before applying a filter? Thanks for any feedback! -Ben
  • Leon Vincent
    Tue, 25 July 2017, 3:39 AM
    Guys, when click on the 'Manage Reports' link, I'm getting a 403. I would appreciate some areas to look at. Permissions on files/folders look ok at a high level.

    Thanks!
  • Martin Greenaway
    Tue, 25 July 2017, 4:42 PM
    @Leon, the folder in question is the blocks/configurable_reports folder under your Moodle web directory. Check that the files in there are readable. Also check the directory itself is readable. You might need to change the ownership and permissions of the files/folders in the directory so that they are owned by the same user:group as the rest of your Moodle install.
  • Leon Vincent
    Thu, 27 July 2017, 3:37 AM
    @Martin Greenway, that's the trick! chmod 755. Thanks for you help.
  • Ken Farrimond
    Fri, 4 Aug 2017, 4:30 PM
    @Ben We spent quite some time working out how to pull a variable from the url. It is quite easy to put a filter variable into the url for use in the sql, eg

    /blocks/configurable_reports/viewreport.php?id=33&courseid=1&filter_var=360

    you can then have a "where" statement that uses it eg

    where u.id="%%FILTER_VAR%%" /* dangerous code don't do this!! */

    The problem is that this opens up big vulnerabilities for code injection allowing people to access anything in the database. What we did is use the filter variable in the sql in a way that prevents code being injected by limiting what will be read to a number of less than 6 digits eg

    where u.id=(if(length("%%FILTER_VAR%%") >=1, if(length("%%FILTER_VAR%%") <6,cast("%%FILTER_VAR%%" As Decimal),1), 1)))

    We think this is hack proof, if you can see issues with it then do let me know.

    Ken
  • Ben Haensel
    Tue, 8 Aug 2017, 7:46 PM
    @Ken Thanks for sharing this! This was very slick. I removed one parenthesis from your statement and the double quotes and it worked then.

    u.id=(if(length(%%FILTER_VAR%%) >=1, if(length(%%FILTER_VAR%%) <6,cast(%%FILTER_VAR%% As Decimal),1), 1))

    Thanks again! Cheers. -Ben
  • F G
    Thu, 10 Aug 2017, 11:42 PM
    Hello,

    Is it possible to get the sql query of Course Completion? I want to create a report that shows a summary of the training program (username and completion status of each course). The report has a "Details" Button that should show additional course information (task completed etc).

    Any idea if this can be achieved through custom reports?
  • James McLean
    Fri, 18 Aug 2017, 1:48 PM
    @ben @ken - That code is still vulnerable to SQL injection. Do not use it.
    Make sure you use the parameterised queries which are built into Moodle, and the correct variable type with optional_param()/required param() for your URL arguments and then you'll be safe.
  • Przemek Kaszubski
    Fri, 18 Aug 2017, 7:35 PM
    Dear Juan, It would be great to see officially that this plugin works OK in Moodle 3.2. I can see some positive tests were made. We've been using it up to Moodle 3.0 so far, but a recent update to Moodle 3.2+ has caused our server admins to drop support for this plugin sad
    Many thanks in advance,
    Przemek
  • Lunda G.
    Wed, 23 Aug 2017, 8:07 PM
    I am using Moodle 3.3.1+ (Build: 20170714). Is this version supported?
  • Amanda Doughty
    Wed, 6 Sept 2017, 10:46 PM
    I have run PHP 7 tests on the code and I get a number of errors. When will this plugin be fit for PHP 7?
  • Melisa Gordillo
    Fri, 13 Oct 2017, 12:13 AM
    Hi! Have you thought about updating the plugin to version 3.3? Tthis plugin is really useful.
  • Jonathan Lopez
    Sat, 14 Oct 2017, 5:05 AM
    Hello my frend, one question, the plugin will have continuity
  • Javier Herrán
    Fri, 20 Oct 2017, 4:02 AM
    Buen dia Juan,

    Me gustaría saber si este proyecto tendrá continuidad para la versión 3.3 ya que se están presentando algunos inconvenientes cuando se realiza la instalación sobre esta.
    Gracias por tu pronta respuesta.
Please login to post comments