Blocks: Configurable Reports

block_configurable_reports
Maintained by Picture of Juan Leyva Juan Leyva
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.
6328 sites
2k downloads
129 fans
Moodle 2.0, 2.1, 2.2, 2.3, 2.4, 2.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

Picture of Juan Leyva
Juan Leyva (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Michael Woods
    Wed, 21 Jun 2017, 2:00 PM
    Hi Yegor, we are using php 7 on Ubuntu 16 LTS.
  • Picture of Yegor Grishko
    Wed, 21 Jun 2017, 4:40 PM
    Im having issues installing it on 3.3, running php 7 and Ubuntu 16 lts. Surprised it is working for you in 3.2. I will have to try then.
  • Picture of Chris Khoo
    Sat, 1 Jul 2017, 8:17 PM
    I am using Moodle 3.3 (Build: 20170515).

    I am getting this error. Is it because my Moodle version is not supported?

    Validating block_configurable_reports ... Error
    [Error] Write access check [/opt/bitnami/apps/moodle/htdocs/blocks]
    Installation aborted due to validation failure
  • Picture of Brandon Jimenez
    Wed, 5 Jul 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 Jul 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
  • Picture of Leon Vincent
    Tue, 25 Jul 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!
  • Picture of Martin Greenaway
    Tue, 25 Jul 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.
  • Picture of Leon Vincent
    Thu, 27 Jul 2017, 3:37 AM
    @Martin Greenway, that's the trick! chmod 755. Thanks for you help.
  • Picture of 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
  • Picture of 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?
  • Picture of 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.
  • Picture of 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
  • Picture of Megu G.
    Wed, 23 Aug 2017, 8:07 PM
    I am using Moodle 3.3.1+ (Build: 20170714). Is this version supported?
  • Picture of Amanda Doughty
    Wed, 6 Sep 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?
1 2 3 4 5 6 7 8 9 10 11
Please login to post comments